Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

hi,

bin grade am Funktionen verstehen...

Erklärung:

#include <iostream.h>

#include <conio.h>

float Convert(float);

int main(int argc, char* argv[])

{

float TempFer;

float TempCel;

cout << "Bitte Temperatur in Fahrenheit eingeben: ";

cin >> TempFer;

TempCel = Convert (TempFer);

cout << "\nDie Temperatur in Grad Celsius ist: ";

cout << TempCel << endl;

getch();

return 0;

}

float Convert (float Fer)

{

float Cel;

Cel = ((Fer - 32) * 5) / 9;

return Cel;

}

Versteh' dieses Programm absolut net.

Wie läuft die Funktion ab??

- Dass sie einen Wert zurückgibt an das Hauptprogramm main liefert is okay.

Aber z. B.: lokale Variablen:

Wie muss ich die bennen- bitte verständlich erklären.

THX a lot,

Hardware- Georg

P.S.: Was will der Hardware- Freak in der C++ Section???

Programmieren!!

:cool: :P:):D

Geschrieben

Hi Georg!

Also dann lass uns mal von oben anfangen:

Die Zeilen mit "#include..." sind Präprozessoranweisungen. Hier werden Header-Dateien eingebunden. Im Prinzip wird hier nichts anderes gemacht, als Quelltext eingefügt.

Danach kommt die Deklaration der Funktion "float Convert(float);". Das ist der Prototyp der Funktion, der dafür sorgt, dass die main die Funktion überhaupt kennt.

Jetzt zur eigentlichen main-Funktion. Kann ja sein, dass ich bis jetzt nur Sachen erzählt habe, die Du schon weißt. ;)

Die ersten zwei Zeilen "float..." sind Variablen-Deklarationen. Sie werden hier allerdings nicht initialisiert (z.B. so: float tempFer = 0 ;). Würde ich allerdings immer machen, um Fehler zu vermeiden. Notwendig ist das aber nicht. Den Namen der Variablen würde ich auch mit einem kleinen Buchstaben anfangen, da später bei OOP die Klassen groß geschrieben werden. Das ist auch nicht notwendig, macht aber Sinn.

Anschliessend erscheint eine Meldung auf dem Bildschirm (durch den Befehl "cout<<...."). Direkt hinter dieser Meldung kannst Du jetzt einen Wert eingeben, der in die Variable "TempFer" gespeichert wird (durch "cin>>...").

Nun wird die Funktion "Convert" aufgerufen (mit Call-by-value, d.h. dass nur eine Kopie des Wertes übergeben wird). Dazu schauen wir uns einmal den Prototypen an.

Rückgabewert: float

Funktionsname: Convert

Übergabewert: float

Das bedeutet, dass die Funktion den Namen "Convert" hat, einen Übergabewert vom Typ float benötigt und nach Ablauf der Funktion einen Wert vom Typ float zurückgibt.

Da die Funktion Werte von Fahrenheit in Celsius umrechnen soll, übergebe ich ihr den vorher in "TempFer" gespeicherten Wert. Die Variable TempCel nimmt anschliessend den Wert auf, den die Funktion zurückliefert. Das "=" ist eine klassische Zuweisung. Diese Zuweisungen gehen immer von rechts nach links. Danach wird der Wert, den die Funktion zurückgegeben hat, auf dem Bildschirm ausgegeben (mit "cout<<...").

Das "getch();" sorgt dafür, dass der Benutzer noch eine Taste drücken muss, bevor das Programm mit "return 0;" beendet wird.

Unter der main steht die Funktionsdefinition von "Convert". Hier steht der Quelltext, bzw. was mit dem Wert, der übergeben wurde, passiert.

Innerhalb der Funktion wird einen temporäre float-Variable angelegt mit dem Namen "Cel". Temporär deshalb, weil sie nach dem Verlassen der Funktion nicht mehr existiert. Dann folgt die Formel zur Umrechnung von Fahrenheit in Celsius mit dem Wert, der übergeben wurde (hier heißt er "Fer"). Der ausgerechnete Wert wird schliesslich zurückgegeben (bzw. eine Kopie davon).

Das wars eigentlich schon. Möchte hier auch nicht zu sehr ausschweifen.

Grüsse!

DocMabuse

:D

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...