integer to float

tommy07

Mitglied
Hallo,
ich habe ein Problem. Ich möchte einen Quotienten ausrechnen, aber leider wird mir immer eine Fehlermeldung angezeigt. (nicht beim Compilieren, sondern, ein rotes Fenster, wenn ich das Prgramm starten will)

Mein Quelltest ist ungefähr so:

Code:
float c;
int a{1,2,3,4,5};
int b {6,7,8,9,10};

for (int i = 0; i<5;i++){
c=b[0]/b[1]-a[i];
cout << c;
}

Um ein richtiges Eergebnis zu erhalten, muss ich doch das ganze erstmal in einen float convertieren... weiß jemand, wie das geht?

tommy
 
tommy07 hat gesagt.:
Code:
float c;
int a{1,2,3,4,5};
int b {6,7,8,9,10};

for (int i = 0; i<5;i++){
c=b[0]/b[1]-a[i];
cout << c;
}
Was soll denn das bei der Variablendeklaration von a und b sein? Ich wage mal zu bezweifeln, dass der Compiler sowas überhaupt durchgehen lässt...

Aber was du eigentlich suchst, ist Type-Casting: float f = (float)a; (a ist Ganzzahl)
 
Code:
int i = 5, k = 6;
float c = i/(k*1.0);
cout<<c<<endl;


Wenn du einen der INT Werte einfach mit 1.0 multiplizierst, hat das den selben Effekt, dann konvertiert der Compiler automatisch das Ergebnis zu Float oder Double um.

Im überigen habe ich deine Art der Zeiweisung der Arrays noch nie gesehen. Kann zwar sein das es auch geht, glaube das aber eher nicht. Mein Vorschlag wäre :

Code:
int b[5] =  {6,7,8,9,10};


Gruss

MFC OpenGL
 
Zurück