Podstawy programowania. Wykład: 5. Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podobne dokumenty
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

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

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. Wykład: 8. Wskaźniki. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 7. Funkcje Przekazywanie argumentów do funkcji. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 6. Tablice statyczne. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Wykład 5: Klasy cz. 3

Wykład 1: Wskaźniki i zmienne dynamiczne

Podstawy programowania. Wykład: 11. Trochę różnych przykładów. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 12. Struktury, unie, pola bitowe. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Wykład 8: klasy cz. 4

Wykład II Tablice (wstęp) Przykłady algorytmów Wstęp do języka C/C++

Wykład 9: Metody wirtualne i polimorfizm

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 13. Rekurencja. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Wykład 9: Polimorfizm i klasy wirtualne

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta Strona 1 z 26. Powrót. Full Screen. Zamknij.

Programowanie strukturalne i obiektowe

Języki C i C++ Wykład: 1. Wstęp Budowa programu Operacje we/wy Instrukcje wyboru. dr Artur Bartoszewski - Języki C i C++, sem.

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

Programowanie strukturalne i obiektowe : podręcznik do nauki zawodu technik informatyk / Adam Majczak. Gliwice, cop

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

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

Podstawy programowaniu. Wykład: 3. Budowa programu Operacje we/wy Instrukcje wyboru. dr Artur Bartoszewski - Podstawy programowania, sem.

Zadanie 04 Ktory z ponizszych typow danych w jezyku ANSI C jest typem zmiennoprzecinkowym pojedynczej precyzji?

1 Podstawy c++ w pigułce.

Język C++ zajęcia nr 2

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

Podstawy Programowania

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

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

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

Języki programowania - podstawy

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 6. Karol Tarnowski A-1 p.

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6

Podstawy Informatyki. Kompilacja. Historia. Metalurgia, I rok. Kompilatory C++ Pierwszy program. Dyrektywy preprocesora. Darmowe:

Podstawy Informatyki. Metalurgia, I rok. Wykład 6 Krótki kurs C++

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

Programowanie Obiektowe i C++

1 Podstawy c++ w pigułce.

Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1

wykład III uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - zarządzanie pamięcią, struktury,

Zajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Języki i metodyka programowania. Wprowadzenie do języka C

Wykład I. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

/* dołączenie pliku nagłówkowego zawierającego deklaracje symboli dla wykorzystywanego mikrokontrolera */ #include <aduc834.h>

Zmienne, stałe i operatory

Programowanie strukturalne język C - wprowadzenie

Podstawy programowania (1)

Funkcje. Spotkanie 5. Tworzenie i używanie funkcji. Przekazywanie argumentów do funkcji. Domyślne wartości argumentów

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

wykład I uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Wstęp do języka C wykład I dr Jarosław Mederski Spis Ogólne informacje

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

Instrukcja wyboru, pętle. 2 wykład. Podstawy programowania - Paskal

Przekazywanie argumentów wskaźniki

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

Tablice (jedno i wielowymiarowe), łańcuchy znaków

ROZDZIAŁ 2. Operatory

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

1. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, WNT, Warszawa 1998.

Pętla for. Wynik działania programu:

Wprowadzenie do programowania w języku C

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6

Podstawy algorytmiki i programowania - wykład 4 C-struktury

Spis treści JĘZYK C - TABLICE JEDNOWYMIAROWE. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF05Z

Liczby pseudolosowe. #include <stdio.h> #include <stdlib.h> int main() { printf("%d\n", RAND_MAX); return 0; }

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 4. Karol Tarnowski A-1 p.

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 5

Wstęp do informatyki- wykład 7

2 Przygotował: mgr inż. Maciej Lasota

Typy złożone. Struktury, pola bitowe i unie. Programowanie Proceduralne 1

Podstawy programowania - 1

Symfonia C++ standard : programowanie w języku C++ orientowane obiektowo. T. 1 / Jerzy Grębosz. Wyd. 3 C - popr. Kraków, 2015.

ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2015

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

Wstęp do programowania

Wykład 2 Składnia języka C# (cz. 1)

Język C - podstawowe informacje

Spis treści JĘZYK C - INSTRUKCJA SWITCH, OPERATORY BITOWE. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF05

Spis treści JĘZYK C - TABLICE DWUWYMIAROWE, OPERACJE NA TABLICACH. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu

Wykład 1

Programowanie w C++ Wykład 14. Katarzyna Grzelak. 3 czerwca K.Grzelak (Wykład 14) Programowanie w C++ 1 / 27

Informatyka 1. Plan dzisiejszych zajęć. zajęcia nr 1. Elektrotechnika, semestr II rok akademicki 2008/2009

3 Przygotował: mgr inż. Maciej Lasota

