Języki i metody programowania

Podobne dokumenty
Podstawy programowania w Pythonie

Podstawy programowania w Pythonie

Podstawy programowania w Pythonie

Wstęp do Informatyki

4. Funkcje. Przykłady

Wstęp do Informatyki i Programowania (kierunek matematyka stosowana)

Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program.

PROGRAMOWANIE W PYTHONIE OD PIERWSZYCH KROKÓW

Algorytmy i struktury danych

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

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

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 1. Programowanie komputerowe

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

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Podstawy programowania skrót z wykładów:

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

Programowanie robota mobilnego E-puck w języku Python

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

WHILE (wyrażenie) instrukcja;

Pytania dla języka Python

Bloki anonimowe w PL/SQL

Podstawy Programowania C++

Podstawy programowania w Pythonie

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6

Kurs rozszerzony języka Python

Język C część 2. Podejmowanie decyzji w programie. if else. switch

do instrukcja while (wyrażenie);

Cw.12 JAVAScript w dokumentach HTML

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

Języki programowania C i C++ Wykład: Typy zmiennych c.d. Operatory Funkcje. dr Artur Bartoszewski - Języki C i C++, sem.

Podstawy programowania w języku Visual Basic dla Aplikacji (VBA)

Python wstęp do programowania dla użytkowników WCSS

Wstęp do informatyki- wykład 12 Funkcje (przekazywanie parametrów przez wartość i zmienną)

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru

WHILE (wyrażenie) instrukcja;

Wstęp do programowania

dr inż. Jarosław Forenc

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

if (warunek) instrukcja1; if (warunek) instrukcja1; else instrukcja2; a > b - a większe od b if (warunek) instrukcja1; a <= b - a mniejsze lub równe b

Wrocław, Wstęp do informatyki i programowania: liczby pierwsze. Wydział Matematyki Politechniki Wrocławskiej.

Warsztaty dla nauczycieli

Wykresy i interfejsy użytkownika

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

Programowanie obiektowe

Podstawy programowania w języku C

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Wstęp do programowania

Wstęp do programowania

Python. Wprowadzenie. Jolanta Bachan

Podstawy programowania w Pythonie

Funkcje są prawdopodobnie najważniejszą częścią każdego poważnego programu (w każdym języku programowania).

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Instrukcje sterujące. Programowanie komputerowe

Programowanie komputerowe. Zajęcia 2

Wprowadzenie do programowania w języku C

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Wstęp do informatyki- wykład 6

Wstęp do informatyki- wykład 7

Języki i metody programowania

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

Wstęp do Programowania potok funkcyjny

Wstęp do informatyki- wykład 5 Instrukcja selekcji if-else Operatory arytmetyczne i logiczne

Języki i paradygmaty programowania

Informatyka 1. Wyrażenia i instrukcje, złożoność obliczeniowa

Wstęp do programowania

Wstęp do programowania

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

JAVAScript w dokumentach HTML (2)

Prof. Danuta Makowiec Instytut Fizyki Teoretycznej i Astrofizyki pok. 353, tel danuta.makowiec at gmail.com

Konstrukcje warunkowe Pętle

Struktura pliku projektu Console Application

Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 12 - sem.iii. M. Czyżak

Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek].

Podstawowe algorytmy i ich implementacje w C. Wykład 9

Algorytmika i programowanie. dr inż. Barbara Fryc Wyższa Szkoła Informatyki i Zarządzania w Rzeszowie

Definicje wyższego poziomu

Języki skryptowe w programie Plans

Wstęp do programowania 1

Wstęp do programowania

Pliki wykład 2. Dorota Pylak

Podstawy bioinformatyki 2017/18

Instrukcje sterujące

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

Dzi kuj za uwag! Spotkania z Pythonem. Cz ± 1 - podstawy - rozwi zania zada« Michaª Alichniewicz. Gda«sk Studenckie Koªo Automatyków SKALP

rozdział 4: ZMIENNE I INSTRUKCJE

Kiedy i czy konieczne?

Programowanie, algorytmy i struktury danych

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

JAVAScript w dokumentach HTML - przypomnienie

Pętla for. Wynik działania programu:

Jerzy Nawrocki, Wprowadzenie do informatyki

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD

Warunki logiczne instrukcja if

1 Wprowadzenie do algorytmiki

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10]

Język ludzki kod maszynowy

Programowanie w Ruby

Wstęp do programowania

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

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

