Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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!

Geschrieben

1. Schlecht, weil Parameter kante und Parameter a, die kante heißt aber a.

2. Besser, aber a muss hier keine Referenz sein.

Geschrieben

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) );

}

Geschrieben

Der Parameter heißt umfang, nicht u. Außerdem muss bei a in der Parameterliste der Stern weg.

Ich würde übrigens entweder alle Parameter als Abkürzung benennen, oder alle ausschreiben, aber keinen solchen Mischmasch verwenden. Aber das ist eine Stilfrage.

Geschrieben
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;

}

Geschrieben
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!

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

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