Instrukcja warunkowa i złoŝona.

Podobne dokumenty
KURS PASCAL A. 1.Wprowadzenie

XII. Warunek wielokrotnego wyboru switch... case

Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.

TEMAT: Podejmowanie decyzji w programie instrukcja warunkowa (IF).

4. Funkcje. Przykłady

Warunki logiczne instrukcja if

Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst.

3. Instrukcje warunkowe

Warto też w tym miejscu powiedzieć, że w C zero jest rozpoznawane jako fałsz, a wszystkie pozostałe wartości jako prawda.

Cw.12 JAVAScript w dokumentach HTML

Instrukcja zarządzania kontami i prawami

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Operacje wykonywane są na operandach (argumentach operatorów). Przy operacji dodawania: argumentami operatora dodawania + są dwa operandy 2 i 5.

W przeciwnym wypadku wykonaj instrukcję z bloku drugiego. Ćwiczenie 1 utworzyć program dzielący przez siebie dwie liczby

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

11. PROFESJONALNE ZABEZPIECZENIE HASŁEM

INSTRUKCJE PĘTLI, INSTRUKCJA WYBORU. Instrukcja pętli For to do

Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc.

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Podstawy i języki programowania

Runda 5: zmiana planszy: < < i 6 rzutów.

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych.

Zestaw 12- Macierz odwrotna, układy równań liniowych

Instrukcje wyboru. Tworzenie programu, Schematy blokowe, Instrukcje wyboru, Operatory logiczne

Programowanie w Baltie klasa VII

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.

1. Liczby naturalne, podzielność, silnie, reszty z dzielenia

Liczby losowe i pętla while w języku Python

PROGRAMOWANIE STRUKTURALNE I OBIEKTOWE CZĘŚĆ 004 (wersja dla ucznia) ALGORYTMY

Polecenia BEGIN, END, WRITE, WRITELN

Spis treści. I. Czym jest Indeks Haseł 3 II. Wyszukiwanie hasła 4. 1) Alfabetyczna lista haseł 4 2) Wyszukiwarka haseł 4 3) Grupy haseł 6

Podstawy Programowania Podstawowa składnia języka C++

P r a w d o p o d o b i eństwo Lekcja 1 Temat: Lekcja organizacyjna. Program. Kontrakt.

Język C, instrukcje sterujące (laboratorium)

Celem tego projektu jest stworzenie

WIADOMOŚCI WSTĘPNE WPROWADZENIE DO JĘZYKA TURBO PASCAL. Klawisze skrótów. {to jest właśnie komentarz, moŝna tu umieścić dowolny opis}

if (wyrażenie ) instrukcja

ZAJ CIA 4. Podstawowe informacje o algorytmie. Operatory relacyjne i logiczne, instrukcja warunkowa if

Instrukcje wyboru. Tworzenie programu, Schematy blokowe, Instrukcje wyboru, Operatory logiczne

Odczyt danych z klawiatury Operatory w Javie

Pzetestuj działanie pętli while i do...while na poniższym przykładzie:

Wstęp do Programowania Lista 1

Programowanie w Turbo Pascal

Wrocław, dn. 19 kwietnia 2006 roku. Anna Kaleta Piotr Chojnacki IV rok, informatyka chemiczna Liceum Ogólnokształcące nr 10 we Wrocławiu

JAVAScript w dokumentach HTML (2)

Program znajduje największa lub najmniejsza z podanych liczb. Liczby podajemy dopóki nam sie nie znudzi.

Matura z matematyki?- MATURALNIE, Ŝe ZDAM! Zadania treningowe klasa I III ETAP

Wprowadzenie komentarzy do programu

Jak zawsze wyjdziemy od terminologii. While oznacza dopóki, podczas gdy. Pętla while jest

Zadania język C++ Zad. 1. Napisz program wczytujący z klawiatury wiek dwóch studentów i wypisujący informację o tym, który z nich jest starszy.

do instrukcja while (wyrażenie);

Naukę zaczynamy od poznania interpretera. Interpreter uruchamiamy z konsoli poleceniem

PROJEKT CZĘŚCIOWO FINANSOWANY PRZEZ UNIĘ EUROPEJSKĄ. Opis działania raportów w ClearQuest

Zapis algorytmów: schematy blokowe i pseudokod 1