Transkrypt:

Języki i metody programowania Wykład 3 dr hab. Bożena Woźna-Szcześniak bwozna@gmail.com Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie hab. Andrzeja Zbrzezngo

Wartości boolowskie Wartość logiczna to w logice podstawowa cecha zdania określajaca jego stosunek do faktów. W logice klasycznej każde zdanie może przyjać tylko jedna z dwóch wartości logicznych: prawda oznaczajaca zgodność zdania ze zbiorem faktów fałsz oznaczajaca niezgodność zdania ze zbiorem faktów W języku Python stała wbudowana False reprezentuje wartość logiczna fałsz, natomiast stała wbudowana True reprezentuje wartość logiczna prawda. Obiekty False i True sa jedynymi wartościami typu bool.

Wartości boolowskie Typ bool jest podtypem typu int, a zatem wywołanie funkcji wbudowanej issubclass(bool, int) zwróci wartość True: >>> issubclass(bool, int) True >>> issubclass(int, int) True >>> issubclass(int, float) False W prawie wszystkich kontekstach wartości boolowskie False i True zachowuja się jak wartości 0 i 1, odpowiednio. Wyjatkiem jest to, że po przekonwertowaniu wartości boolowskiej na łańcuch, zwracany jest łańcuch 'False' lub 'True'.

Wartości boolowskie Każdy obiekt może być w razie potrzeby potraktowany jako wartość boolowska. Następujace obiekty sa traktowane jako wartość False: None False zero z każdego typu numerycznego, przykładowo: 0, 0.0, 0j dowolna pusta sekwencja, przykładowo: '', (), [] dowolne puste odwzorowanie, przykładowo: {}. instancje klas zdefiniowanych przez użytkownika, o ile w klasie zdefiniowana jest metoda bool () lub metoda len () oraz metody te zwracaja dla tych instancji liczbę całkowita zero lub wartość boolowska False. Wszystkie pozostałe wartości traktowane sa jak wartość boolowska True.

Wartości boolowskie Funkcja wbudowana bool zwraca dla każdego obiektu jego wartość logiczna określona zgodnie z powyższymi regułami. >> bool(none) False >> bool(6) True >> bool("") False >> bool("python. Programming is fun again!") True >> bool([]) False >> bool([10, 20, 30, 40]) True

Operatory boolowskie and, or, not Rezultaty działań z użyciem operatorów boolowskich opisane sa w poniższej tabeli, w kolejności rosnacych priorytetów: Operator Wynik Uwagi x or y jeżeli bool(x) == False, to y, (1) w przeciwnym razie x x and y jeżeli bool(x) == False, to x, (2) w przeciwnym razie y not x jeżeli bool(x) == False, to True, (3) w przeciwnym razie False Uwagi: 1 Argument y jest obliczany tylko wtedy, gdy bool(x) == False. 2 Argument y jest obliczany tylko wtedy, gdy bool(x) == True. 3 Operator not ma priorytet mniejszy niż nieboolowskie operatory.

Operatory boolowskie and, or, not >>> 5 or 8 5 >>> 5 and 8 8 >>> not 5 and 8 False >>> 8 and 5 < 8 True >>> 5 < 8 and 8 8 >>> not 5!= 8 False >>> (not 5)!= 8 True

Prosta instrukcja warunkowa Składnia prostej instrukcji warunkowej jest następujaca: if wyrażenie: blokinstrukcji Wykonanie prostej instrukcji warunkowej zaczyna się od obliczenia wartości boolowskiej wyrażenia wyrażenie. Jeżeli wartościa ta jest True, to wykonywany jest blokinstrukcji.

Schemat blokowy prostej instrukcji warunkowej False wyrażenie True blokinstrukcji

Przykład (Suma liczb dodatnich i suma liczb ujemnych) def main(): n = int(input("ilość liczb do wczytania: ")) suma_dod = suma_ujem = 0 for j in range(0, n): a = float(input("podaj kolejną liczbę: ")) if a > 0: suma_dod = suma_dod + a if a < 0: suma_ujem = suma_ujem + a print("suma liczb dodatnich =", suma_dod) print("suma liczb ujemnych =", suma_ujem) main()

