Cosa hai usato per compilare ... ?
Cosa hai usato per compilare ... ?
No MP tecnici (non rispondo nemmeno!), usa il forum.
Beh, io ho una serie di messaggi dal compilatore sul tuo codice ... sei sicuro di non avere nulla?
No MP tecnici (non rispondo nemmeno!), usa il forum.
così è corretto.
codice:#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> float integerpower(float base, int exp) { int i; float result=1; for(i=0; i<exp; i++) result = result * base; return result; } main(){ float base, result; int exponent; printf("inserisci il numero:\n"); scanf("%f", &base); printf("\ninserisci l'esponente:\n"); scanf("%i", &exponent); result = integerpower(base, exponent); printf("\n questo è il risultato dell'operazione: %f \n\n", result); system("pause"); exit(1); }
In realtà quel codice non è corretto ... in particolare un programma non deve terminare con la exit, semmai con un return (per cui è bene indicare che il main restituisce un int).
La system è meglio sostituirla con una semplice getchar e la prima define non serve.
E direi anche che sarebbe meglio utilizzare i double al posto dei float.codice:#include <stdio.h> float integerpower(float base, int exp) { int i; float result=1; for(i=0; i<exp; i++) result = result * base; return result; } int main() { float base, result; int exponent; printf("inserisci il numero:\n"); scanf("%f", &base); printf("\ninserisci l'esponente:\n"); scanf("%i", &exponent); result = integerpower(base, exponent); printf("\n questo è il risultato dell'operazione: %f \n\n", result); getchar(); return 0; }
No MP tecnici (non rispondo nemmeno!), usa il forum.
Grazie a entrambi oregon e myricio, pero, potreste spiegarmi a cosa serve il getchar alla fine?
Se non sbaglio il getchar ti permette che il programma non si chiuda subito, ovvero devi premere un tasto per andare alla prossima istruzione "return 0;" quindi hai una specie di pausa prima della fine del programma una pausa che dipende dall'utente
ok chiaro grz
grazie per la dritta sull'exit oregon, la devo aver letta in qualche esempio e ho preso il vizio di usarla sempre (in realtà serve più che altro per chiudere il programma in caso di errore no?) comunque #define ormai lo metto in automatico per non avere rotte le scatole da visual studio. :P
ehm, tecnicamente quello che dice diego è il system che ho scritto io.
getchar come si può intuire aspetta un comando dallo standard input e ritorna quello. quindi se ad esempio scrivi getchar() e premi "g" la funzione ritornerà g. ma finchè non lo premi avrai la console davanti che attende qualcosa quindi ti permette di vedere tutto ciò che hai mandato su standard output prima.