Verfügbare Informationen zu "Prozedur oder Funktion?"
Qualität des Beitrags: Beteiligte Poster: Dragorad - matze(2) - X - Moritz Riebe Forum: Tutorials.at Forenbeschreibung: Programmierforum aus dem Unterforum: Pascal Antworten: 15 Forum gestartet am: Mittwoch 19.04.2006 Sprache: deutsch Link zum Originaltopic: Prozedur oder Funktion? Letzte Antwort: vor 17 Jahren, 5 Monaten, 22 Tagen, 6 Stunden, 25 Minuten
Alle Beiträge und Antworten zu "Prozedur oder Funktion?"
Re: Prozedur oder Funktion?
Dragorad - 26.10.2006, 18:53Prozedur oder Funktion?
Hi,
kann mir jemand hier genau erklären, was der Unterschied zwischen 'ner Funktion und 'ner Prozedur ist und wozu man sie benutzt?
schon mal!
Re: Prozedur oder Funktion?
matze(2) - 26.10.2006, 19:27
hoffe ich doch ma :)
ne funktion gibt einen wert zurück (je nach rückgabetyp), dass heißt, der compiler tut so, als stände dieser rückgabewert an der stelle, wo die funktion aufgerufen wird. eine funktion kann zusätzlich noch eine anreihung von befehlen ausführen.
eine prozedur kann eine anreihung von befehlen ausführen.
ich hoffe, dass war jetzt genau genug.
Re: Prozedur oder Funktion?
Dragorad - 26.10.2006, 19:41
Genau genug ist es ... nur verstehen tu ich immer noch .
Hast du ein Beispielprogramm?
Re: Prozedur oder Funktion?
X - 26.10.2006, 20:13
Hi
das ist das gleiche. Eine Prozedur kann auch einen Rückgabewert haben sogar mehrere.
Durch Funktionen oder Proze. kann man bestimmte Codebereiche, so zu sagen, seperat entwickeln.
Wenn du zum Beispiel einen Taschenrechner progst, so kannst du die einzelnen Rechenoperationen einzeln in Funktionen schreiben und sie dann nur aufrufen wenn sie gebraucht werden. Oder die Abfrage in ne Funk. packen.
Gruß
Re: Prozedur oder Funktion?
matze(2) - 26.10.2006, 21:37
das prozeduren mehrere rückgabewerte haben können is mir jetzt aber auch neu. kannst du mal ein beispiel machen?
Re: Prozedur oder Funktion?
Dragorad - 26.10.2006, 23:25
Zitat:
das ist das gleiche
Wenn Proceduren und Funktionen das gleiche sind, braucht man dann Funktionen überhaupt?[/quote]
Re: Prozedur oder Funktion?
X - 27.10.2006, 19:52
Hi,
Zitat: Wenn Proceduren und Funktionen das gleiche sind, braucht man dann Funktionen überhaupt?
Das ist das gleiche Konzept. Nur die Umsetzung ist bei den verschiedenen Sprachen etwas anderes.
Zitat: das prozeduren mehrere rückgabewerte haben können is mir jetzt aber auch neu. kannst du mal ein beispiel machen?
Sry, ich hab schon ewig nichs mehr mit Pascal am Hut und das Thema Funktion nie so richtig beachtet.
In Pascal gibts ja tatsächlich die zwei Konzepte Funktion und Prozedur. Einziger richtiger Unterschied ist da tatsächlich die Tatsache, dass man Funktionen überall einsetzen kann.
Gruß
Re: Prozedur oder Funktion?
Dragorad - 27.10.2006, 23:23
Ich hab' gelesen, dass man Funktionen wie Variablen einsetzen kann, Prozeduren nicht unbedingt; stimmt das?
Re: Prozedur oder Funktion?
matze(2) - 27.10.2006, 23:24
also soweit, wie ich es bisher wusste, kann eine funktion EINEN rückgabewert haben und prozeduren KEINEN. dafür kann man mit prozeduren gar keiner, einer oder auch mehreren variablen werte zuweisen. dies dürfte aber auch mit funktionen funktionieren. wenn du also einen rückgabewert haben willst, dann nim eine funktion und wenn nicht eine prozedur. zB in C gibt es nur funktionen und wenn diese keinen rückgabewert haben soll, gibt man ihr den rückgabewert "void" (=leer).
Re: Prozedur oder Funktion?
X - 28.10.2006, 16:42
Hi
wenn du deiner Variablendeklaration den Bezeichner "var" voranstellst, ist das wie & in C. Dann werden auch Werte aus deiner Prozedur herausgegeben.
Re: Prozedur oder Funktion?
matze(2) - 29.10.2006, 17:16
wenn werte (von variablen) herausgegeben werden sind das noch kein rückgabewert, oda?
Re: Prozedur oder Funktion?
Dragorad - 31.10.2006, 00:02
Ich glaub' es ist immer noch am einfachsten, wenn ich nur Proceduren verwende, da weiß ich wenigstens, wo ich dran bin :D .
Re: Prozedur oder Funktion?
X - 31.10.2006, 16:23
@matze
es kommt ja nicht auf die definition von rückgabewert an, sondern auf die tatsache das werte aus dem ausgelagerten programmcode zurückkommen können. wie das schlussendlich passiert ist zumindest mir egal. in pascal würd ich aber auf jeden fall proz wählen bei so was, da ich hier ohne großen umweg auch mehrere verschiedene werte zurückgeben kann.
gruß
Re: Prozedur oder Funktion?
Moritz Riebe - 31.10.2006, 22:31
@matze:
Du hast völlig Recht!
@X:
Man merkt ja schon an deinem Nickname "X" was du für einer bist. ^^
also:
Prozeduren sind Codestücke welchen Parameter (Integer, String etc..) übergeben werden könne. Die entsprechenden Parameter können, sobald die Sprache es unterstüzt, auch verändert werden. JEDOCH eine Prozedur hat nie einen Rückgabewert! Sie ist auch in der Verwendung nicht gleichzustellen!
Funktionen sind auch Codestücke welche Parameter haben können die auch verändert werden können. Jedoch hat eine Funktion einen Rückgabewert! Es gibt jedoch Sprachen die keine strikte FUnktions und Prozedurtrennung vorsehen! (wie C ). In C gibt es nur Funktionen und
wenn man keinen Rückgabewert haben will gibt man "void" (nichts/leer)
an. Sobald aber kein void auch kein anderer Typ angeben wird wird es wie void behandelt. Der C Compiler setzt dann im CPU Register bei x86
kompaktiblen PCs das AX Register auf 0. Somit gibt es immer einen Rückgabewert
in C! In Verwendung kann man keine Funktion mit einer Prozedur austauschen!
Beispiele in Pascal:
Code:
Funktion GebeWert( Bla: String): Integer;
Begin
if Bla = 'Nunlos!' Then
GebeWert := 1234;
End;
Begin
WriteLn('Die Zahl von gebeWert: ', GebeWert('Nunlos!'));
End.
Nun tausch das mal mit einer Prozedur aus und dann
wird jedem der Pascal Compiler Fehlermeldungen
um die Ohren hauen!
MfG Moritz Riebe
Re: Prozedur oder Funktion?
Dragorad - 01.11.2006, 12:27
Nun ist alles klar;
Mit folgendem Code, können Sie den Beitrag ganz bequem auf ihrer Homepage verlinken
Weitere Beiträge aus dem Forum Tutorials.at
Turbo C - gepostet von Mei$ter A^ am Montag 24.04.2006
Variablen Speichern - gepostet von Wüstling am Donnerstag 10.05.2007
Brauche Hilfe - gepostet von Belphegor am Montag 05.03.2007
Problem beim Programm... - gepostet von toby-man am Mittwoch 03.10.2007
Delphi Freeware Download - gepostet von Dragorad am Montag 20.11.2006
Berechnung einer quadratischen Funktion. - gepostet von Kimi am Donnerstag 08.11.2007
OpenGl Tutorial - gepostet von c# am Dienstag 26.06.2007
Vollbildmodus als Befehl - gepostet von matze(2) am Donnerstag 01.06.2006
Ähnliche Beiträge wie "Prozedur oder Funktion?"
[S] M und W biete dollars oder alk^^ - tolik (Donnerstag 05.07.2007)
Ja oder nein - Komisch (Samstag 10.02.2007)
@Ilex in Warren / oder wie ihr jetzt heißt - Anonymous (Mittwoch 08.03.2006)
Wo du deinen Pc gekauft hast oder Teile davon - barfbag (Montag 26.02.2007)
Ist der Wixxerfilm gut oder schlecht? - teeboytle (Dienstag 01.05.2007)
Soll ich oder soll ich lieber nicht? Friedhof bitte - Rose (Sonntag 30.12.2007)
Dies oder Das - Alinaaa (Donnerstag 20.07.2006)
leben oder sterben - Anonymous (Samstag 26.02.2005)
Talent oder? - Adreena (Donnerstag 31.08.2006)
Fehler oder notwendige Änderungen auf der Hompage - Christoph Weikl (Dienstag 09.05.2006)