Przykład (Ilość oraz suma liczb dodatnich i liczb ujemnych) def main(): n = int(input("ilość liczb do wczytania: ")) ile_dod = ile_ujem = 0; suma_dod = suma_ujem = 0.0 for j in range(0, n): a = float(input("podaj kolejną liczbę: ")) if a > 0: ile_dod = ile_dod + 1 suma_dod = suma_dod + a if a < 0: ile_ujem = ile_ujem + 1 suma_ujem = suma_ujem + a print("ilość dodatnich =", ile_dod, end = " ") print("suma dodatnich =", suma_dod) print("ilość ujemnych =", ile_dod, end = " ") print("suma ujemnych =", suma_ujem)

Instrukcja warunkowa Składnia instrukcji warunkowej jest następujaca: if wyrażenie: blokinstrukcji_t else: blokinstrukcji_f Wykonanie instrukcji warunkowej zaczyna się od obliczenia wartości boolowskiej wyrażenia wyrażenie. Jeżeli wartościa ta jest True, to wykonywany jest blokinstrukcji_t. W przeciwnym razie wykonywany jest blokinstrukcji_f.

Schemat blokowy instrukcji warunkowej True False wyrażenie blokinstrukcji T blokinstrukcji F

Przykład (Suma liczb dodatnich i suma liczb ujemnych) def main(): y = int(input("podaj rok: ")) print("rok", y, "ma", number_of_days(y), "dni.") def number_of_days(y): if y % 4 == 0 and y % 100!= 0 or y % 400 == 0: return 366 else: return 365 if name == " main ": main()

Pełna postać instrukcji warunkowej Składnia pełnej instrukcji warunkowej jest następujaca: if wyrażenie: blokinstrukcji_t elif wyrażenie_1 blokinstrukcji_1... elif wyrażenie_n blokinstrukcji_n else: blokinstrukcji_f

Schemat blokowy pełnej instrukcji warunkowej True wyrażenie False True wyrażenie 1 False blokinstrukcji 1 blokinstrukcji T blokinstrukcji F

Przykład (Pierwiastki rzeczywiste równania kwadratowego) import math def wypisz_pierwiastki(a, b, c): delta = b * b - 4 * a * c if delta > 0: print("równanie ma dwa pierwiastki") print("x1 =", (-b - math.sqrt(delta)) / (2 * a)) print("x2 =", (-b + math.sqrt(delta)) / (2 * a)) elif delta == 0: print("równanie ma podwójny pierwiastek") print("x1 = x2 = ", -b / (2 * a)) else: print("równanie nie ma pierwiastków")

Instrukcja iteracyjna while (dopóki) Ogólna postać instrukcji iteracyjnej while jest następujaca: while wyrażenie: blokinstrukcji else: blokintrukcjielse przy czym fragment else: blokintrukcjielse może nie wystapić. Instrukcja iteracyjna while jest używana do wykonywania bloku instrukcji tak długo, jak długo wartościa logiczna wyrażenia wyrażenie jest True.

Semantyka instrukcji iteracyjnej while Każdorazowo wartościowane jest wyrażenie występujace po słowie kluczowym while; jeśli jest ono prawdziwe, wykonywany jest blokinstrukcji. Jeśli za którymś razem (być może już za pierwszym) wartościa wyrażenia będzie False, następuje przerwanie wykonywania instrukcji iteracyjnej. Jeśli w instrukcji występuje klauzula else, to wykonywany jest zwiazany z nia ciag instrukcji.

Schemat blokowy instrukcji iteracyjnej while bez klauzuli else False warunek True blokinstrukcji

Przykład (Suma liczb od 1 do n) """Oblicza sumę liczb naturalnych od 1 do n""" #!/usr/bin/env python3 def main(): n = int(input("podaj liczbę naturalną: ")) s = 0 j = 1 while j <= n: s = s + j j = j + 1 print("suma liczb od 1 do", n, "wynosi", s) main()

Przykład (Ciag Collatza) def main(): n = int(input("podaj liczbę naturalną: ")) ciag3nplus1(n) def ciag3nplus1(n): while n > 1: print(n, end = ", ") if n % 2 == 0: n = n // 2 else: n = 3 * n + 1 print(n, end = ".\n") if name == " main ": main()

Przykład (Ilość cyfr w liczbie naturalnej) def main(): n = int(input("podaj liczbę naturalną dodatnią: ")) if n > 0: print("ilość cyfr liczby", n, ":", ile_cyfr(n)) else: print("skup się! Powiedziałem \"Dodatnią\"!") def ile_cyfr(n): ile = 0 while n > 0: ile += 1; n //= 10 return ile if name == " main ": main()