Podstawy Programowania 1 Wstęp. Plan. Informacje organizacyjne. Bibliografia Literatura Podstawowa. Notatki. Notatki. Notatki.

Podobne dokumenty
. Podstawy Programowania 1. Wstęp. Arkadiusz Chrobot. 15 października 2015

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

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Wstęp do programowania

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

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

Algorytm. a programowanie -

Techniki multimedialne

Typy danych. Przemysław Gawroński D-10, p lutego Wykład 1. (Wykład 1) Typy danych 25 lutego / 11

1 Podstawy c++ w pigułce.

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

Język C część 1. Sformułuj problem Zanalizuj go znajdź metodę rozwiązania (pomocny może byd algorytm) Napisz program Uruchom i przetestuj czy działa

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

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

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

Podstawy programowania w języku C

INFORMATYKA. Zajęcia organizacyjne. Arytmetyka komputerowa.

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

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

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).

Język ludzki kod maszynowy

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

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Podstawy programowania w C++

Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Wstęp do programowania. Wykład 1

L6.1 Systemy liczenia stosowane w informatyce

1 Podstawy c++ w pigułce.

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

Podstawy i języki programowania

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

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

Programowanie komputerów

Języki programowania zasady ich tworzenia

Powtórka algorytmów. Wprowadzenie do języka Java.

KARTA KURSU. Wstęp do programowania

Programowanie I. O czym będziemy mówili. Plan wykładu nieco dokładniej. Plan wykładu z lotu ptaka. Podstawy programowania w językach. Uwaga!

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java

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

Typ użyty w deklaracji zmiennej decyduje o rodzaju informacji, a nazwa zmiennej symbolicznie opisuje wartość.

Wstęp do informatyki- wykład 2

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Definicje. Algorytm to:

Laboratorium 1: Podstawy języka c. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

Proste algorytmy w języku C

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Kodowanie informacji. Przygotował: Ryszard Kijanka

2 Przygotował: mgr inż. Maciej Lasota

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI

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

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy

Technologie informacyjne - wykład 12 -

Wprowadzenie. Organizacja pracy i środowisko programistyczne. Mirosław Ochodek

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

Kod U2 Opracował: Andrzej Nowak

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

Zmienne, stałe i operatory

Proces tworzenia programu:

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:

( wykł. dr Marek Piasecki )

Pracownia Komputerowa wykład VI

Wykład 1

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

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

Podstawy Programowania Algorytmy i programowanie

Podstawy programowania. Wykład 6 Wskaźniki. Krzysztof Banaś Podstawy programowania 1

Cwiczenie nr 1 Pierwszy program w języku C na mikrokontroler AVR

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

Metodyki i techniki programowania

Programowanie Niskopoziomowe

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

Programowanie w języku Python. Grażyna Koba

Programowanie strukturalne i obiektowe

Wprowadzenie do języka Java

Podstawowe typy zmiennych

Praktyka Programowania

Podstawy Informatyki. Metalurgia, I rok. Wykład 3 Liczby w komputerze

Podstawy programowania. Wykład 2 Zmienne i obsługa wejścia/wyjścia. Krzysztof Banaś Podstawy programowania 1

Programowanie strukturalne język C - wprowadzenie

PRZEWODNIK PO PRZEDMIOCIE

Pracownia Komputerowa wykład IV

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 5 Liczby w komputerze

Algorytmy i struktury danych. wykład 1

Matematyczne Podstawy Informatyki

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 10 Kurs C++

Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólnoakademicki / praktyczny)

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p.

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

Podstawy Programowania.

Podstawy programowania C. dr. Krystyna Łapin

Metody Kompilacji Wykład 1 Wstęp

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

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

Metodyki i techniki programowania

Pracownia Komputerowa wykład V

Wstęp do Informatyki

Programowanie w języku C++ Grażyna Koba

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

wagi cyfry pozycje

Transkrypt:

