Oppure

Loading
11/10/08 16:03
bip
allora questo è il programma:


#include <iostream.h>

float iva(float x, float y);
// definizione prototipo
float iva(float x, float y)
// dichiarazione funzione
{
float ris;

ris = x * y;
return ris;
// valore restituito funzione.
}


main()
{
float a , b = 0.2 , ivaris;

ivaris = iva(a,b);
cout << "inserisci il valore da ivare \n";
cin >> a ;
cout << "l'iva è:"<< ivaris;
system("pause";);
return (0);
}

se non metto cin ma do direttamente il valore ad a x esempio a = 120 mi dà l'iva giusta mentre se glielo passo con cin mi dà un numero assurdo.
Come mai ? 8-| :-| :d
aaa
11/10/08 16:39
WARRIOR
Perché chiami la funzione per calcolare l'iva prima di prendere in input il valore di a. Ti da un valore assurdo, perché non l'hai nemmeno inizializzata, come bisognerebbe fare di norma.


:k:
aaa
11/10/08 16:57
bip
scusa ma nnon capisco la risposta, mi potresti far vedere in pratica con il codice come dovrei fare?:-|
aaa
11/10/08 17:01
bip
opss scusa ma ho postato prima di pensare e adesso che ho pensato ho trovato la suluzione grazie alla tua chiara spiegazione ma come al solito con il c++ non capisco il perchè di certi problemi, che li cambia al pc se la metto prima o dopo?
aaa
11/10/08 21:04
munkaka
cambia molto, il pc segue le istruzioni che gli dai nell'ordine dall'alto al basso, e se non sa che valore ha a come fa a fare a*b e restituire un numero reale? non puo restituire un numero con incognite, tipo 0.2*a, ma solo numeri reali
aaa
11/10/08 22:55
bip
ok thx a tutti x la partecipazione:k:
aaa