berechnung von zahlen
-
Habe folgendes Problem. Möchte etwas berechnen, doch es kommt immer null heraus. Warum? Wie kann ich das anders machen
a-h sind immer ganze Zahlen
unsigned int a = 0; unsigned int b = 0; unsigned int c = 0; unsigned int d = 0; unsigned int e = 0; unsigned int f = 0; unsigned int g = 0; unsigned int h = 0; unsigned int Ra = 0; unsigned int Rb = 0; unsigned int Rc = 0; unsigned int Rd = 0; float W1=0; a = Edit1->Text.ToInt(); b = Edit2->Text.ToInt(); c = Edit3->Text.ToInt(); d = Edit4->Text.ToInt(); e = Edit5->Text.ToInt(); f = Edit6->Text.ToInt(); g = Edit7->Text.ToInt(); h = Edit8->Text.ToInt(); Ra = a+b+c+d; Rb = e+f+g+h; W1 = 1/((1/Ra)+(1/Rb));
-
Hallo
Integer haben keine Nachkommastellen, also wird aus 1/int entweder 1,0 oder -1.
du must in float erstmal konvertieren
W1 = 1.0/((1.0/float(Ra))+(1.0/float(Rb)));bis bald
akari
-
Schon mal debuggt?
-
Das float ist hier aber unnötig.
W1 = 1.0/((1.0/Ra)+(1.0/Rb));Das sollte reichen. Wobei hier ein Test auf Division durch 0 auch nicht schadet.
-
Danke klappt jetzt. Das mit dem float wußte ich, habe es nur an eine falsche Stelle gesetzt und dann war es schon zu spät.
Danke nochmal für die schnelle Antwort.
W1 = 1.0/((1.0/float(Ra))+(1.0/float(Rb)));