Devo scrivere un semplice programma C in cui applico il metodo di Newton-Raphson per il calcolo della radice quadrata.
Devo usare un solo ciclo While o For senza chiamare funzioni.
Il metodo di Newton-Raphson funziona in questo modo:
F0 = 1,
F1=(F0+x/F0)/2,...,F(i+1)=(Fi+x/Fi)/2
In pratica il valore di Fi si avvicina sempre di piu alla radice quadrata di x
Ho provato a scrivere il programma cosi ma non viene:
#include <stdio.h>
int main (){
int x;
int n; /* numero iterazioni che voglio eseguire */
scanf("%d",&x);
scanf("%d",&n);
int i=0; /* contatore */
float f; /* variabile per contenere il risultato */
while (i<n){
if (i==0)
f=1;
else f=((i-1)+(x/(i-1)))/2;
printf("%f\n",f);
++i;
}
return 0;
}
Che correzioni potrei attuare?