-
Forum: Sonstige Fragen zu Delphi
by _frank_,
2. Jan 2007
das Hauptproblem hab ich ja dank euch gelöst, denk ich :gruebel:
aber ich werde mir das Programm mal anschauen, sieht auch sehr interessant aus...
Gruß Frank
-
Forum: Sonstige Fragen zu Delphi
by _frank_,
2. Jan 2007
danke dir, glaube ich habe es jetzt hinbekommen...meine bisherigen Tests haben funktioniert
für die, die es interessiert das Projekt im Anhang
Gruß Frank
-
Forum: Sonstige Fragen zu Delphi
by _frank_,
1. Jan 2007
so funktioniert es fast...
FUNCTION FindValue(reihe:byte; wert:integer):integer;
const
//r3:array of double=(1.0,2.2,4.7); //2^0
//r6:array of double=(1.0,1.5,2.2,3.3,4.7,6.8);//2^1
//r12:array of double=(1.0,1.2,1.5,1.8,2.2,2.7,3.3,3.9,4.7,5.6,6.8,8.2); //2^2
r24:array of...
-
Forum: Sonstige Fragen zu Delphi
by _frank_,
1. Jan 2007
hi,
naja, die Arrays der unteren Reihen sind ja noch überschaubar, da würde das nicht stören.
Aber die reihen e48,e96 und e192 wären meines Erachtens sinnlose schreibarbeit, wenn man Schrittweiten verwenden kann...ich würde daher schon gern mit den Schrittweiten rechnen.
Diese sollte sich aber so ähnlich realisieren lassen, wie ich es probiert habe (pseudo-index verwenden und den...
-
Forum: Sonstige Fragen zu Delphi
by _frank_,
1. Jan 2007
Hallo und frohes Neues :party: ,
ich habe ma versucht, das Code-Beispiel von AmateurProfi im verlinkten Post zu modifizieren, leider ist da ein Syntax-Fehler drin, mit dem ich nicht wirklich klar komme.
ein weiteres Problem ist, das ich mit Teilmengen des Arrays hantieren muss/will, um nicht alle 7 reihen abtippen zu müssen sondern nur die 2 (E24 und E192).Es muss also eine Schrittweite...
-
Forum: Sonstige Fragen zu Delphi
by _frank_,
31. Dez 2006
würde ich so oder so, denn der nächste widerstandswert *jeder* Reihe wäre 100 der nächsten dekade, da muss ich noch überlegen wie ich das mache...das round ist also nicht das problem selbst, ich müsste lediglich bei einem nicht gefundenen Wert die nächste dekade verwenden.
Gruß Frank
-
Forum: Sonstige Fragen zu Delphi
by _frank_,
31. Dez 2006
danke dir marabu (auf log10 hätte auch kommen können ;)).
hab die Funktion noch bisschen modifiziert, da ich die Nachkommastellen des "Hunderterwertes" nicht benötige.
uses math;
function Norm(e: Extended; var dExp: Integer): Integer;
begin
dExp := Ceil(Log10(e)) - 3;
Result := round(e / Power(10, dExp));
end;
-
Forum: Sonstige Fragen zu Delphi
by _frank_,
30. Dez 2006
danke marabu, werde mir das mal genauer anschauen. was mir gleich auffällt, ist die Verwendung von Integers statt floats (welches sicherlich schneller geht). Ich werde daher auch floats verwenden (=100er Dekade).
Gibt es eine Möglichkeit einen Wert schneller auf diese dekade zu kommen als so in der Art (ungetested):
function tohundreddecade(value:double;var dir:integer):integer;
var
...
-
Forum: Sonstige Fragen zu Delphi
by _frank_,
29. Dez 2006
ich habe die reihen miteinander verglichen und festgestellt, dass ich eigentlich nur die reihe 24 und 192 abtippen muss.
Die Werte der dazwischenliegenden Reihen sind in den beiden vorhanden.
d.h. alle werte der reihen E3, E6 und E12 sind in gleich abständen in der E24 enthalten, gleiches für E48, E96 in E192, wenn ich nicht irgendetwas übersehen habe...
jetzt brauche ich nur noch einen...
-
Forum: Sonstige Fragen zu Delphi
by _frank_,
29. Dez 2006
es geht mir nicht darum die 3,3 abzudecken, sondern den Wert für ein Bauteil (welches sich an eine der E-Reihen hält) zu einem berechneten Widerstandswert zu bekommen.
wenn ich einen widerstand von 3,2 Ohm ausgerechnet habe, müsste ich z.b. nach E6-Reihe einen 3,3 Ohm verbauen. und diese 3,3 will ich haben.
//edit
da diese rundungsfehler bekannt sind muss ich das ganze wohl so in etwa...
-
Forum: Sonstige Fragen zu Delphi
by _frank_,
29. Dez 2006
Moin,
ich wollte meinen Elektrorechner mal um eine häufig gefragt Funktion erweitern...die genormten Widerstandsreihen (E3,E6,E12,E24,E48,E96,E192).
als Dokumentation hab ich da u.a.
http://www.elektronik-kompendium.de/sites/bau/1109071.htm
laut dieser und anderer Quellen lassen sich die werte berechnen aus der (n-ten Wurzel aus 10)^(position-1). Leider habe komme ich teilweise nicht auf...