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

C++ Program liczący statystyki ocen studentów

Object Storage Arubacloud
0 głosów
764 wizyt
pytanie zadane 29 grudnia 2020 w C i C++ przez Niedzwiad Nowicjusz (160 p.)
Witam.

Potrzebuję pomocy, wsparcia, czegokolwiek co pomoże mi ruszyć temat w sprawie zadania C++ ze sprawozdania na "podstawy programowania". Jestem sieciowcem, a programowanie sprawia mi trudność. Muszę jednak przez to przejść a czasu mam mało...

Nie wiem jak w ogóle zacząć pisanie tego programu. Nie wiem jak na necie wyszukać to czego potrzebuję, bo zadanie jest bardzo specyficzne.

Muszę napisać program, który wymaga od użytkownika wpisanie po jednej ocenie dla 15 studentów (oceny od 2 do max 5.) Program ma informować i blokować oceny wyższe, bądź niższe wprowadzone przez użytkownika.
Na koniec, program musi pokazać statystykę każdej z ocen. Przykładowo:

Ocenę 2 otrzymało: 5 studentów
Ocenę 3 otrzymało: 3 studentów
itd..
w zależności od wprowadzonych danych.

Bardzo, bardzo proszę o wsparcie, bo sprawozdań mam od groma i mimo, że robię je na bieżąco mam problem żeby się wyrobić... Proszę o nakierowanie mnie jakoś, albo za pomocą jakich elementów mogę takowy program napisać.

Nie chcę żebrać o gotowca, proszę o cokolwiek.

Dzięki, pozdrawiam ;)

3 odpowiedzi

+1 głos
odpowiedź 29 grudnia 2020 przez Michałełe Nałogowiec (25,600 p.)
Witam

Hmm, no jak rozumiem to oceny wystarczy wpisać za pomocą np. cin'a, później w if'ie sprawdzić czy spełniają założenia.

Aby wiedzieć ilu studentów dostało jaką ocenę to masz 4 osobne zmienne bądź tablicę, które inkrementujesz gdy wpisana zostanie odpowiednia ocena, a statystyki wypisujesz za pomocą np. cout
komentarz 9 stycznia 2021 przez Niedzwiad Nowicjusz (160 p.)

#include <iostream>

Jestem na takim etapie, zrobiłem sobie od tego niemałą przerwę, ale wracam do tematu.
Nie wiem jak to rozbudować, żeby zaczęło działać. Muszę dodać licznik, ale nie bardzo wiem jak. W dodatku jakieś komunikaty, restrykcje co do wprowadzanych danych (przedział 2-5). Dzisiaj oddaję pracę   surprise

cout << "Ocena " << i << " wystapila" <<   TUTAJ   << " razy" << endl;

 

 

using namespace std;

int main()
{
    int tablica[ 15 ];
    int wybor = 0;

    menu:

    cout << "1. Wprowadz 15 ocen z zakresu 2-5" << endl;
    cout << "2. Ilosc wystapien danej oceny w tablicy" << endl;
    cout << "Co chcesz zrobic: "; cin >> wybor;

    switch( wybor )
    {
    case 1:
        for( int i = 1; i <= 15; i++ )
        {
            cout << "Podaj " << i << " ocene: ";
            cin >> tablica[ i ];
        }
        goto menu;
        break;
    case 2:
        for( int i = 2; i <= 5; i++ )
        {
            cout << "Ocena " << i << " wystapila" << " razy" << endl;
        }
        break;
    }
    cin.get();
    exit:
    return 0;
}

 

komentarz 9 stycznia 2021 przez Michałełe Nałogowiec (25,600 p.)
Jeśli chodzi o przedział ocen, to wystarczy zwykły if, i sprawdzenie warunków czy wprowadzona liczba jest <= 5 i >= 2.

Co do licznika to kolega niżej podał przykład, możesz też ewentualnie zrobić 4 elementową tablicę gdzie

tab[0] - ilość wystąpień 2

tab[1] - ilość wystąpień 3

tab[2] - ilość wystąpień 4

tab[3] - ilość wystąpień 5

I inkrementujesz te elementy przy kazdym wystapieniu danej oceny
+1 głos
odpowiedź 29 grudnia 2020 przez TOM_CPP Pasjonat (22,640 p.)

Pomyśl o wykorzystaniu std::map<int,int> do zliczania ocen.

Przykład ( wymaga C++11 ):

#include <iostream>
#include <map>

using namespace std;

int main()
{
    map<int,int> grades;

    ++grades[5]; // dodajemy ocene 5
    ++grades[2]; // dodajemy ocene 2
    ++grades[3];
    ++grades[5];

    for( auto grade : {2,3,4,5} )
    {
        cout << "Ocena " << grade << " wystapila " << grades[grade] << " razy" << endl;
    }

    return 0;
}

 

0 głosów
odpowiedź 29 grudnia 2020 przez Niedzwiad Nowicjusz (160 p.)
Super, dzięki Wam.

Sprawdzę, kiedy dotrę do domu :))

Podobne pytania

0 głosów
0 odpowiedzi 210 wizyt
0 głosów
6 odpowiedzi 4,905 wizyt
pytanie zadane 2 czerwca 2019 w C i C++ przez Blu3wolf Początkujący (280 p.)
0 głosów
1 odpowiedź 1,587 wizyt

92,575 zapytań

141,424 odpowiedzi

319,650 komentarzy

61,961 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!

...