zadanie ze switch C++

zadanie ze switch C++
Monika Kuźmińska
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

Witam,
Przesyłam treść zadania w zalaczniku, a poniżej program który napisałam, lecz niestety nie wiem dlaczego po wpisaniu roku odpowiadającego "małpa" nie wyświetla się w konsoli napis "malpa". Czy mógłby ktoś zerknąć i podpowiedzieć gdzie popełniam błąd.

Kopiuj
#include <iostream>

using namespace std;

int main()
{
  int n;
    cin >> n;

    switch (n%12)
{
case 1:
    cout << "kogut" << endl;
    break;
case 2:
    cout << "pies" << endl;
    break;
case 3:
    cout << "swinia" << endl;
    break;
case 4:
    cout << "szczur" << endl;
    break;
case 5:
    cout << "bawol" << endl;
    break;
case 6:
    cout << "tygrys" << endl;
    break;
case 7:
    cout << "krolik" << endl;
    break;
case 8:
    cout << "smok" << endl;
    break;
case 9:
    cout << "waz" << endl;
    break;
case 10:
    cout << "kon" << endl;
    break;
case 11:
    cout << "baran" << endl;
    break;
case 12:
    cout << "malpa" << endl;
    break;
}
    return 0;
}
szweszwe
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Kraków
  • Postów: 1694
2

Jaką liczbę trzeba wpisać żeby modulo 12 z niej dało 12?

Monika Kuźmińska
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

w takim razie nie zrozumiałam pytania gdyż jestem poczatkujaca

szweszwe
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Kraków
  • Postów: 1694
1

Pytanie jest proste. W jakim przypadku liczba %12 == 12? Sama pisałaś ten program? Wiesz jak działa modulo?

SnaaPP
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 20
0

No jedyną liczbą, która da ci 12 z modulo z 12 jest oczywiście zero.

EDIT: Oczywiście głupotę napisałem, no zakres modulo działa w zakresie <0, 12)

Monika Kuźmińska
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

tak sama je robiłam po kilku godzinach kombinowania

Monika Kuźmińska
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

udało mi się zrobić dziekuje za podpowiedz, musze dokładnie zapoznać się z modulo

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
0

małpa ma mieć numer 0.

Kopiuj
#include <iostream>
using namespace std;

int main() 
{
	const char* tb[]={"malpa","kogut","pies","swinia","szczur","bawol","tygrys","krolik","smok","waz","kon","baran",};
	unsigned year;
	while(cin>>year) cout<<tb[year%12]<<endl;
	return 0;
}

https://ideone.com/1HJmfd

Tak a poropos, za samo nauczanie używania switch lub/oraz goto - wykładowca powinien dostać dożywotny zakaz wykonywania zawodu.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.