M1 L16 Instrukcje warunkowe – cd

Instrukcje warunkowe mogą mieć różne wersje, w zależności od tego, ile alternatywnych ścieżek jest nam potrzebnych. Poznana dotychczas postać dawała nam dwie opcje – gdy warunek został spełniony i gdy nie był. Załóżmy jednak, że interesuje nas tylko ten pierwszy przypadek:

Program taki jest zupełnie poprawny – jeśli warunek nie jest spełniony i nie chcemy nic wypisywać. Nie ma potrzeby dodawać pustego bloku ELSE – Python zrobi to za nas „w tle”.

Możliwe są też sytuacje, w których chcemy sprawdzić mieć kilka różnych wariantów postępowania w ramach jednej instrukcji. Jeśli warunek A nie zostanie spełniony, sprawdzamy warunek B – jeśli jest prawdziwy, wykonujemy stosowne czynności. Jeśli był fałszywy, przechodzimy do warunku C itd. Jeśli żaden nie był prawdziwy, przechodzimy do bloku ELSE (jeśli istnieje).

Służy do tego operator „elif” (w wielu językach jest to elseif).

Taką instrukcję można dowolnie rozbudowywać, aż uzyskamy pożądany efekt – i podobnie jak poprzednio, można zupełnie opuścić blok ELSE. Należy jednak dokładnie przeanalizować przebieg programu, by nie dublować takich samych opcji albo nie stworzyć wariantów, które nigdy nie zostaną osiągnięte.

Zadanie

1. Co będzie efektem działania tego programu? Jak można go zmienić, by uzyskać lepszy rezultat?