Wpis z mikrobloga

@asasello: na początku program prosi użytkownika o wpisanie liczby. Pierwszy if sprwadza czy wpisana liczba jest MNIEJSZA od zera. Jeżeli tak to wypisze na ekran, że liczba jest mniejsza. Jeżeli pierwszy warunek jest nie spełniony to sprawdzi elifa czyli czy liczba wcześniej podana jest większa od zera i wypisze informacje, że liczba jest dodatnia. Jeżeli drugi warunek nie będzie spełniony to wykona się else czyli wypisze że liczba podana to
  • Odpowiedz
@asasello:
W tym przypadku niczym. Oba kody zadziałają tak samo.
W innym, przy innych warunkach: gdyby liczba była jednocześnie >0 i jednocześnie <0 to wtedy w pierwszy kod wyplułby tylko jedno zdanie (negative), a kod drugi już dwa (positive, negative).
  • Odpowiedz
@asasello: a, bo tu była druga część :D
No to pierwszy teoretycznie bedzie wydajniejszy, bo w przypadku spelnienia warunku pozostałe porównania nie bedą wykonywane. W drugim przypadku jeśli natrafisz na liczbę ujemną to nadal jak baranek sprawdzasz czy nie jest ona jeszcze przypadkiem jednocześnie dodatnia oraz zerem ;-)
  • Odpowiedz
@WampirZSuchodolu:
@Sudo_exit: @deryt:
Ok, chyba rozumiem (if-if-if) sprawdza każdy warunek, nawet jak pierwszy jest spełniony, (if-elif-else) sprawdza warunki do pierwszego spełnionego - Oczywiście spepłniony warunek może być tym ostatnim, czyli elsem. któryś jest bardziej stosowany? czy oba się stosuje? w zależności jak chcemy, żeby było to sprawdzone?
  • Odpowiedz
@asasello: różnica jest taka że jak warunki byłyby sformulowane inaczej to mogłbys spelnic wiecej niż jeden w ifach, natomiast w elsach zawsze tylko jeden/pierwszy.
if(num>3)
if(num>6)
if(num<0)

liczba 9 spelni ci pierwszy i drugi
  • Odpowiedz
@asasello: dodałbym jeszcze tylko na sam koniec, że jeżeli spodziewasz się, że większość wprowadzonych liczb będzie dodatnia to sprawdzanie rozpocząłbym właśnie od liczby dodatniej. Wtedy w większości przypadków zaoszczedzi to kilka cykli procesora.

Powodzenia z nauką i baw się dobrze :-)
  • Odpowiedz