Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 18, 2025 04:56

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: eine Frage der Geschwinigkeit ?
BeitragVerfasst: Fr Dez 17, 2004 17:26 
Offline
DGL Member

Registriert: Mi Dez 15, 2004 20:36
Beiträge: 454
Wohnort: Wien, Österreich
so...weiss jemand ganz bestimmt was ist schneller?

Code:
  1.  
  2. if (etwas) then
  3.  beign
  4.    // do block 1
  5.  end
  6.  
  7.   else
  8.  
  9.  begin
  10.   // do block 2
  11.  end;
  12.  


oder ....
Code:
  1.  
  2. type TProc = procedure;
  3.  
  4. proceudre do1;
  5. begin
  6.  
  7. end;
  8.  
  9. procedure do2;
  10. begin
  11.  
  12. end;
  13.  
  14. var Block:Tproc;
  15.  
  16. // und dann bei bedarf do schreiben
  17. if (etwas) then Block := do1 else Block := do2;
  18.  
  19. // später irgend wannmal im Code
  20.  
  21. Blok1();
  22.  
  23.  


also ?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Dez 17, 2004 17:45 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 02, 2003 12:47
Beiträge: 300
Wohnort: Marburg
Huch ich wusste nicht, dass es die zweite möglichkeit gibt :shock:

Aber wenn du die Entscheidung (ob do1 oder do2) nur einmal treffen musst und du das dann aber ganz oft ausführen musst, müsste die Zweite möglichkeirt schneller sein (du sparrst ja jedesmal die Entscheidung ob do1 oder do2)!!

Wenn du sowieso jedesmal entscheiden musst, kannste auch die erste Möglichkeit nehmen.

(würd ich mal völlig unwissend behaupten :roll: )

Kommt wohl auch auf den Rechenaufwand in der Bedingung an, wenn der sehr hoch ist, müsste variante 2 auch sejhr viel zeit spaaren.

_________________
Nothing, oh sweet nothing,
today we are doing nothing at all...
http://www.geo-progs.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Dez 17, 2004 18:28 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Da bin ich anderer Meinung. Beim zweiten hat man ein if + einen Unterprogrammaufruf. Und die sind nicht ganz billich (Stackframe, Hinsprung, Rücksprung) Denke ersteres is übersichtlicher und schneller.

Meinst du die 2.Version wirklich so wies dortsteht, oder wolltest du Funktionen statt Proceduren verwenden?

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Dez 17, 2004 18:52 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 02, 2003 12:47
Beiträge: 300
Wohnort: Marburg
Hups!

wie erwähnt kannte ich die schreibweise nicht, ich dachte Block wird bei der Abfrage mit der richtigen funktion belegt und ruft diese dann im weiteren nur noch auf...

Naja Denken ist halt Glücksache

_________________
Nothing, oh sweet nothing,
today we are doing nothing at all...
http://www.geo-progs.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Dez 17, 2004 21:10 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Wenn man mehrere if then mit der gleichen Bedingung hat, also

Code:
  1. if etwas then a
  2. Befehle1
  3. if etwas then b
  4. Befehle2
  5. if etwas then c

dann kann man das doch auch umordnen zu:

Code:
  1. if etwas then
  2. begin
  3.  a;
  4.  Befehle1;
  5.  b;
  6.  Befehle2;
  7.  c;
  8. end
  9. else
  10. begin
  11. Befehle1;
  12. Befehle2;
  13. end;


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 16 Queries | GZIP : On ]