|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Aug 2005
Città: Roma sud
Messaggi: 590
|
[C]Calcolare la radice quadra di un numero
Ciao a tutti
Codice:
#include<stdio.h>
#include<stdlib.h>
double a,h,f4,d5,f5,d6,f6,d7,f7,d8,f8,d9,f9,d10,f10;
main() {
printf("inserisci un numero intero: ");
scanf("%d",&a);
h = 10;
f4 = a/h;
d5 = (h + f4)/2;
f5 = a / d5;
d6 = (d5 + f5)/2;
f6 = a /d6;
d7 = (d6+f6)/2;
f7 = a/d7;
d8 = (d7+f7)/2;
f8 = a/d8;
d9 = (d8+f8)/2;
f9 = a/d9;
d10 = (d9+f9)/2;
f10 = a/d10;
printf("\n La radice quadrata di %d arrotondata per difetto e' %d",a, d9);
printf("\n La radice quadrata di %d arrotondata per eccesso è %d \n",a, f10);
system("pause");
return 0;
}
P.P.S.Siccome sono un newsbie della programmazione (sono 5 giorni che sto a studia c) vi prego di spiegarvi il modo chiaro. Ciao a tutti e grazie in anticipo
__________________
-Mac Book intel core duo 1,83GHz, 1,25 Gb RAM -Amd athlon 64 dual core 4400+, 2 GB RAM, Asus a8n-sli Deluxe, totale 500 GB di HARD DISK(4 hdd) |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Oct 2002
Città: Roma
Messaggi: 1502
|
Per implementare l'algoritmo devi rifarti alla formula secono la quale l'approssimazione (n+1)-esima della radice quadrata di N la ricavi dalla precedente cosi:
H<n+1> = 1/2 * (H<n> + N / H<n>) Per calcolarti le varie approssimazioni devi quindi utilizzare un ciclo for, che puoi far ripetere un numero fisso divolte, ad esempio 10 volte, o finchè l'errore dell'approssimazione è abbastanza piccolo. Quello che devi fare quindi è: - far inserire all'utente un nuemero N che devi acquisire come double: scanf("%lf", &N); ("%lf" non "%d") : %d acquisice un int, %lf un double - sceglierti h in modo che sia minore di N, ad esempio h = N/2.0 - eseguire un ciclo for, ad esempio per 10 volte, in cui aggiorni la variabile h con la formula: h = (1.0/2) * (h + N / h);
__________________
Sun Certified Java Programmer EUCIP Core Level Certified European Certification of Informatics Professionals Ultima modifica di anx721 : 18-09-2005 alle 19:52. |
|
|
|
|
|
#3 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
frizzo28, chiariamo una cosa prima: ti è stato specificamente richiesto di creare un algoritmo per il calcolo della radice quadrata o devi solo realizzare un programma o una parte di esso che la calcoli? cioè in altre parole, sei al corrente dell'esistenza della funzione sqrt che si trova in math.h?
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Aug 2005
Città: Roma sud
Messaggi: 590
|
no!!!! Non la conoscevo. Tks ho guardato su internet math.h e l'ho trovata
__________________
-Mac Book intel core duo 1,83GHz, 1,25 Gb RAM -Amd athlon 64 dual core 4400+, 2 GB RAM, Asus a8n-sli Deluxe, totale 500 GB di HARD DISK(4 hdd) |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:45.



















