[Tech] C II la vendetta

Gianni Bianchini giannibi@firenze.linux.it
Dom 11 Mar 2001 11:45:22 CET


On Sun, Mar 11, 2001 at 04:44:17AM -0000, Ombra Rossa wrote:

> /*Approssimazione di calcolo della radice di un numero intero*/
> #include <stdio.h>
> 
> main()
> {
>   int i;
>   float n, x;
> 
> printf("Inserisci l'intero per il quale calcolare la rad.qud.\n");
> scanf ("%d", &i);
> 
> /*La formula con la quale si calcola la rad.qud. e' quella di Newton:
>   Xn+1=1/2*(Xn+R/Xn)
>   con R=Radicando, n=intero, Xn= valore approssimato del risultato.*/
> 
>   n = i/2;
>   n = 1 / 2 * (n + (i/n));
> 
> printf("Risultato=%f\n", n);
> 
> return 0;
> }

1/2 e' sempre un intero di valore 0 perche' risultato di un'operazione con
operandi entrambi interi. Versione corretta:

n = .5 * (n + (i/n));

Ricordati di iterare la successione. :) 

Ciao.
Gianni.


--
   Gianni Bianchini - giannibi@firenze.linux.it
                      giannibi@iname.com





Maggiori informazioni sulla lista flug-tech