AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Function vereinfachen, bei vielen if abfragen
Thema durchsuchen
Ansicht
Themen-Optionen

Function vereinfachen, bei vielen if abfragen

Ein Thema von Hallo_Thomas · begonnen am 13. Jul 2005 · letzter Beitrag vom 13. Jul 2005
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
Hallo_Thomas

Registriert seit: 18. Apr 2005
Ort: Dresden
405 Beiträge
 
Delphi 2005 Professional
 
#1

Function vereinfachen, bei vielen if abfragen

  Alt 13. Jul 2005, 00:27
Gibt für so eine function eine einfachere, bzw, schnellere Abfrage!Im Grundegenommen soll bloss eine bestimmte Additionsaufgabe zu einem bestimmten Wert ausgeführt werden.


Delphi-Quellcode:
function zaehler(z:Integer):Integer;
begin
if z=0 then
result:=x+y+z
if z=1 then
result:=x+y
....///////dass sollte dann so bis if z=1500 then gehen
end;
  Mit Zitat antworten Zitat
Benutzerbild von jim_raynor
jim_raynor

Registriert seit: 17. Okt 2004
Ort: Berlin
1.251 Beiträge
 
Delphi 5 Standard
 
#2

Re: Function vereinfachen, bei vielen if abfragen

  Alt 13. Jul 2005, 00:38
spannend ist die Frage was denn bei z=2, z=3 usw. passiert. das wird bei deinem Quellcode nicht ersichtlicht. Auf jeden Fall wäre case eine vernüftige Variante.
Christian Reich
Schaut euch mein X-COM Remake X-Force: Fight For Destiny ( http://www.xforce-online.de ) an.
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#3

Re: Function vereinfachen, bei vielen if abfragen

  Alt 13. Jul 2005, 00:52
ich weiß wirklich nicht, was genau du willst. aber vielleicht wäre es sinnvoll, sich mal die case-anweisung anzuschauen.

edit:mal wieder viiiiieeel zu langsam
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Function vereinfachen, bei vielen if abfragen

  Alt 13. Jul 2005, 02:38
Moin Thomas,

Zitat von Hallo_Thomas:
...soll bloss eine bestimmte Additionsaufgabe zu einem bestimmten Wert ausgeführt werden.
wie sieht denn die Aufgabe aus?
Vielleicht lässt sie sich ja einfacher lösen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#5

Re: Function vereinfachen, bei vielen if abfragen

  Alt 13. Jul 2005, 06:31
Hallo,

ich will ja nicht stänkern aber du stellst eine Frage die Hellseherei verlangt. Ist es eigentlich zuviel verlangt, dass man bevor man eine Frage stellt, etwas nachdenkt?
So kriegst du auf jedenfall keine Antwort.

Rainer
  Mit Zitat antworten Zitat
Hallo_Thomas

Registriert seit: 18. Apr 2005
Ort: Dresden
405 Beiträge
 
Delphi 2005 Professional
 
#6

Re: Function vereinfachen, bei vielen if abfragen

  Alt 13. Jul 2005, 07:38
Ich wollte eine Art function geschreiben, die wesentlichen eine Aufgabe haben soll,und zwar: Dass es zu jedem Wert,sagen wir Wertigkeit[0..1500] jeweils einein Wert(hier(Z)) gibt, der nach bedarf aufgerufen werden ( Dies soll ne Additionsaufgabe sein).





Delphi-Quellcode:
function zaehler(z:Integer):Integer;
begin
if z=0 then
result:=x+y+z
if z=1 then
result:=x+y
if z=2 then
result:=x+y+a
....///////dass sollte dann so bis if z=1500 then gehen
end;
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#7

Re: Function vereinfachen, bei vielen if abfragen

  Alt 13. Jul 2005, 07:40
nu iss alles glar.

Nur mir nicht. Wenn du keine Regel angeben kannst, nach der deine Additionen ausgeführt werden sollen, dann wirst du alle 1500 Fälle einzeln beschreiben müssen - vielleicht erkennt dann jemand die Systematik. Ansonsten bleibt es beim CASE-Statement.

marabu
  Mit Zitat antworten Zitat
Hallo_Thomas

Registriert seit: 18. Apr 2005
Ort: Dresden
405 Beiträge
 
Delphi 2005 Professional
 
#8

Re: Function vereinfachen, bei vielen if abfragen

  Alt 13. Jul 2005, 08:02
Es gibt keine Sytetemathik, ich muss auf alle Fälle, 1500 mal Result:=..+.+.+.. schreiben, die Variblen aus em sich Result ergibt, stehen unter private

Zitat:
Ich dachte an so ne Art Zusammenfassung, wo ich nicht 1500 if abfrageb hab.

Result:= nimm wert[1]

Wert[0]:=x+y+z
Wert[1]:=z+y

In diesem Moment beötige ich auch nur Wert[1]

In einem Procedurdurchlauf, soll dann auf 10-50 Werte zurückgefriffen werden.
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.355 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Function vereinfachen, bei vielen if abfragen

  Alt 13. Jul 2005, 08:04
Keine Systematik => keine Vereinfachung.
Peter
  Mit Zitat antworten Zitat
Benutzerbild von TeronG
TeronG

Registriert seit: 19. Jul 2004
Ort: München
960 Beiträge
 
Delphi 2007 Professional
 
#10

Re: Function vereinfachen, bei vielen if abfragen

  Alt 13. Jul 2005, 08:09
Zitat von Jasocul:
Keine Systematik => keine Vereinfachung.
YUP
Aber die oben genannte CASE-anweisung macht das dennoch sauberer denk ich (auch weil ELSE vorhanden)
龍 Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


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:34 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