Mehrere if else schleifen hintereinander

Für Fragen von Einsteigern und Programmieranfängern...
siro
Beiträge: 732
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: Mehrere if else schleifen hintereinander

Beitrag von siro »

Ah, uses Math und schon funktioniert es. :wink:
Genau richtig erkannt.

Danke an euch alle: wp_xyz, Mathias, PascalDragon, Socke
da ist wieder viel und gute Information von euch allen geflossen.

jo, nun stimme ich zu, das ist doch recht flexibel und auch kürzer.
War mir völlig neu.

Super Erklärung, vielen Dank
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

Mathias
Beiträge: 6194
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Mehrere if else schleifen hintereinander

Beitrag von Mathias »

Ab Zeile 162 sieht man, wie man Operatoren auch für eigene Zwecke Überladen kann.
Hier habe ich es für Vektorenberechnung gebraucht.
https://github.com/sechshelme/Lazarus-O ... vector.pas

Auch für Matrizenberechnungen, ab Zeile 93 habe ich es gebraucht.
https://github.com/sechshelme/Lazarus-O ... matrix.pas
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

TBug
Beiträge: 177
Registriert: Mi 2. Sep 2015, 11:09
OS, Lazarus, FPC: Lazaurus 2.2.4 FPC 3.2.2
CPU-Target: Windows 32/64bit

Re: Mehrere if else schleifen hintereinander

Beitrag von TBug »

Hallo zusammen,

und damit es bei StrToFloat()
Winni hat geschrieben:
So 12. Jun 2022, 20:12

Code: Alles auswählen

...
if Edit1.Text = '' then Edit1.text := '1';
if Edit2.Text = '' then Edit2.text := '1';
if Edit3.Text = '' then Edit3.text := '1';

A:=StrToFloat(Edit1.Text);
B:=StrToFloat(Edit2.Text);
C:=StrToFloat(Edit3.Text);
...
nicht knallt, wenn der Benutzer einen Buchstaben eingibt und damit es noch kürzer wird, würde ich es folgendermaßen bevorzugen, wenn man keine Eingabefehlerbehandlung wünscht:

Code: Alles auswählen

A := StrToFloatDef(Edit1.Text , 1.0);
B := StrToFloatDef(Edit2.Text , 1.0);
C := StrToFloatDef(Edit3.Text , 1.0);
.

Benutzeravatar
Winni
Beiträge: 1577
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: Mehrere if else schleifen hintereinander

Beitrag von Winni »

siro hat geschrieben:
Di 14. Jun 2022, 08:27
Zudem verstehe ich nicht warum man dies tut.
I*I ist doch viel einleuchtender und kürzer als I**2

Hi!

Und was machst Du bei

I ** 3.6

???

Grüße, Winni

Antworten