|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Oct 2006
Città: Ottaviano (NA)
Messaggi: 604
|
[C++] parte intera di un numero doble
ciao ragazzi, volevo sapere come potevo fare la radice quadrata di un numero e avere come risultato solo la parte intera...
ho usato per la radice queste specifiche: #include <stdlib.h> #include <stdio.h> #include <math.h> int main(void) { double x = 4.0; double result; result = sqrt(x); printf("\nLa radice quadrata di %lf e' %lf\n\n", x, result); system("PAUSE"); return 0; } e così mi funziona la radice quadrata per bene, ma io volevo solo la parte intera e ho fatto questa modifica #include <stdlib.h> #include <stdio.h> #include <math.h> int main(void) { double x = 4.0; double result; int num; result = sqrt(x); num=floor(result); printf("\nLa radice quadrata di %lf e' %lf\n\n", x, num); system("PAUSE"); return 0; } ho usato floor, ho provato a faer direttamente num=result pesando che c++ tagliasse direttamente lui la parte decimale facendo così mi va tutto in overflow mi aiutate per favore....aiutooooooooooooooo ![]() ![]() ![]() Ultima modifica di archimedeonline : 19-10-2007 alle 20:40. Motivo: aggiornamento |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Feb 2002
Messaggi: 906
|
Quote:
printf("\nLa radice quadrata di %f e' %d\n\n", x, num); cosa è floor... forse pavimento? |
|
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Oct 2006
Città: Ottaviano (NA)
Messaggi: 604
|
Quote:
#include <stdlib.h> #include <stdio.h> #include <math.h> int main(void) { double x = 4.0; double result; int num; result = sqrt(x); num=(int)result; printf("\nLa radice quadrata di %lf e' %lf\n\n", x, num); system("PAUSE"); return 0; } ma mi esce un numero gigantesco...stesso problema delle altre volte |
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Feb 2002
Messaggi: 906
|
questo no è:
printf("\nLa radice quadrata di %f e' %d\n\n", x, num); |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Oct 2006
Città: Ottaviano (NA)
Messaggi: 604
|
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Feb 2002
Messaggi: 906
|
|
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Oct 2006
Città: Ottaviano (NA)
Messaggi: 604
|
ho scritto così come hai detto tu infatti il codice diventa
#include <stdlib.h> #include <stdio.h> #include <math.h> int main(void) { double x = 4.0; double result; int num; result = sqrt(x); num=(int)result; printf("\nLa radice quadrata di %lf e' %lf\n\n", x, num); system("PAUSE"); return 0; } ma non va lo stesso mid a overfloat |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Feb 2002
Messaggi: 906
|
aspetta... forse ho capito
Codice HTML:
%d Edit: controlla questa riga se è come la tua printf("\nLa radice quadrata di %lf e' %lf\n\n", x, num); Alla visita oculistica: Medico: "Signore mi legga le lettere del cartello" Paziente: "...hmm... quale cartello scusi..." Ultima modifica di okay : 20-10-2007 alle 10:32. |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Oct 2006
Città: Ottaviano (NA)
Messaggi: 604
|
problrma risplto grazie
così andava bene come mi avevi detto all'inizio result = sqrt(x); num=(int)result; il fatto è che in quel programma non funzinava, ne ho fatto uno nuovo on altre librerie e tutto va bene ho usato il COUT ciao a tutti |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 09:14.