• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Struktury w C++

Object Storage Arubacloud
–1 głos
255 wizyt
pytanie zadane 19 marca 2018 w C i C++ przez danie6 Początkujący (280 p.)
edycja 19 marca 2018 przez danie6

Zakładając, że mamy następujące definicje:
 

struct TKrowa
{
    string imie;
    double wiek;
    double mlecznosc;
};

 

struct TStado
{
    int n;
    TKrowa stado[nmax];
};



napisz funkcje:

1.wyświetlającą dane całego stada ,

2.obliczającą ile krów ma imię na literę ‘M’,

3.obliczającą ile jest krów o mleczności większej od danej przez parametr

4.wyświetlającą najmłodsze krowy w stadzie

komentarz 19 marca 2018 przez Qwerty96 Stary wyjadacz (13,580 p.)
A problem masz z...?
komentarz 19 marca 2018 przez Mariusz08 Maniak (62,300 p.)
Kod wstawiamy w bloczek.
komentarz 19 marca 2018 przez danie6 Początkujący (280 p.)

@Qwerty96, Nie za bardzo wiem jak to zrobić inaczej bym tego tu nie wstawiał to pomożesz?

komentarz 19 marca 2018 przez Qwerty96 Stary wyjadacz (13,580 p.)
Wstaw to, co już sam napisałeś.
komentarz 19 marca 2018 przez danie6 Początkujący (280 p.)
#include <iostream>

using namespace std;

const int nmax=50;

struct TKrowa
{
    string imie;
    double wiek;
    double mlecznosc;
};

struct TStado
{
    int n;
    TKrowa stado[nmax];
};

// a
void wczytajS(TStado & s)
{
    do{
        cout << "Podaj ilosc krow w stadzie"<<endl;
        cin >> s.n;
    }while(s.n < 1 || s.n > 50);
    for(int i = 0; i < s.n; i++)
    {
        cout << "Podaj imie krowki " << i+1 << endl;
        cin >> s.stado[i].imie;
        cout << "Podaj jej wiek"<<endl;
        cin >> s.stado[i].wiek;
        cout << "Podaj jej mlecznosc"<<endl;
        cin >> s.stado[i].mlecznosc;
    }
}

// e
void wyswietlS(TStado s)
{
    cout << "Dane o krowkach w stadzie:" << endl;
    cout << "Krow w stadzie: " << s.n << endl;
    for(int i = 0; i < s.n; i++)
    {
        cout << "Krowka " << s.stado[i].imie << endl;
        cout << "Lat " << s.stado[i]. wiek << endl;
        cout << "Mlecznosc " << s.stado[i].mlecznosc << endl;

    }
}

// c
int mlode(TStado s)
{
    int ile = 0;
    for(int i = 0; i < s.n; i++)
    {
        if(s.stado[i].wiek < 2.0)
            ile++;
    }
    return ile;
}

// d
void najMlecznosc(TStado s)
{
    double maxMlecz = s.stado[0].mlecznosc;
    for(int i = 0; i < s.n; i++)
    {
        if(s.stado[i].mlecznosc > maxMlecz)
            maxMlecz = s.stado[i].mlecznosc;
    }
    cout << "Maksymalna mlecznosc: " << maxMlecz << endl;
    cout << "Maja ja krowki:" << endl;
    for(int i = 0; i < s.n; i++)
    {
        if(s.stado[i].mlecznosc == maxMlecz)
            cout << s.stado[i].imie << endl;
    }
}

int main()
{
    TStado stado1;
    wczytajS(stado1);
    wyswietlS(stado1);
    cout << "Mlodych krow jest " << mlode(stado1) << endl;

    return 0;
}

Sam zrobiłem 4 poprzednie przykłady a następnych już nie umiem 

komentarz 20 marca 2018 przez Qwerty96 Stary wyjadacz (13,580 p.)
Z tego co widzę 1 nawet już zrobiłeś. Patrząc na kod, to z pozostałymi też nie powinieneś mieć problemów. Przecież rozwiązanie drugiego i trzeciego jest prawie identyczne z funkcją mlode. Jedyne co trzeba zmienić to warunek w if'ie. No i w trzecim dodać jeden argument do funkcji.
komentarz 20 marca 2018 przez danie6 Początkujący (280 p.)
Napisałeś że już jeden zrobiłem o który przykład Ci chodzi?
komentarz 20 marca 2018 przez Qwerty96 Stary wyjadacz (13,580 p.)
O pierwsze. Przecież wyświetlasz dane w funkcji wyswietlS.
komentarz 20 marca 2018 przez danie6 Początkujący (280 p.)
A rzeczywiście a z pozostałymi pomożesz?
komentarz 20 marca 2018 przez Qwerty96 Stary wyjadacz (13,580 p.)
Już Ci napisałem wyżej, co należy zrobić w drugim i trzecim. Czego z tego nie rozumiesz?

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

+1 głos
2 odpowiedzi 788 wizyt
pytanie zadane 15 grudnia 2017 w C i C++ przez fast Nowicjusz (170 p.)
0 głosów
1 odpowiedź 144 wizyt
pytanie zadane 14 grudnia 2016 w C i C++ przez Programator Nowicjusz (160 p.)
0 głosów
2 odpowiedzi 270 wizyt
pytanie zadane 8 czerwca 2023 w C i C++ przez whiteman808 Obywatel (1,820 p.)

92,540 zapytań

141,383 odpowiedzi

319,481 komentarzy

61,928 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...