Podstawy Programowania 1 Wstęp Arkadiusz Chrobot Zakład Informatyki 12 października 2016 1 / 41 Plan Informacje organizacyjne Bibliografia Wprowadzenie Algorytm System komputerowy Języki programowania Język C Podstawy Komentarze Stałe Zmienne i typy zmiennych 2 / 41 Informacje organizacyjne Wykładowca: dr inż Arkadiusz Chrobot Numer pokoju: 323, budynek D Termin konsultacji: wtorki, w godzinach 9:50-11:20 Numer telefonu: 41 34-24-185 Adres e-mail: achrobot@tukielcepl Adres strony www: http://achillestukielcepl/members/achrobot 3 / 41 Bibliografia Literatura Podstawowa 1 Brian W Kernighan, Dennis M Ritchie, Język ANSI C Programowanie, Wydanie 2, Wydawnictwo Helion, Gliwice 2010 2 Piotr Wróblewski, Algorytmy, struktury danych i techniki programowania, Helion, Gliwice 1997 3 Jon Bentley, Perełki Oprogramowania, WNT, Warszawa 1992 4 Alfred V Aho, John E Hopcroft, Jeffrey D Ullman Algorytmy i struktury danych, Helion, Gliwice 2003 4 / 41

Bibliografia Literatura uzupełniająca 1 Thomas H Cormen, Charles E Leiserson, Ronald L Rivest, Wprowadzenie do algorytmów, WNT, Warszawa 1998 2 Donald E Knuth, Sztuka programowania, WNT, Warszawa 2002 3 Steven S Skiena, The Algorithm Design Manual, Springer-Verlang, London 2010 (w języku angielskim) 5 / 41 Bibliografia Zasoby internetowe 1 Wikibooks: Język C 2 The GNU C programming tutorial 3 Learning GNU C 4 The GNU C Library 6 / 41 Programowanie Definicja programowania Programowanie jest to zespół czynności, którego celem jest przygotowanie programu dla systemu komputerowego W skład tych czynności wchodzą: opracowanie modelu problemu, który chcemy rozwiązać za pomocą systemu komputerowego, opracowanie algorytmu (lub algorytmów) rozwiązania, zapisanie tego algorytmu za pomocą wybranego języka programowania oraz usunięcie błędów składniowych i logicznych 7 / 41 Program komputerowy Definicja programu komputerowego Program komputerowy jest to zapis w określonym języku programowania algorytmu lub algorytmów rozwiązywania pewnych problemów 8 / 41

Algorytm Definicja algorytmu Algorytm jest to skończony zbiór precyzyjnie zdefiniowanych czynności koniecznych do wykonania określonego zadania 9 / 41 Własności algorytmu Skończoność: wykonanie algorytmu zawsze musi się zatrzymać po skończonej liczbie kroków Procedura, która ma wszystkie cechy algorytmu, poza skończonością nazywana jest procedurą obliczeniową Dobre zdefiniowanie: każdy krok algorytmu musi być precyzyjnie opisany, dla każdego przypadku akcje muszą być opisane ściśle i jednoznacznie Dane wejściowe: algorytm ma zero lub więcej danych wejściowych Dane wyjściowe: algorytm generuje jedną lub więcej danych wyjściowych, czyli wartości w określony sposób powiązanych z danymi wejściowymi Efektywność: z praktycznego punktu widzenia, algorytm nie tylko powinien dać się wykonać w skończonym czasie, ale również ten czas powinien być możliwie krótki 10 / 41 Zapis algorytmu Algorytmy mogą być zapisane w formie, która jest bardziej zrozumiała dla człowieka, lub w formie bardziej zrozumiałej dla komputera Granice między tymi dwoma kategoriami nie są ostre 11 / 41 Zapis algorytmu Opis problemu Algorytm Eukildesa wyznaczania największego wspólnego dzielnika dodatnich liczb całkowitych (NWD) Problem Dane są dwie liczby całkowite M i N, należy znaleźć ich największy wspólny dzielnik, tj największą dodatnią liczbę całkowitą, która dzieli całkowicie zarówno M, jak i N 12 / 41

Zapis algorytmu Pseudokod E1[Znajdowanie reszty] Podziel M przez N i niech R oznacza resztę z tego dzielenia (Mamy 0 R < N) E2[Czy wyszło zero?] Jeśli R = 0, to zakończ algorytm, odpowiedzią jest N E3[Upraszczanie] Wykonaj N M, R N i wróć do kroku E1 13 / 41 Zapis algorytmu Schemat blokowy start Wczytaj M i N M N N R R M mod N nie R = 0? tak Wypisz N koniec 14 / 41 System komputerowy Definicja systemu komputerowego System komputerowy to urządzenie lub zespół współpracujących urządzeń, które mogą zrealizować określony, przygotowany dla nich program 15 / 41 Rodzaje systemów komputerowych (a) Klaster (b) Komputer osobisty (c) Urządzenia mobilne (d) Mikrokontroler i jeszcze kilka innych kategorii 16 / 41