Konstrukcje warunkowe Pętle

MATERIAŁ ĆWICZENIOWY Z MATEMATYKI

Operatory cd. Relacyjne: ==!= < > <= >= bool b; int i =10, j =20; dzielenie całkowitych wynik jest całkowity! Łączenie tekstu: + string s = "Ala ma ";

Instrukcja standardowa Writeln

JAVAScript w dokumentach HTML - przypomnienie

Warunki i pętle. Instrukcja warunkowa if. Przykład zastosowania.

INSTRUKCJE WARUNKOWE. Zadanie nr 1. Odpowiedź. schemat blokowy

Instrukcje sterujące. wer. 11 z drobnymi modyfikacjami! Wojciech Myszka :53:

LibreOffice Calc VBA

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

Jak rozgrywać turnieje tenisowe?

Operatory AND, OR, NOT, XOR Opracował: Andrzej Nowak Bibliografia:

Informatyka II. Laboratorium Aplikacja okienkowa

Pętla for. Wynik działania programu:

1 Wielokrotne powtarzanie tych samych operacji

1 Wprowadzenie do algorytmiki

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.

WHILE (wyrażenie) instrukcja;

Informatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki

Interpreter - EasyCompile

Programowanie - instrukcje sterujące

ForPascal Interpreter języka Pascal

Kiedy i czy konieczne?

Krzysztof Jakubczyk. Zadanie 2

Laboratorium nr 8. Temat: Podstawy języka zapytań SQL (część 2)

Instrukcje sterujące mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2012

Nazwa implementacji: Nauka języka Python pętla for. Autor: Piotr Fiorek

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2

LUBELSKA PRÓBA PRZED MATURĄ

INSTRUKCJE ITERACYJNE

Pętle. Dodał Administrator niedziela, 14 marzec :27

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

Wstęp do programowania. Różne różności

Matlab. modelowanie prostych eksperymentów losowych. Wykorzystanie funkcji rand - generatora liczb losowych, w który wyposaŝony jest MATLAB.

Pętle. for, while, do... while, foreach. Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.

Pascal - wprowadzenie

LUBELSKA PRÓBA PRZED MATURĄ

dr inż. Jarosław Forenc

Systemy liczenia. 333= 3*100+3*10+3*1

Java Podstawy. Michał Bereta

Zestaw 1-1 Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.cpp)!!!

9. Funkcje trygonometryczne. Elementy geometrii: twierdzenie

Wyszukiwanie. Wyszukiwanie binarne

Algorytmika i Programowanie VBA 1 - podstawy

Wyrażenie wewnątrz nawiasów jest atomem (rozpatrujemy je jako całość).

Podstawy programowania (wspólne dla JavaScript i PHP)

Transkrypt:

Instrukcja warunkowa i złoŝona. Budowa pętli warunkowej. JeŜeli mielibyśmy przetłumaczyć instrukcję warunkową to brzmiałoby to mniej więcej tak: jeŝeli warunek jest spełniony, to wykonaj jakąś operację w przeciwnym razie wykonaj inną operację. Przekładając to na angielski otrzymujemy postać instrukcji: lub if warunek then {blok instrukcji 1} else {blok instrukcji 2} if warunek then {blok instrukcji 1} Jest to skrócona wersja warunkowa, pomijająca alternatywną gałąź w przeciwnym razie. PowyŜsze konstrukcje rozpoczynają działanie od sprawdzenia wartości warunku, który musi być wyraŝeniem logicznym (tj. dawać w efekcie wartość True lub False). Jeśli warunek jest prawdziwy, wykonany jest blok instrukcji 1, a jeŝeli nie blok instrukcji 2 (w przypadku formy uproszczonej, jeŝeli warunek jest spełniony, wykonywany jest blok instrukcji 1, a jeŝeli nie, program przechodzi do kolejnych instrukcji programu). Przed słowem else nie moŝe być średnika!!! Jeszcze tylko takie małe przypomnienie co to jest blok instrukcji. W programach często zdarza się, Ŝe określoną grupę instrukcji trzeba wykonać jako całość. Do zaznaczenia ich odrębności słuŝą znane nam słowa kluczowe begin i end, oznaczające oczywiście początek i koniec.

