Zum Inhalt springen

Call by reference - Problem bei Aufgabe


bjoe_frie

Empfohlene Beiträge

Zur Aufgabe: Schreiben Sie eine C-Funktion, die den Flächeninalt und den Umfang eines Quadrates mit der zu übergebenden Kantenlänge a an die aufrufende Funktion zurückgibt habe ich folgende Lösung geschrieben.

Ist das folgende richtig?

void umfang(float kante, float* a, float *u)

{

*a=kante*kante;

*u=4*kante;

}

Oder das besser?

void umfang(float *a, float *umfang, float *flaeche)

{

*umfang = ( (*a) * (*a) );

*flaeche = ( 4 * (*a) );

}

Oder ist beides völlig verkehrt?

Danke für alle Antworten!

Link zu diesem Kommentar
Auf anderen Seiten teilen

OK. Danke schonmal. Dann müsste es bei 1. heißen:

void umfang(float kante, float* a, float *u)

{

*a=kante*kante;

*u=4*kante;

}

und bei 2. ie Referenz SO weg?:

void umfang(float *a, float *umfang, float *flaeche)

{

*umfang = ( (a) * (a) );

*flaeche = ( 4 * (a) );

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Quatsch. Beim ersten natürlich:

void umfang(float *umfang, float *a, float *flaeche)

{

*flaeche=a*a;

*u=4*a;

}

Hey, danke für die Antwort...also muss es so aussehen und dann entspricht es der Aufgabenstellung?

void umfang(float *u, float a, float *f)

{

*f=a*a;

*u=4*a;

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich würde die Funktion nicht "umfang" nennen, und a als ersten Parameter übergeben, aber auch das sind Stilfragen. Dein Code erfüllt die Aufgabenstellung.

Vielen herzlichen Dank! Hab bei so Übergabe Aufgaben meine Probleme. Bei konkreten Programmieraufgaben krieg ich das irgendwie automatisch hin, aber so theoretisch überlegen is das so ne Sache.

Also danke für die Hilfe!

Link zu diesem Kommentar
Auf anderen Seiten teilen

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...