Was anderes... was machst du wenn der Widerstand genau 1 kOhm ist.
Denn Ohm bei kleiner 1000
kOhm bei größer 1000
Schau dir mal das an:
Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
var
u,uf,if_,uv,rv, Result: Real;
ResultI: Integer;
eh:String;
begin
U := StrToFloat(Edit1.Text);
UF:= StrToFloat(Edit2.Text);
IF_:=StrToFloat(Edit3.Text);
if UF > U then
begin
MessageDlg('Solche Widerstände gibt es nicht. ;-)', mtError, [mbOK], 0);
end
else
begin
UV := U - UF;
RV := UV / IF_;
RV := RV * 1000;
EH := 'Ohm';
Result := RV;
if RV >= 1000 then begin Result := RV / 1000; EH := 'kOhm'; end;
if RV >= 1000000 then begin Result := RV / 1000000; EH := 'MOhm'; end;
if RV >= 1000000000 then begin Result := RV / 1000000; EH := 'GOhm'; end;
ResultI := ceil(Result);
Showmessage('Der Widerstand hat einen Wert von: ' + IntToStr(ResultI) + ' ' + EH);
end;
Button1.SetFocus;
Edit1.Text := 'Eingangsspannung (in Volt)';
Edit2.Text := 'Ausgangsspannung (in Volt)';
Edit3.Text := 'Ausgangsstrom (in mA)';
end;