AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Code optimieren

Ein Thema von Gehstock · begonnen am 18. Aug 2006 · letzter Beitrag vom 18. Aug 2006
Antwort Antwort
Seite 2 von 3     12 3      
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#11

Re: Code optimieren

  Alt 18. Aug 2006, 19:34
Zitat:
resistor:integer;
Da bekomm ich aber an anderer stelle Probleme

Delphi-Quellcode:
Resistor := floattostr(((strtofloat(edit_UV.text)- //widerstand
strtofloat(edit_UD.text))/strtofloat(edit_ID.text))*1000); +++++++ Nämlich hier

if StrTofloat(Resistor)>=1000000 then begin //mohm
pnl_calculated_resistor.caption := FloatToStr(Runden((strtofloat(resistor)/1000000),2)) +' MOhm';
end;
if StrTofloat(Resistor)<1000000 then begin
if StrTofloat(Resistor)>=1000 then begin //kohm
pnl_calculated_resistor.caption := FloatToStr(Runden((strtofloat(resistor)/1000),2)) +' KOhm';
end;
end;
if StrTofloat(Resistor)<1000 then begin //ohm
pnl_calculated_resistor.caption := FloatToStr(Runden((strtofloat(resistor)/1),2))+' Ohm';
end;


aber sonst könnte das klappen und gefällt mir ganz gut
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#12

Re: Code optimieren

  Alt 18. Aug 2006, 19:40
aso...du berechnest den Widerstand...
na dann nehm als Typ extended.
resistor:extended;
und
resistor:=(strtofloat(edit_UV.text)-strtofloat(edit_UD.text))/strtofloat(edit_ID.text)*1000;

ich hoffe, die klammern passen noch...

Gruß Frank
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#13

Re: Code optimieren

  Alt 18. Aug 2006, 19:44
och nö

Delphi-Quellcode:
begin
case resistor of **********ordinal type required
 25000..33001:pnl_normresistor.Caption := '27 KOhm';
 16500..22001:pnl_normresistor.Caption := '22 KOhm';
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#14

Re: Code optimieren

  Alt 18. Aug 2006, 19:48
jo, case geht nicht mit float
evtl. reicht ein
case trunc(resistor) of HTH Frank
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#15

Re: Code optimieren

  Alt 18. Aug 2006, 19:54
Ja Danke Reicht

Nächstes Problem :


Delphi-Quellcode:
if (Resistor)>=1000000 then begin //mohm *******Hab ich schon abgeändert
pnl_calculated_resistor.caption := FloatToStr(Runden(strtofloat(resistor)/1000000),2) +' MOhm'; //*****hier is bestimmt wieder ne klammer falsch
end;
if (Resistor)<1000000 then begin
if (Resistor)>=1000 then begin //kohm
pnl_calculated_resistor.caption := FloatToStr(Runden((strtofloat(resistor)/1000),2)) +' KOhm';
end;
end;
if (Resistor)<1000 then begin //ohm
pnl_calculated_resistor.caption := FloatToStr(Runden((strtofloat(resistor)/1),2))+' Ohm';
end;
erzeugt ein
Zitat:
There is no overloaded version of 'StrToFloat' that can be called with these arguments
eh ich das mit den Formeln habe dauerts bestimmt jahre
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#16

Re: Code optimieren

  Alt 18. Aug 2006, 19:56
du machst es schon wieder... (oder immer noch?)

strtofloat(resistor)


mal davon abgesehen, dass du auch dort case verwenden kannst wie oben

Frank
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#17

Re: Code optimieren

  Alt 18. Aug 2006, 20:03
Delphi-Quellcode:
case trunc(resistor) of


1000000:pnl_calculated_resistor.caption := FloatToStr(Runden(strtofloat(resistor)/1000000),2) +' MOhm';
999999..1000:pnl_calculated_resistor.caption := FloatToStr(Runden((strtofloat(resistor)/1000),2)) +' KOhm';
9999:pnl_calculated_resistor.caption := FloatToStr(Runden((strtofloat(resistor)/1),2))+' Ohm';
end;
So?
Nerv ich eigendlich?
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#18

Re: Code optimieren

  Alt 18. Aug 2006, 20:14
Junge...liest du auch mal was wir schreiben?

Delphi-Quellcode:
case trunc(resistor) of
  0..999:pnl_calculated_resistor.caption := FloatToStr(Runden(resistor,2))+' Ohm';
  1000..999999:pnl_calculated_resistor.caption := FloatToStr(Runden((resistor/1000),2)) +' KOhm';
  else :pnl_calculated_resistor.caption := FloatToStr(Runden(resistor/1000000),2) +' MOhm';
end;
(evtl. nach dem else kein ':')

das ständige umwandeln von/nach string...
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#19

Re: Code optimieren

  Alt 18. Aug 2006, 20:15
wegen Nichtbeachtung gelöscht
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#20

Re: Code optimieren

  Alt 18. Aug 2006, 20:16
Zitat von _frank_:
evtl. reicht ein
case trunc(resistor) of
Schonmal das Ende der Liste angeschaut? Denn dort wird es mit case NICHT funktionieren.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz