Funkcja kwadratu C++

0

Witam,

Chciałbym was prosic w napisaniu jednej funkcji ktora dla żądanego boku kwadratu wyznaczy obwod kwadratu, pole powieszchni oraz dlugosc przekatnej. Wynik zwroci w nastepujacy sposób:
pole - poleceniem return;
obwod - przez referencje;
dlugosc przekatnej przez wskaznik;

Do tego wywołanie tej funkcji.
Mam problem z napisaniem funkcji, otoz nie moge jakos ulozyc tego w jedej funkcji. Robie kazda oddzielna funkcje a musi to byc w jedenj, mozecie mi podpowiedziec jak to zrobic.

Z gory dziekuje

int pole (int a)
{
a=a*a;
return a;
}

int obwod(int &a)
{
a=a*4;
}

float przekatna (int *a)
{
*a=*a*sqrt(2);
}

tak to chyba bedzie wygladac, teraz jak to połaczyc w jedna funkcje;/

pomozecie?

1
inline int pole( const int& a ) { return a * a; }
inline void obwod( int& a ) { a *= 4; }
inline void przekatna( const int& a, float* wynik ) { *wynik = a * sqrt(2); }

Jedyna różnica między moim rozwiązaniem, a twoim, to, to, że ty wpisujesz typy zwracane, tam gdzie nie masz używać słowa return.
Stwórz kolejną funkcję, nie inline. I tam stwórz 3 obiekty typu int, pole, obwód i bok, oraz obiekt typu float wynik.

1
int kwadrat(int bok, int& obwod, float * przekatna)
{
    obwod = 4 * bok;
    *przekatna = bok * sqrt(2.0f);
    return bok*bok;
}

int main()
{
    int ob;
    float d;
    int p;
    p = kwadrat(10, ob, &d);
    printf("obwod=%d, pole=%d, przekatna=%f\n", ob, p, d);
    return 0;
}
0

Dziekuje bardzo mi rozjasniliscie:)

1 użytkowników online, w tym zalogowanych: 0, gości: 1