Iterative Berechnung der Quadratwurzel
Programm zur iterativen Berechnung der Quadratwurzel einer Zahl a.
program Wurzel
! Berechnet eine Wurzel
use kinds
implicit none
real(kind=REAL8) :: x, a, eps
write (*,*) 'Berechnet die Quadratwurzel einer positiven reellen Zahl.'
write (*,*) ''
write(*, '(A)', advance='no') 'Argument: '
read (*,*) a
write(*, '(A)', advance='no') 'Absolute Genauigkeit: '
read (*,*) eps
x = a
do
if (abs(x*x - a) < eps) exit
x = (x + a/x) / 2
end do
write (*,*) ''
write (*,'(A, F12.3, A, F12.3)') 'Die Wurzel aus', a, ' ist: ', x
stop
end program Wurzel