( wykł. dr Marek Piasecki )

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Instrukcje sterujące

Programowanie - wykład 4

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

Wstęp do programowania

Wskaznik. Przekazywanie wyniku funkcji przez return. Typy i zmienne wskaznikowe. Zmienna wskazywana. typ * nazwa_wkaznika

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty)

wykład IV uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C, a C++. wykład IV dr Jarosław Mederski Spis Język C++ - wstęp

Spis treści JĘZYK C - TABLICE DWUWYMIAROWE, OPERACJE NA TABLICACH. Metodyki i techniki programowania

Wykład nr 3. Temat: Wskaźniki i referencje. Edward Morgan Forster

Transkrypt:

programowania Wykład: 5 Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

programowania w C++ Instrukcje sterujące 2 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Pętla while while (wyrazenie) instrukcja;... while (wyrazenie) { } instrukcja_1; instrukcja_2; // pętla wyświetlająca liczby 1, 2, 3... int i = 1; while( i <=10 ) cout << i++ <<, ; 3 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Pętla while Przykład: pętla wyświetlająca liczby 1, 2, 3... int i = 1; while( i <=10 ) cout << i++ <<, ; 4 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Pętla while Program sumuje podane liczby, aż do chwili, gdy podamy liczbę 0. 5 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Pętla do-while do instrukcja; while ( wyrażenie ); do { instrukcja_1; instrukcja_2; } while ( wyrażenie ); 6 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Pętla do-while Przykład: pętla wyświetlająca liczby 1, 2, 3... int i = 1; do { cout << i <<, ; i = i + 1; } while( i<=10); 7 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Pętla do-while Program sumuje podane liczby, aż do chwili, gdy podamy liczbę 0. 8 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Pętla do-while Przykład: program zlicza naciśnięte klawisze (aż do chwili gdy naciśniemy klawisz ESC 9 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Instrukcje break i continue break - kończy wykonywanie najbliższej otaczającej pętli lub instrukcji warunkowej, w której występuje. Jeśli po końcu przerwanej instrukcji występuje kolejna, sterowanie przechodzi do niej. Przykład: Pętla kończy się po wypisaniu i = 4 Wyjście z pętli 10 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Instrukcje break i continue Instrukcja break jest używana z instrukcją warunkową switch, a także z instrukcjami pętli do, for i while. W instrukcji switch, instrukcja break powoduje, że program wykonuje kolejną instrukcję, która występuje po instrukcji switch. Bez instrukcji break, wykonywane są wszystkie instrukcje od dopasowanej etykiety case do końca instrukcji switch, łącznie z klauzulą default. W pętlach, instrukcja break kończy wykonywanie najbliższej otaczającej instrukcji do, for lub while. Sterowanie przechodzi do instrukcji następującej po zakończonej, jeśli taka istnieje. 11 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Instrukcja break i co continue - wymusza przekazanie kontroli do wyrażenia kontrolującego najmniejszej pętli do, for, lub while. Przykład: Pętla wypisze liczby od 1 do 10 pomijając liczbę 5 Powrót na górę pętli (z pomięciem instrukcji poniżej continue) 12 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Pętla while Przykład: Algorytm Euklidesa 13 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Instrukcje break i continue Przykład: Algorytm Euklidesa wersja 2 Pętla nieskończona Wyjście z pętli 14 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Instrukcja return return - kończy wykonywanie funkcji i zwraca sterowanie do funkcji wywołującej (lub do systemu operacyjnego, jeśli kontrola zostanie przeniesiona z funkcji main). Wykonanie wznawia działanie w funkcji wywołującej w punkcie bezpośrednio po wywołaniu. 15 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

programowania w C++ Typy c.d. 16

Typy zmiennych Systematyka typów w języku C++ Typy zmiennych dzielą się na: typy fundamentalne typy pochodne (zmodyfikowane typy fundamentalne) Oraz: typy wbudowane typy zdefiniowanie przez użytkownika Typy fundamentalne omówione zostały w poprzednim wykładzie 17

Typy pochodne Typy pochodne to modyfikacje typów podstawowych (ich rozwinięcia lub dopełnienia).r [ ] tablica obiektów danego typu * - wskaźnik do typu ( ) - funkcja zwracająca wartość danego typu & - referencja obiektu 18

Typ void Typ void - typ nieokreślony. void *p -> p jest wskaźnikiem, ale jeszcze nie wiemy na jaki obiekt void jakas_funkcja( ) -> funkcja nie zwraca wartości 19

Zakresy widoczności zmiennych Zakres ważności nazwy zmiennej obszar w programie, w którym jest ona rozpoznawana przez kompilator (niedokładnie to samo, co czas życia zmiennej) Wyróżniamy zakresy: Lokalny - gdy świadomie ograniczamy go do jakiegoś bloku. Blok funkcji wewnątrz całej funkcji 20