Rodzaje systemów komputerowych - elementy wspólne Każdy system komputerowy zawiera co najmniej dwa elementy: 1 procesor, 2 pamięć Każdy komputer rozumie zapis dwójkowy (binarny) 17 / 41 Zapis algorytmu - program dla komputera Pierwotnie programy były zapisywane w kodzie maszynowym, czyli ciągu liczb binarnych (lub pokrewnych) Następnie pojawiły się assemblery, czyli języki, w których pojedyncze instrukcje maszynowe oznaczono łatwymi do zapamiętania ciągami znaków Następnie pojawiły się języki wysokiego poziomu, w których zapis programu jest zbliżony do zapisu w języku naturalnym (najczęściej angielskim), a jedna instrukcja może odpowiadać kilku instrukcjom maszynowym Tak zapisane programy są tłumaczone na język maszynowy za pomocą programów nazywanych translatorami, które dzielą się na kompilatory i interpretery Czynność zapisywania algorytmu w postaci programu komputerowego lub zapisany algorytm nazywamy implementacją Program zapisany w assemblerze lub języku wysokiego poziomu nazywamy kodem źródłowym Powstały na jego podstawie program wykonywalny nazywamy kodem wynikowym 18 / 41 Abstrakcja Rozwój języków programowania jest przykładem zastosowania abstrakcji - metody upraszania problemu polegającej na uwypukleniu jego najważniejszych cech, a ukryciu tych, które nie są istotne dla jego rozwiązania Programowanie sprowadza się do sprawnego posługiwania się abstrakcją 19 / 41 Język C Kilka cech opracowany w latach 70 ubiegłego wieku, język wysokopoziomowy, ale zawierający dużo niskopoziomowych elementów, język imperatywny, wspierający strukturalny model programowania, ma prostą składnię, która została zapożyczona przez wiele innych języków programowania (Java, C++, C#, itd), jeden z najpopularniejszych języków programowania według rankingu TIOBE (obecnie nr 2, do niedawna nr 1), jest kompilowany, istnieje wiele kompilatorów dostępnych dla różnych systemów komputerowych, język jest ustandaryzowany (najnowsza wersja standardu to ISO C11, na wykładzie będziemy używać ISO C99) 20 / 41

Najprostszy program Listing 1: Najprostszy program w C 1 int main(void) 2 { 3 return 0; 4 } 21 / 41 Program Hello World! Listing 2: Program Hello World! w C 1 #include<stdioh> 2 3 int main(void) 4 { 5 puts("hello World!"); 6 return 0; 7 } 22 / 41 Komentarze Komentarze w kodzie źródłowym służą do umieszczania przez programistę notatek odnoszących się do konkretnych fragmentów programu Komentarze są ignorowane przez kompilator Czasem wykorzystuje się tę własność komentarzy, aby chwilowo wyłączyć fragmenty kodu, które nie działają Język C udostępnia trzy sposoby wprowadzania komentarzy do kodu źródłowego Pierwszy polega na umieszczeniu komentarza między następującymi parami znaków: /* i */ Taki komentarz może obejmować wiele wierszy kodu Drugi sposób polega na umieszczeniu pary znaków // na początku komentarza Ten komentarz kończy się wraz z końcem wiersza, w którym został umieszczony Trzecie rozwiązanie polega na umieszczeniu treści komentarza między dwoma wierszami zawierającymi następujące pary instrukcji preprocesora: #if 0 i #endif 23 / 41 Komentarze Przykłady Listing 3: Komentarze w C 1 /* To jest komentarz pierwszego rodzaju Nie można w nim umieszczać 2 innych komentarzy tego samego typu */ 3 4 /* 5 * To też jest komentarz pierwszego rodzaju, ale czytelniej 6 * zapisany 7 */ 8 9 // To jest komentarz drugiego rodzaju 10 // Taki komentarz może być umieszczony w komentarzach innego 11 // typu 12 13 #if 0 14 Tak wygląda trzeci rodzaj komentarzy w języku C 15 Jak widać, taki komentarz może obejmować wiele wierszy kodu 16 /* A nawet można w nim zagnieżdżać komentarze pierwszego 17 rodzaju */ 18 #endif 24 / 41

Wady i zalety komentarzy + ułatwiają zrozumienie kodu, - mogą być oznaką tego, że dany fragment kodu, którego dotyczą nie jest dostatecznie dobrze zapisany, - zmiany w kodzie źródłowym, których dotyczy komentarz powodują, że komentarz staje się przestarzały, + pozwalają tymczasowo wyłączyć fragmenty kodu, które mogą być niepoprawnie napisane 25 / 41 Stałe Stałe podobnie jak w matematyce, czy fizyce są nazwami nadawanymi pewnym konkretnym, niezmiennym wartościom W przypadku języka C stałe mogą być definiowane na kilka różnych sposobów Pierwszym jaki poznamy jest wykorzystanie tak zwanych makr preprocesora Wzorzec #define NAZWA WARTOŚĆ Przykład #define GRAVITY 981 Nazwy stałych najczęściej w całości pisane są wielkimi literami Wszędzie tam, gdzie kompilator (preprocesor) znajdzie w kodzie źródłowym identyfikator gravity zastąpi go wartością 981 26 / 41 Zmienne Zmienna, to miejsce, w którym program komputerowy przechowuje dane, które przetwarza Zmienna z punktu widzenia komputera jest wydzielonym fragmentem pamięci operacyjnej komputera Posiada ona dwie cechy (atrybuty): zasięg i typ Zasięg określa, które fragmenty kodu mogą korzystać ze zmiennej i jest on zależny od miejsca, gdzie zmienna została zadeklarowana Najpierw zapoznamy się ze zmiennymi globalnymi, które są dostępne w każdym miejscu programu Typ definiuje rozmiar zmiennej (ile pamięci zajmuje dana zmienna) i jakiego rodzaju informacje ona zawiera 27 / 41 Wzorzec deklaracji zmiennej Zanim będzie można użyć zmiennej w programie musi ona być najpierw zadeklarowana typ_zmiennej nazwa_zmiennej; Przykład Listing 4: Przykład deklaracji zmiennej 1 #include<stdioh> 2 3 unsigned int number_of_students; 4 5 int main(void) 6 { 7 return 0; 8 } 28 / 41

Nazwa zmiennej Reguły Nazwa zmiennej jest identyfikatorem, który pozwala ją jednoznacznie określić w programie Podobnie jak wszystkie identyfikatory w programie są one tworzone zgodnie z następującymi regułami: nazwy zmiennych nie mogą się powtarzać (są pewne wyjątki od tej reguły), nazwa nie może się zaczynać cyfrą, w nazwie nie mogą występować znaki specjalne (niebędące cyframi lub literami), poza podkreśleniem (_), język C rozróżnia wielkość liter (ang case sensitive), nazwy zmiennych nie mogą zawierać polskich znaków, nazwa nie może być słowem kluczowym języka (elementem składni języka, takim jak np nazwa typu) 29 / 41 Nazwa zmiennej Porady Reguły podane na poprzednim slajdzie są przestrzegane przez kompilator Wypisane poniżej porady nie dotyczą wymagań kompilatora, ale wprowadzają pewną konwencję, która zwiększa czytelność programu Należy o nią dbać, bo kody źródłowe programów są znacznie częściej czytane niż pisane Nazwy zmiennych powinny być czytelne Nazwy zmiennych powinny zawierać rzeczownik Jeśli zmienne składają się z kilku wyrazów, to powinny być one połączone znakiem podkreślenia i każdy z nich powinien się zaczynać małą literą Nazwy jednoliterowe należy używać tylko w przypadku niektórych konstrukcji, które będą omawiane na kolejnych wykładach, lub kiedy są one jednoznaczne, np używane w dobrze znanym wzorze matematycznym 30 / 41 Typy zmiennych Najczęściej używane typy Nazwa Rozmiar (w bajtach) Wartości int 4 liczby całkowite short int lub short 2 liczby całkowite long int lub long 8 liczby całkowite long long int lub long long 8 liczby całkowite char 1 znaki lub liczby całkowite float 4 liczby zmiennoprzecinkowe double 8 liczby zmiennoprzecinkowe long double 12 liczby zmiennoprzecinkowe Jeden bajt to 8 bitów Bit to najmniejsza porcja informacji, jaką może przetwarzać komputer (0 lub 1) Podane w tabeli rozmiary dotyczą 64- -bitowego komputera klasy PC Standard języka nie definiuje wprost rozmiarów zmiennych, a jedynie zależności między nimi 31 / 41 System dwójkowy i pokrewne (podstawy) System dziesiętny 128 (dec) = 1 10 2 + 2 10 1 + 8 10 0 System dwójkowy 1001 (nkb) = 1 2 3 + 0 2 2 + 0 2 1 + 1 2 0 = 9 (dec) System dwójkowy uzupełnienie do 2 ( 5) (dec) 0101 (nkb) 1010 (u1) + 1 1011 (u2) 32 / 41

Typy danych Zakresy typów całkowitych dla komputerów 64-bitowych Nazwa Wartość minimalna Wartość maksymalna int -2 147 483 648 2 147 483 647 short int lub short -32 768 32 767 long int lub long 9 223 372 036 854 775 808 9 223 372 036 854 775 807 long long int lub long long 9 223 372 036 854 775 808 9 223 372 036 854 775 807 char -128 127 33 / 41 Typy danych Znaki Pojedyncze znaki, tj litery lub cyfry i znaki niealfanumeryczne są przechowywane w zmiennej typu char Każda wartość w tej zmiennej jest traktowana jako kod znaku nazywany kodem ascii (American Standard Code for Information Interchange) 34 / 41 Typy danych Specyfikatory Specyfikatory są słowami kluczowymi języka C, które pozwalają zmodyfikować znaczenie niektórych typów zmiennych Specyfikator unsigned stosowany jest razem z typami int i char i powoduje, że zmienna tego typu przechowuje tylko liczby naturalne Innymi słowy: zamienia typ całkowity na naturalny Specyfikator signed jest uzupełnieniem dla unsigned i powoduje, że zmienna przechowuje wartości całkowite Najczęściej jest on pomijany w deklaracji zmiennej Specyfikator long powoduje zwiększenie pojemności typów int i double Specyfikator short powoduje zmniejszenie pojemności typu int 35 / 41 Typy danych Zakresy typów naturalnych dla komputerów 64-bitowych Nazwa Wartość minimalna Wartość maksymalna unsigned int lub unsinged 0 4 294 967 295 unsigned short int lub unsigned short 0 65 535 unsigned long int lub unsinged long 0 18 446 744 073 709 551 615 unsinged long long int lub unsigned long long 0 18 446 744 073 709 551 615 unsigned char 0 255 W pliku nagłówkowym limitsh zdefiniowano odpowiednie stałe dla każdej granicznej wartości typów zarówno całkowitych, jak i naturalnych 36 / 41

Typy danych Typ void Słowo kluczowe void używane jest jako określenie typu zmiennej, ale nie jest typem danych Nie można zadeklarować zmiennej tego typu Jest on jednak przydatny w innych sytuacjach, które będą omawiane na przyszłych wykładach 37 / 41 Typy danych Typy zmiennoprzecinkowe W pamięci komputera nie można odwzorować dokładnie liczby rzeczywistych Dlatego stworzono ich analog w postaci liczb zmiennoprzecinkowych Podstawą dla tego zapisu jest notacja wykładnicza, gdzie podstawa potęgi jest zawsze równa dwa W pamięci komputera te liczby są przechowywane następująco: pierwszy bit oznacza znak liczby, następna część część ułamkową, a ostatnia wykładnik Część ułamkowa jest zapisana w postaci binarnej, gdzie każda kolejna pozycja, począwszy od lewej stron ma ujemny wykładnik wagi Wyjątkiem jest pierwsza pozycja, która ma wykładnik równy zero W przypadku języka C, te liczby przechowywane są w zmiennych typu float, double i long double Różnica między nimi polega nie tylko na tym ile miejsca w pamięci zajmują w całości, ale też na tym ile z niego przeznaczają na zapamiętanie części ułamkowej i wykładnika 38 / 41 Typy danych Typ logiczny W języku C przyjmuje się, że wszystko co ma wartość różną od zera jest prawdą, a to, co ma wartość zero jest fałszem We wcześniejszych standardach tego języka nie przewidziano miejsca dla typu logicznego Dopiero standard ISO C99 wprowadził typ bool i stałe true i false, ale nie jako integralną część języka, tylko jako zewnętrzny dodatek dostępny po dodaniu instrukcji #include<stdboolh> na początku programu 39 / 41 Pytania? 40 / 41

koniec Dziękuję Państwu za uwagę! 41 / 41