Instrukcje warunkowe
Instrukcje warunkowe pozwalają podejmować decyzję w zależności od sytuacji.
Pokażmy to od razu na jakimś użytecznym przykładzie, zróbmy (jak to się robi zazwyczaj) prosty kalkulator, który potrafi zrobić "coś" z dwoma liczbami. Podany kod jest tak zwanym pseudokodem.
print("Podaj pierwsza liczbe i nacisnij Enter")
pierwsza = wprowadz_liczbe()print("Podaj operator i nacisnij Enter")
operator = wprowadz_znak()print "Podaj druga liczbe i nacisnij Enter"
druga = wprowadz_liczbe()if (operator == "+"){
return pierwsza + druga}
elif (operator == "-"){
return pierwsza - druga}
elif (operator == "*"){
return pierwsza * druga}
elif (operator == "/"){
return pierwsza / druga}
elif (operator == "**"){
return pierwsza ** druga}
elif (operator == "%"){
return pierwsza % druga}
else{
return "ERROR!"}
Być może nie wiesz do czego służą znaki ==, ** oraz %. Jeśli tak, warto byś poszukał w internecie więcej informacji o operatorach. Znak == porównuje dwie rzeczy (nie można tego robić przez pojedyncze = gdyż w ten sposób przypisuje się jakąś wartość do zmiennej), znak ** podnosi do potęgi, a znak % to dzielenie modulo (zwraca nam resztę z dzielenia liczb całkowitych). Te operatory znaczą zazwyczaj to samo we wszystkich językach, ale warto byś sprawdził sam jak jest w tym, w którym zdecydowałeś się programować.
Przechodząc do sedna: użytkownik wpisuje dwie liczby i jakiś operator. Następnie program dochodzi do instrukcji warunkowej "if", następuje sprawdzenie czy operator wpisany przez użytkownika to "+" jeśli tak, to wykonuje się polecenie wypisania na ekran wyniku dodawania i program kończy działanie, jeśli nie jest to znak "+" sprawdzane są kolejne warunki w instrukcji "elif" (występuje tylko w niektórych językach, często występuje "else if" lub podobna) czyli czy operator to "-", jeśli tak, to wyświetlamy wynik odejmowania i program kończy działanie itd. Jeśli natomiast żaden z powyższych warunków nie był spełniony możemy też w jakiś sposób zareagować - służy do tego instrukcja "else", nie podajemy w niej żadnych warunków, ponieważ wykonuje się ona w przypadku kiedy żaden z poprzednich warunków nie został spełniony. Co bardzo istotne - w przypadku tego typu konstrukcji jeśli program natknie się na pasujący warunek wykonuje tylko i wyłącznie kod zawarty w tej instrukcji, wszyskie pozostałe są pomijane.
Twoim zadaniem będzie wygranie w grze w papier, kamień i nożyce. Masz bardzo ułatwione zadanie, ponieważ przeciwnik ma z góry ustalony plan swoich ruchów, który udało się nam zapamiętać i zapisać poniżej. Powodzenia!
['p', 'p', 'n', 'n', 'n', 'p', 'n', 'n', 'n', 'k', 'k', 'k', 'p', 'n', 'n', 'k', 'n', 'p', 'n', 'k', 'k', 'k', 'n', 'n', 'n', 'n', 'p', 'k', 'n', 'p', 'p', 'k', 'k', 'k', 'k', 'p', 'n', 'n', 'n', 'n', 'p', 'k', 'k', 'n', 'k', 'p', 'k', 'n', 'k', 'n', 'n', 'k', 'n', 'p', 'n', 'p', 'n', 'p', 'k', 'k', 'k', 'k', 'n', 'k', 'p', 'n', 'n', 'p', 'p', 'k', 'n', 'n', 'k', 'n', 'n', 'k', 'k', 'p', 'k', 'k', 'p', 'p', 'p', 'n', 'n', 'n', 'n', 'p', 'p', 'n', 'n', 'n', 'p', 'k', 'n', 'n', 'k', 'n', 'n', 'n']
Wynik podaj w formie jednego napisu, czyli np. nnkkkpnpkpnkn..., który pozwoli Ci na zwycięstwo za każdym razem.
- Zaloguj się albo zarejestruj aby dodać rozwiązanie