begin instrukcja 1; instrukcja 2; instrukcja 3;. instrukcja n; end; ZauwaŜmy, Ŝe po słowie end na końcu bloku znajduje się średnik, a nie kropka, jak ma to miejsce na końcu programu. Spróbuje wyjaśnić to na przykładzie. ZałóŜmy, Ŝe chcemy stworzyć program, który będzie pytał uŝytkownika o jakąś liczbę. Program ma pokazywać, czy liczba, którą wprowadził uŝytkownik jest większa od stu, mniejsza lub równa. ZałóŜmy, Ŝe uŝytkownik wprowadza liczbę 230. Program ma napisać, Ŝe liczba jest większa od stu. Jak uŝytkownik wprowadzi np. liczbę 17, to program ma napisać, Ŝe liczba jest mniejsza od stu. No i wreszcie, jak uŝytkownik wprowadzi 100, program napisze, Ŝe liczba, którą wprowadził uŝytkownik jest równa 100. USES CRT; liczba:longint; writeln('wprowadź jakąś liczbę'); IF liczba=100 THEN writeln('podałeś liczbę równą 100'); Po słowie "IF" znajduje się zawsze warunek. W tym wypadku warunkiem jest przyrównanie liczby do stu. JeŜeli liczba jest równa 100, to program wykonuje to, co znajduje się po słowie "THEN". JeŜeli program stwierdzi, Ŝe nie jest to liczba 100, omija ten warunek całkowicie go ignorując. Teraz trzeba jeszcze przewidzieć dwa inne przypadki. Ktoś przecieŝ moŝe napisać liczbę mniejszą do sto albo większą. Cały program będzie więc wyglądał tak:

USES CRT; liczba:longint; writeln('wprowadź jakąś liczbę'); IF liczba=100 THEN writeln('podałeś liczbę równą 100'); IF liczba>100 THEN writeln('podałeś liczbę większą od 100'); IF liczba<100 THEN writeln('podałeś liczbę mniejszą od 100');> W ten prosty sposób rozwaŝyliśmy wszystkie moŝliwe przypadki. Logiczne jest Ŝe zawsze wystąpi jeden z tych trzech przypadków (bo kaŝda liczba jest albo równa 100 albo mniejsza albo większa - innej moŝliwości nie ma). Logiczne takŝe jest, Ŝe nie mogą się włączyć np. dwa warunki na raz. PrzecieŜ nie istnieje taka liczba, co by np. była jednocześnie większa od stu i mniejsza. Operatory uŝywane w instrukcjach warunkowych. Do uproszczenia sobie niektórych warunków będziemy uŝywać operatorów logicznych. Najczęściej spotykanymi są: OR - alternatywa - instrukcja się wykona, gdy co najmniej jeden z warunków jest spełniony ("lub"). AND - koniukcja - instrukcja się wykona, gdy wszystkie warunki są spełnione ("i"). NOT - negacja - zaprzeczenie warunku ("nie"). XOR - alternatywa wykluczająca - instrukcja się wykona tylko wtedy, gdy jeden z dwóch warunków jest spełniony ("albo").

Spotkamy się równieŝ z operatorami matematycznymi. Podstawowe zostały wymienione poniŝej: = równe > większe niŝ < mniejsze niŝ >= większe lub równe <= mniejsze lub równe <> róŝne Spróbujmy wytłumaczyć sobie teraz uŝywanie operatorów. ZałóŜmy, Ŝe uŝytkownik ma wprowadzić liczbę od 1 do 10. Program ma pokazać, czy liczba, którą wprowadził uŝytkownik jest parzysta czy nie. Parzyste liczby z tego przedziału to 2, 4, 6, 8 i 10. Nieparzyste to: 1, 3, 5, 7, 9. Gdybyśmy liczyli na piechotę, program wyglądałby tak: USES CRT; liczba:longint writeln('wprowadź jakąś liczbę od 1 do 10'); IF liczba=2 THEN writeln('wprowadziłeś liczbę parzystą'); IF liczba=4 THEN writeln('wprowadziłeś liczbę parzystą'); IF liczba=6 THEN writeln('wprowadziłeś liczbę parzystą'); IF liczba=8 THEN writeln('wprowadziłeś liczbę parzystą'); IF liczba=10 THEN writeln('wprowadziłeś liczbę parzystą'); IF liczba=1 THEN writeln('wprowadziłeś liczbę nieparzystą'); IF liczba=3 THEN writeln('wprowadziłeś liczbę nieparzystą'); IF liczba=5 THEN writeln('wprowadziłeś liczbę nieparzystą'); IF liczba=7 THEN writeln('wprowadziłeś liczbę nieparzystą'); IF liczba=9 THEN writeln('wprowadziłeś liczbę nieparzystą');