Zakresy widoczności zmiennych Obszar pliku (globalnie) - zmienną taką definiujemy poza obszarem funkcji i jest widziana przez wszystkie funkcje programu (w obrębie pliku) Obszar klasy // jeszcze do tego wrócimy 21

Modyfikatory zmiennych register - informujemy kompilator, że zmienna będzie często wykorzystywana. Kompilator może (nie musi) przyspieszyć program przechowując zmienną w rejestrze zamiast w pamięci operacyjnej. Do zmiennej typu register nie można odwołać się poprzez adres (wskaźnik). register int i; voletile zmienna ulotna. Może być zmieniona w sposób ukryty przed kompilatorem. Np. odczytujemy wartość z układu we/wy. voletile int stan_ukladu; 22

Stałe Stałe dosłowne: Sam zapis liczb, a nie obiekt, któremu nadajemy jakąś wartość. X = 10; cout << 3.14; cout << Ala ma kota ; 23

Stałe Stałe dosłowne liczbowe można zapisać nie tylko w systemie dziesiętnym. Rozpoczynając zapis od zera informujemy kompilator, że używamy systemu ósemkowego. 011 -> to liczba 9 Prefiks 0x oznacza system szesnastkowy 0x10 -> 16 24

Stałe Stałe dosłowne zmiennoprzecinkowe 10.0 15.5-10. 8E3 -> 8*10 3 = 8000 5.2E-3 -> 5.2*10-3 = 0,0052 25

Stałe Stałe znakowe i łańcuchowe 26

Stałe Stałe dosłowne przechowywane są jako typy zmiennych kompilator dobiera jakie. Można wymuszać zmianę typu np.: 10 -> zapisana jako int 10L -> zapisana jako long int 10uL -> unsignet long int 27

Stałe Modyfikator const float pi = 3.14; - zmienna ( może być zainicjalizowana) const float pi = 3.14; - stała (musi być zainicjalizowana) W klasycznym C używana była dyrektywa preprocesora #define. Powodowała ona wstawienie liczby w miejsce każdego wystąpienia stałej. #define pi 3.14; 28

Typy zmiennych Instrukcja typedef - pozwala na nadanie dodatkowej nazwy już istniejącemu typowi. Np.: Albo: typedef unsigned int wiek; wiek Ania, Tomek; // to samo co: unsigned int Ania, Tomek; typedef int * wsk_na_int; Instrukcja typedef nie wprowadza nowego typu, a jedynie synonim do typu już istniejącego 29

Typy wyliczeniowe enum Jest to osobny typ dla liczb całkowitych, a właściwie lista wartości stałych całkowitych Const Int. Deklaracja typu wyliczeniowego składa się ze słowa kluczowego enum następnie nazwy (opcjonalnie), po której znajduje się w nawiasach klamrowych lista elementów oddzielonych przecinkami. Pierwszy element na liście ma domyślnie wartość 0, następny - wartość 1, 2, 3 itd.. 30

Typy wyliczeniowe enum Można zdefiniować wartość początkową lub też wszystkie wartości stałych. 31

Liczby losowe Funkcja: int rand(); // #include <cstdlib> zwraca pseudolosową liczbę całkowitą, która zawiera się w zakresie od 0 do stałej RAND_MAX. 32

Liczby losowe Funkcja srand( ) ustawia punkt startowy generowania serii pseudolosowych liczb całkowitych. W celu reinicjalizowania generatora, ustaw wartość 1 dla argumentu seed. Każda inna wartość przekazana jako seed ustawia losowy punkt startowy generatora. Funkcja pobiera pseudolosowe wartości, które są generowane. 33

Losowanie liczb z określonego zakresu int losowa_liczba = ( rand() % ile_liczb_w_przedziale ) + startowa_liczba; Losowanie 100 liczb z zakresu <-10; 10> 34

Literatura: W prezentacji wykorzystano przykłady i fragmenty: Grębosz J. : Symfonia C++, Programowanie w języku C++ orientowane obiektowo, Wydawnictwo Edition 2000. Jakubczyk K.: Turbo Pascal i Borland C++ Przykłady, Helion. Warto zajrzeć także do: Sokół R. : Microsoft Visual Studio 2012 Programowanie w Ci C++, Helion. Kerninghan B. W., Ritchie D. M.: język ANSI C, Wydawnictwo Naukowo Techniczne. Dla bardziej zaawansowanych: Grębosz J. : Pasja C++, Wydawnictwo Edition 2000. Meyers S.: język C++ bardziej efektywnie, Wydawnictwo Naukowo Techniczne 35 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD