Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » Rückgabe eines Wertes bei einer Funktion!!!! » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Rückgabe eines Wertes bei einer Funktion!!!!
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Canadierprincess
Grünschnabel


Dabei seit: 14.04.2010
Beiträge: 1

Rückgabe eines Wertes bei einer Funktion!!!! Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Meine Frage:
Hallo!

Ich habe in der Schule (12. Klasse) Informatik. Morgen schreibe ich Klausur, ich verstehe aber noch nicht, was damit gemeint ist ,

: Funktionen geben den Wert zurück?

Das macht doch eine Prozedur auch, z.B. bei einer Werteübergabe oder auch Variablenübergabe?
Das ist doch der Hauptunterschied zwischen Prozeduren und Funktionen!

Wäre nett, wenn mir jemand helfen könnte!

Canadierprincess

Meine Ideen:
Ich denke, dass damit gemeint ist, dass die aktuellen Paramter bei dem Aufruf der Funktion im Hauptprogramm an die formalen Parameter in der Prozedur zugewiesen werden?

Stimmt das?, sicherlich nicht! smile smile
14.04.2010 15:36 Canadierprincess ist offline E-Mail an Canadierprincess senden Beiträge von Canadierprincess suchen Nehmen Sie Canadierprincess in Ihre Freundesliste auf
David_pb
Mitglied


Dabei seit: 01.06.2007
Beiträge: 44

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hi,

sorry ist zwar schon zu spät aber trotzdem! Augenzwinkern

In einigen Sprachen (z.B. Pascal) gibts eine strikte trennung zwischen den Begriffen Funktion und Prozedur. Karakteristisch für Funktionen ist eben das sie einen Wert zurückgeben, was Prozeduren eben nicht tun.

Eine Prozedur ist quasi ein in sich abgeschlossenes Stück Code das ausgeführt wird ohne das ein direktes Resultat erwartet wird:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
procedure mywrite(xyz : string)
{
  writeln('xyz = ', xyz);
}

function add(a : integer, b : integer) : integer
{
  add := a + b;
}

program test;

var
  x : integer;

begin
  mywrite('test'); 
  x := add(32, 10);
  writeln( 'ergebnis = ', x );
end.


(Falls Fehler im Code sein sollten, ich hab schon ewig kein Pascal mehr gecoded, also bitte etwas Nachsicht! Augenzwinkern )

Wie du siehst liefert add dir einen Wert zurück mit dem du weiter arbeiten kannst.

Das gleiche Konzept lässt sich auf C/C++ anwenden. Da haben "Prozeduren" einfach den Rückgabetyp void:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
void mywrite(const char* xyz)
{
  printf( "xyz = %s\n", xyz);
}

int add(int a, int b)
{
  return a+b;
}

int main()
{
  mywrite("test");
  int x = add(32, 10);
  printf( "ergebnis = %d\n", x);
}
18.04.2010 15:02 David_pb ist offline E-Mail an David_pb senden Beiträge von David_pb suchen Nehmen Sie David_pb in Ihre Freundesliste auf
ed209
Routinier


Dabei seit: 07.09.2006
Beiträge: 324

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Original von David_pb
Falls Fehler im Code sein sollten, ich hab schon ewig kein Pascal mehr gecoded, also bitte etwas Nachsicht! Augenzwinkern

Ja die guten alten 90er smile

Ich wuerde behaupten die geschweiften Klammern müssen durch begin und end; ersetzt werden und program test; darf weiter nach vorne.
Aber ich bin mir auch nicht mehr sicher mit der Syntax.

Gruß,
ED
18.04.2010 15:40 ed209 ist offline E-Mail an ed209 senden Beiträge von ed209 suchen Nehmen Sie ed209 in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Praktische Informatik » Rückgabe eines Wertes bei einer Funktion!!!!