Witam,
mam problem z zadaniem 2 z rozdziału 8 z książki "Język C++ Szkoła programowania".
Polecenie do zadania:
Struktura Batonik ma trzy pola: markę producenta, wagę (z częścią ułamkowa) oraz liczbę kalorii (całkowitoliczbowo). Napisz program korzystający z funkcji, której parametry to referencja do typu Batonik, wskaźnik do typu char, wartość double oraz wartość int; funkcja ma używać ostatnich trzech wartości do ustawienia odpowiednich pól struktury. Ostatnie trzy parametry mają mieć wartości domyślne "Milienium Munch", 2,85 i 350. Poza tym program powinien korzystać z funkcji pobierającej referencję do Batonika i wyświetlającej zawartość struktury. Należy użyć w miarę potrzeb const.
Mój problem polega na tym, że nie do końca mogę zrozumieć treść zadania.
Po przeczytaniu polecenia wnioskuję, że należy użyć dwóch funkcji jednej z czterema parametrami tylko do czego ona miałaby służyć?
Dlaczego w pierwszej funkcji mam też używać referencji do struktury Batonik?
Wstępnie udało mi się coś wykombinować z funkcją wyświetlającą zawartość struktury z tym, że nie wyświetla mi nazwy batonika co jak się domyślam spowodowane jest brakiem funkcji pierwszej, która powinna zawierać wskaźnik do typu char.
W związku z powyższym uprzejmie proszę o:
- określenie czy moja interpretacja tego zadania jest właściwa; jeżeli nie to wskazówkę jak prawidłowo zinterpretować to zadanie.
Z góry dziękuję za pomoc.
Poniżej kod:
#include <iostream>
using namespace std;
struct batonik
{
char nazwa_producenta[25];
double waga;
int liczba_kalorii;
};
void funkcja_pierwsza (const struct batonik & referencja_batonik, char* wskaznik[25], double x, int y);
void wyswietl (const struct batonik & referencja_batonik);
int main()
{
batonik pierwszy = {"Millenium Munch", 2.85, 350};
wyswietl(pierwszy);
return 0;
}
void wyswietl (const struct batonik & referencja_batonik)
{
static int licznik = 1;
cout << "Wyswietlanie danych: \n";
cout << "Znaleziono ";
cout << licznik++ << " produkt/ow:\n";
cout << "Nazwa producenta: " << referencja_batonik.nazwa_producenta[25] << endl;
cout << "Waga: " << referencja_batonik.waga << endl;
cout << "Liczba kalorii: " << referencja_batonik.liczba_kalorii ;
}