Trochę kosmicznie to wygląda, ale jest zrozumiałe. Program moŝna by skrócić za pomocą operatora "OR" (alternatywa). Odpowiada polskiemu wyrazowi "lub". Doskonale nadaje się do tego programu. Spójrz na poniŝszy kod: USES CRT; liczba:longint writeln('wprowadź jakąś liczbę od 1 do 10'); IF (liczba=2) OR (liczba=4) OR (liczba=6) OR (liczba=8) OR (liczba=10) THEN writeln('wprowadziłeś liczbę parzystą'); IF (liczba=1) OR (liczba=3) OR (liczba=5) OR (liczba=7) OR (liczba=9) THEN writeln('wprowadziłeś liczbę nieparzystą'); Program poprzedni miał taką formę:, "jeŝeli liczba=2 to..., jeŝeli liczba=4 to..., jeŝeli liczba=6 to..." i tak dalej. Takiej formy się nie stosuje (jest poprawna, ale niewygodna). Program z operatorem ma taką postać:, "jeŝeli liczba=2 lub liczba=4 lub liczb=6 lub liczba=8 lub liczba=10 to..." Chyba kaŝdy widzi, Ŝe stosowanie operatorów jest łatwe. Pamiętać trzeba jeszcze, Ŝe jeŝeli stosujemy jakikolwiek operator, to warunki muszą być w NAWIASACH. Doskonale to widać na powyŝszym programie. To był operator alternatywy ("OR"). Teraz czas poznać operator koniunkcji ("AND"). W powyŝszym programie napis się wyświetlał, gdy co najmniej jeden z warunków został spełniony. Gdybyśmy zastosowali tam "AND", kaŝdy warunek musiałby być spełniony. Odpowiada to polskiemu wyrazowi "i". Wszystko się zaraz wyjaśni na podstawie programu. ZałóŜmy, Ŝe chcemy zrobić program, który sprawdza, czy liczba, którą wprowadził uŝytkownik jest między 5 a 10. JeŜeli tak, to ukaŝe się napis. JeŜeli nie - program się wyłączy. Zatem:

USES CRT; liczba:longint writeln('wprowadź jakąś liczbę'); IF (liczba>5) AND (liczba<10) THEN writeln('liczba ta jest w przedziale od 5 do 10');> IF (liczba>=10) OR (liczba<=5) THEN halt; Program ten wyłączy się, gdy liczba będzie większa lub równa 10 lub mniejsza/równa 5. JeŜeli jest mniejsza od dziesięciu i jednocześnie większa od 5, napis się ukaŝe. Poznałeś, zatem juŝ 2 operatory (były one najwaŝniejsze). W pascalu pisanie warunków w nawiasach nie jest obowiązkowe (chyba, Ŝe między warunkami stosujemy operatory). JeŜeli napiszemy warunek w nawiasie nie będzie to błędem (nawiasy nie szkodzą), natomiast mogą poprawić czytelność programu. Na koniec moŝna wspomnieć, Ŝe w języku C ujęcie warunku w nawiasy jest obowiązkowe, tak więc przyzwyczajenie się do nich w Pascalu moŝe nam ułatwić Ŝycie w przyszłości. ZADANIA DO WYONANIA: Zadanie 1. Napisz program który sprawdza, która z podanych 2 liczb przez uŝytkownika jest najmniejsza. Zadanie 2. Napisz program który obliczy pole prostokąta. Zastosuj w programie warunek sprawdzający długość boku prostokąta. Zadanie 3. Napisz program znajdujący rozwiązanie równania Ax+b=c. Zrób w nim załoŝenie, Ŝe A nie moŝe być równe zero. Zadanie 4. Napisz program, który sprawdza czy podana liczba jest liczba parzystą.

Zadanie 5. Napisz program, który osobie znającej hasło poda tajną informację, a w przypadku wpisania błędnego hasła informację o odmowie dostępu.