Język C i C++. Warunki, instrukcje wyboru
|
|
- Adrian Lewicki
- 6 lat temu
- Przeglądów:
Transkrypt
1 Język C i C++. Warunki, instrukcje wyboru Język C nie narzuca stosowania specjalnego typu danych do warunków logicznych. Warunkiem w C może być dowolna liczba całkowita lub wskaźnik, przy czym wartość 0 (NULL) oznacza fałsz, a wartość różna od zera prawdę. Z prostych warunków logicznych można składać bardziej złożone zdania logiczne, używając operatorów logicznych. && AND Iloczyn logiczny. Przykład: if (a==0 && b==7) printf("komunikat"); OR Suma logiczna. Przykład: if (a==999 f() ) printf("komunikat");! NOT Negacja, czyli zaprzeczenie warunku logicznego. Np. if(!a ) printf("komunikat"); Negacja prawdy daje w wyniku 0 (fałsz), negacja fałszu daje w wyniku 1 (prawdę). Końcowy wynik (wartość zdania logicznego złożonego z wielu prostszych warunków) jest wyliczana od lewej do prawej (w takiej kolejności, w jakie czytamy zapisane wyrażenie). Jeśli w pewnym momencie jednoznacznie udaje się ustalić, jaka będzie końcowa wartość całego wyrażenia, to kolejne warunki nie są sprawdzane. Co to oznacza w praktyce? To, że w pewnych przypadkach dalsze instrukcje, z jakich składa się zdanie logiczne będą wykonywane, w innych zaś nie. Funkcja rand(), której za chwilę użyjemy, wymaga dołączenia nagłówka #include <stdlib.h>. Ponadto, aby wartości były chociaż trochę losowe, należy wystartować generator liczb losowych z losową wartością początkową. Najłatwiej można to osiągnąć wykonując jako pierwszą instrukcję w programu srand(time(null));. Weźmy następujący przykład: #include <stdio.h> #include <stdlib.h> int f() printf("błysk!\n"); //wyzwolenie_lampy_błyskowej(); return rand() % 2; //zwróć losowo 0 albo 1, czyli fałsz albo prawdę int main() srand(time(null)); //co sekundę jest to inna wartość if ( 1 f() f() f() f() f() ) printf("warunek prawdziwy\n"); printf("warunek fałszywy\n"); Krzysztof Urbański
2 Ten kod zadziała zupełnie inaczej, niż gdybyśmy zapisali: if ( 0 f() f() f() f() f() ). Ile razy błyśnie lampa w obu przypadkach? Czy da się to w ogóle jednoznacznie określić? Przetestuj ten kod uruchamiając go wielokrotnie i obserwuj wyniki. Wniosek: unikaj używania w warunkach takich instrukcji, które modyfikują wartości zmiennych lub mają na celu wywołanie innych działań w programie. W różnych scenariuszach wykonania programu może to doprowadzić do całkowicie losowego działania aplikacji! Zadanie do realizacji: popraw powyższy kod w taki sposób, aby lampa błyskała zawsze 5 razy niezależnie od szczęścia i innych czynników zewnętrznych. Skoro każda wartość różna od zera jest traktowana jak prawda, to prawdziwe są warunki: 1, 1234, zmienna_calkowita (przy założeniu, że zmienna ta ma wartość różną od zera). Konsekwentnie, wszystkie wskaźniki, które nie są puste (nie są NULL) też odpowiadają wartości prawda. Tylko 0 i NULL są fałszem. Przykład: FILE *f = fopen("nazwa.txt", "r"); if (f!= NULL) fscanf(f, "%d", &zmienna); fclose(f); Możemy uprościć powyższy warunek do postaci: if (f) fscanf(f, "%d", &zmienna); fclose(f); Warunek (f) będzie prawdziwy wtedy i tylko wtedy, gdy f będzie różne od NULL (nie będzie wskaźnikiem pustym. Zdradliwe = i == Operator podstawienia (=) w języku C działa w szczególny sposób. Powoduje przypisanie pod zmienną po prawej stronie wartości wyliczonej z wyrażenia stojącego po lewej. Dodatkowo, całe wyrażenie podstawienia ma wartość równą temu, co zostało podstawione. Możliwe jest zatem użycie tej wartości do podstawienia pod kolejną zmienną. Przykład: int a = 7, b = 7, c = 7; printf("%d\n", c=113); printf("%d\n", c); Skoro wyrażenie (c=113) ma wartość 113, to czemu by nie podstawić jego wartości pod zmienną b? Mamy wtedy: b = (c=113); przy czym można pominąć nawiasy i ostatecznie otrzymamy b = c = 113; Krzysztof Urbański
3 Skoro pod b coś podstawiamy (konkretnie będzie to 113), to ta instrukcja też zwraca wartość 113. Podstawmy ją pod a: a = b = c = 113; Jest to wygodny sposób nadawania tej samej wartości wielu zmiennym, zwłaszcza wtedy, gdy często zmieniamy zdanie i chcemy szybko zastąpić 113 czymś innym, na przykład 999: a = b = c = 999; Jest to wygodniejsze niż zamiana a = 113; b = 113; c = 113; na a = 999; b = 999; c = 999;. Mniej przyjemne konsekwencje wystąpią wtedy, gdy popełnisz pomyłkę i w warunku użyjesz instrukcji podstawienia zamiast porównania: int a = 0; if (a==1) printf("prawda"); printf("fałsz"); printf("\nzmienna a ma wartość %d\n", a); Porównaj wyniki powyżej z następującymi: if (a=1) printf("prawda"); printf("fałsz"); printf("\nzmienna a ma wartość %d\n", a); Współczesne kompilatory ostrzegają przed takim potencjalnym błędem, warto więc czytać komunikaty ostrzeżeń ( warning ) w oknie kompilatora. Celowe użycie takich karkołomnych instrukcji (tzn. użycie instrukcji podstawienia = w warunku) jest możliwe i poprawne pod względem składniowym, ale zwykle przynosi więcej szkody niż pożytku. Przykład (nie należy go naśladować): int a = 1, b = 2; if (a (a=b)) printf("prawda"); printf("fałsz"); printf("\na==%d, b==%d\n", a, b); Zmień kod, uruchom i ponownie obejrzyj wyniki, tym razem niech a będzie miało początkową wartość 0: int a = 0, b = 2; Pytanie Dlaczego tak jest? Krzysztof Urbański
4 Instrukcja wielokrotnego wyboru?: warunek? wartość_gdy_prawda : wartość_gdy_fałsz; Jeśli warunek jest prawdziwy, to wartością całego wyrażenia jest to, co stoi przed dwukropkiem, w przeciwnym razie tą wartością jest to, co stoi za dwukropkiem. Jest to chętnie stosowana instrukcja, zwiększa zwięzłość kodu. Działa podobnie jak if.. tylko dodatkowo zwraca wynik jako wartość całego wyrażenia. Tę wartość można np. podstawić pod zmienną lub użyć jako argumentu return w funkcji. Przykład: funkcja abs(x), czyli wartość bezwzględna z x. int abs(int x) if (x < 0) return -x; return x; albo int abs(int x) int wynik; if (x < 0) wynik = -x; wynik = x; return wynik; Wersja bardziej zwięzła: int abs(int x) return x < 0? -x : x; Instrukcje?: można zagnieżdżać, co bardzo ładnie widać na przykładzie funkcji sgn(x): + 1 sgn( x ) = 0 1 dla x > 0 dla x = 0 dla x < 0 int sgn(int x) if (x > 0) return +1; if (x == 0) return 0; if(x < 0) return -1; Wiedząc, że po return funkcja kończy działanie i nie są wykonywane dalsze instrukcje, można ten kod uprościć: Krzysztof Urbański
5 int sgn(int x) if (x > 0) return +1; if (x < 0) return -1; return 0; //kiedy x>0 oraz x<0 były fałszem, to nie potrzeba //sprawdzać że x==0, bo to jest oczywiste. Można też jeszcze krócej zapisać: int sgn(int x) return x>0? +1 : (x<0? -1 : 0); Niektóre mikroprocesory mają wbudowane rozkazy przyspieszające wykonanie?:, zaś niezależnie od tego zwykle ta instrukcja daje po kompilacji szybszy kod maszynowy. Mniej oczywiste użycie?: Wskaźniki mogą być używane w wyrażeniach arytmetycznych (są przecież szczególnej postaci adresami, czyli liczbami, a na liczbach można wykonywać pewne obliczenia). Najczęściej używanym wskaźnikiem w C jest wskaźnik znakowy (char*), zatem użyjemy go w poniższym przykładzie. Chcemy wyświetlić komunikat o tym, czy x jest parzyste czy nieparzyste. Można to zapisać klasycznie w taki sposób: if (x % 2!= 0) //jeżeli reszta z dzielenia x przez 2 nie wynosi 0 printf("liczba %d jest nieparzysta.", x); printf("liczba %d jest parzysta.", x); Zauważ, że printf() to funkcja, która też zwraca wynik (jaki?). W zależności od tego, czy x jest parzyste czy nie, wywołujemy inną wersję printf( ). Moglibyśmy zapisać to krócej: x%2!=0? printf("liczba %d jest nieparzysta.", x) : printf("liczba %d jest parzysta.", x); Wyniku całego wyrażenia nie musimy pod nic podstawiać, język C nie zmusza nas do tego. Wyrażenia po lewej i prawej stronie dwukropka są bardzo podobne. W obu przypadkach jest to printf, pewien napis oraz zmienna x. Czym jest napis w języku C? to wskaźnik. A wskaźniki można dodawać, porównywać, zwracać jako wynik działania funkcji oraz używać w wyrażeniach?:. printf(x%2? "Liczba %d jest nieparzysta.":"liczba %d jest parzysta.", x); Pierwszym argumentem printf musi być wskaźnik znakowy (char*). Takim wskaźnikiem jest napis w języku C, np. "abc" czy "Liczba %d jest nieparzysta.". W zależności od wyniku (x%2) posługujemy się wskaźnikiem z lewej lub prawej strony wyrażenia, a zyskujemy o jedno wywołanie funkcji printf() mniej. Krzysztof Urbański
6 Czy można jeszcze bardziej się streścić? Zauważmy podobieństwo lewego i prawego napisu. Czasem posługujemy się słowem parzysta, czasem zaś nieparzysta. Słowa te można przedstawić jako napisy języka C. Można też, używając formatowanego stdout i funkcji printf, posłużyć się ciągiem %s aby wstawić w odpowiednie miejsce głównego napisu właściwe słowo. Szablon napisu wygląda wtedy tak: "Liczba %d jest %s." przy czym zamiast %d zostanie wyświetlona wartość x, a zamiast %s pojawi się słowo parzysta bądź nieparzysta. printf("liczba %d jest %s.", x, x%2? "nieparzysta" : "parzysta"); Różnica między komunikatami to zaledwie 3 litery (partykuła nie). W napisie "Liczba %d jest nieparzysta." czerwone nie czasem występuje, czasem zaś go nie ma. Kiedy go nie ma, to w tym miejscu można wstawić pusty napis (""), który w C zapisujemy jako dwa znaki cudzysłów, między którymi nic się nie znajduje. printf("liczba %d jest %sparzysta.", x, x%2? "nie" : ""); Zadanie treningowe Posługując się instrukcją?:, w jednej funkcji printf( ) zapisz wynik pomiaru napięcia double U w następujący sposób: Jeśli U>=1.000, to wyświetl Napięcie wynosi +x.xxx V. Jeśli U<1.000 i U>-1.000, to wyświetl Napięcie wynosi xxx mv. Jeśli U <= , to wyświetl Napięcie wynosi -x.xxx V. Wskazówka: użyj gotowej funkcji fabs( ), która zwróci wartość bezwzględną liczby zmiennoprzecinkowej, lub sam napisz taką funkcję modyfikując kod funkcji int abs(int x) z wcześniejszych stron tego dokumentu. Krzysztof Urbański
7 Instrukcja wielokrotnego wyboru switch..case..default if(znak=='k' znak=='k') koniec_swiata(); if(znak==13) odpal_jakas_duza_rakiete(); if(znak=='?') wezwij_na_pomoc_arnolda(); Taki kod z czasem traci na czytelności, ale przede wszystkim ułatwia powstawanie błędów wynikających z powszechnego używania copy-paste. Chcemy, aby K lub k powodowały koniec świata, zaś U lub u pozwalały uratować świat. Jako scenariusz aplikacji nie jest to może zbyt ambitnyc przykład, ale na scenariusz filmu znakomicie się nadaje, oczywiście pod warunkiem, że zagra w nim Bruce Willis. if(znak=='k' znak=='k') koniec_swiata(); if(znak=='k' znak=='k') uratuj_swiat(); nudne_dialogi(); Gdyby Bruce zagrał według powyższego scenariusza, świat mógłby długo czekać na ratunek, a bardziej prawdopodobne jest, że wcześniej nastąpiłby jego koniec. Dlaczego? Wystąpiła literówka w scenariuszu, który w założeniu miał wyglądać następująco: if(znak=='k' znak=='k') koniec_swiata(); if(znak=='u' znak=='u') uratuj_swiat(); nudne_dialogi(); Moglibyśmy pominąć, ale wtedy kod wykonywałby się dłużej oraz stałby się jeszcze mniej czytelny. Literówki mogłyby być jeszcze bardziej zaskakująco nieprzewidywalne w skutkach. if(znak=='k' znak=='k') koniec_swiata(); if(znak=='u' znak=='u') uratuj_swiat(); if(znak!='k' && znak!='k' && znak!='u' && znak!='u') nudne_dialogi(); Autorom scenariuszy nic już nie pomoże, ale programistom przyda się niezastąpiona w takich sytuacjach pomoc, jaką daje język C w postaci instrukcji switch z dodatkami. Krzysztof Urbański
8 Zadanie switch (znak) case 'K': case 'k': koniec_swiata(); break; case 'U': case 'u': uratuj_swiat(); break; default: nudne_dialogi(); Poeksperymentuj z kodem: spróbuj wstawić K i/lub k zamiast U ; spróbuj wyrzucić jedną lub obie instrukcje break. 1. Co będzie, kiedy spróbujesz na samym początku instrukcji switch zdefiniować zmienną lokalną? A jak zachowa się kod, gdy taka zmienna zostanie zadeklarowana miedzy case a break? 2. Czy instrukcje pomiędzy break a case (np. za pierwszym break, ale przed drugim case) kiedykolwiek się wykonają? 3. Czy sekcja default może być umieszczona w innym miejscu (np. przed case K )? Jak to wpłynie na działanie kodu? W języku C switch..case ma ogromne możliwości, ale jest bardzo wrażliwy na zgubienie słowa break. Tak się pechowo składa, ze pominięcie break nie jest błędem składniowym i kompilator nie zgłosi nam tego problemu. Pomijanie break bardzo rzadko się wykorzystuje w praktyce i zwykle jest to błąd a nie celowe działanie programisty. Nowsze języki (np. C#) traktują już takie przypadki jako błąd. Krzysztof Urbański
Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.
Instrukcje warunkowe i skoku. Spotkanie 2 Dr inż. Dariusz JĘDRZEJCZYK Wyrażenia i operatory logiczne Instrukcje warunkowe: if else, switch Przykłady 11/3/2016 AGH, Katedra Informatyki Stosowanej i Modelowania
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
Rok akademicki 2012/2013, Pracownia nr 4 2/17 Informatyka 1 Instrukcja warunkowa if prawda instrukcja1 warunek fałsz Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne
Warto też w tym miejscu powiedzieć, że w C zero jest rozpoznawane jako fałsz, a wszystkie pozostałe wartości jako prawda.
Nazwa implementacji: Nauka języka C wyrażenia warunkowe if- Autor: Piotr Fiorek Opis implementacji: Poznanie struktury oraz zastosowania wyrażeń warunkowych if- w języku C. W programie realizującym jakiś
3. Instrukcje warunkowe
. Instrukcje warunkowe Przykłady.1. Napisz program, który pobierze od użytkownika liczbę i wypisze na ekran słowo ujemna lub nieujemna, w zależności od tego czy dana liczba jest ujemna czy nie. 1 #include
Operacje wykonywane są na operandach (argumentach operatorów). Przy operacji dodawania: argumentami operatora dodawania + są dwa operandy 2 i 5.
Operatory w Javie W Javie występują następujące typy operatorów: Arytmetyczne. Inkrementacji/Dekrementacji Przypisania. Porównania. Bitowe. Logiczne. Pozostałe. Operacje wykonywane są na operandach (argumentach
Podstawy Programowania Podstawowa składnia języka C++
Podstawy Programowania Podstawowa składnia języka C++ Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Szablon programu w C++ Najprostszy program w C++ ma postać: #include #include
Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory
Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory Poniżej pozwoliłem sobie za cytować za wikipedią definicję zmiennej w informatyce.
Podstawy programowania C. dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/
Podstawy programowania C dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/ Tematy Struktura programu w C Typy danych Operacje Instrukcja grupująca Instrukcja przypisania Instrukcja warunkowa Struktura
Odczyt danych z klawiatury Operatory w Javie
Odczyt danych z klawiatury Operatory w Javie Operatory W Javie występują następujące typy operatorów: Arytmetyczne. Inkrementacji/Dekrementacji Przypisania. Porównania. Bitowe. Logiczne. Pozostałe. Operacje
4. Funkcje. Przykłady
4. Funkcje Przykłady 4.1. Napisz funkcję kwadrat, która przyjmuje jeden argument: długość boku kwadratu i zwraca pole jego powierzchni. Używając tej funkcji napisz program, który obliczy pole powierzchni
Temat 1: Podstawowe pojęcia: program, kompilacja, kod
Temat 1: Podstawowe pojęcia: program, kompilacja, kod wynikowy. Przykłady najprostszych programów. Definiowanie zmiennych. Typy proste. Operatory: arytmetyczne, przypisania, inkrementacji, dekrementacji,
Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.
Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na
1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
1 Wielokrotne powtarzanie tych samych operacji
1 Wielokrotne powtarzanie tych samych operacji Zadanie 1. roszę porównać następujące programy(efekt działania każdego z nich jest takisam). rzykład 1 przedstawia najbardziej typowy zapis, powodujący wykonanie
2 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 2 1/7 Język C Instrukcja laboratoryjna Temat: Wprowadzenie do języka C 2 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do języka C. Język C jest językiem programowania ogólnego zastosowania
Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 10 Kurs C++
Podstawy Informatyki Inżynieria Ciepła, I rok Wykład 10 Kurs C++ Historia Lata 70-te XX w język C (do pisania systemów operacyjnych) "The C programming language" B. Kernighan, D. Ritchie pierwszy standard
7. Pętle for. Przykłady
. Pętle for Przykłady.1. Bez użycia pętli while ani rekurencji, napisz program, który wypisze na ekran kolejne liczby naturalne od 0 do pewnego danego n. 5 int n; 6 cin >> n; 8 for (int i = 0; i
Cw.12 JAVAScript w dokumentach HTML
Cw.12 JAVAScript w dokumentach HTML Wstawienie skryptu do dokumentu HTML JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.skrypty Java- Script mogą być zagnieżdżane
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Laboratorium 3 Instrukcje wyboru 1 INSTRUKCJE WYBORU Instrukcje sterujące to takie instrukcje, które sterują przebiegiem programu w zależności od spełnienia
Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie
Część X C++ Typ znakowy służy do reprezentacji pojedynczych znaków ASCII, czyli liter, cyfr, znaków przestankowych i innych specjalnych znaków widocznych na naszej klawiaturze (oraz wielu innych, których
Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Wstęp do Programowania, laboratorium 02
Wstęp do Programowania, laboratorium 02 Zadanie 1. Napisać program pobierający dwie liczby całkowite i wypisujący na ekran największą z nich. Zadanie 2. Napisać program pobierający trzy liczby całkowite
JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.
IŚ ćw.8 JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript są zagnieżdżane w dokumentach HTML. Skrypt JavaScript
C++ wprowadzanie zmiennych
C++ wprowadzanie zmiennych Każda zmienna musi być zadeklarowana, należy określić jej nazwę (identyfikator) oraz typ. Opis_typu lista zmiennych Dla każdej zmiennej rezerwowany jest fragment pamięci o określonym
znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.
Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo
Języki programowania C i C++ Wykład: Typy zmiennych c.d. Operatory Funkcje. dr Artur Bartoszewski - Języki C i C++, sem.
Języki programowania C i C++ Wykład: Typy zmiennych c.d. Operatory Funkcje 1 dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD programowania w C++ Typy c.d. 2 Typy zmiennych Instrukcja typedef -
Programowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
Nazwa implementacji: Nauka języka Python pętla for. Autor: Piotr Fiorek
Nazwa implementacji: Nauka języka Python pętla for Autor: Piotr Fiorek Opis implementacji: Poznanie innego rodzaju pętli, jaką jest pętla for w języku Python. Składnia pętli for jest następująca: for
Podstawy i języki programowania
Podstawy i języki programowania Laboratorium 3 - operatory oraz instrukcje warunkowe i wyboru mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 19 października 2018 1 / 35 mgr inż. Krzysztof
Podstawy Programowania C++
Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:
Celem tego projektu jest stworzenie
Prosty kalkulator Celem tego projektu jest stworzenie prostego kalkulatora, w którym użytkownik będzie podawał dwie liczby oraz działanie, które chce wykonać. Aplikacja będzie zwracała wynik tej operacji.
Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
programowania Wykład: 4 Instrukcje sterujące, operatory 1 programowania w C++ Instrukcje sterujące 2 Pętla for for ( instrukcja_ini ; wyrazenie_warunkowe ; instrukcja_krok ) tresc_petli ; instrukcja_ini
Tablice (jedno i wielowymiarowe), łańcuchy znaków
Tablice (jedno i wielowymiarowe), łańcuchy znaków wer. 8 z drobnymi modyfikacjami! Wojciech Myszka Katedra Mechaniki i Inżynierii Materiałowej 2017-04-07 09:35:32 +0200 Zmienne Przypomnienie/podsumowanie
Spis treści JĘZYK C - OPERATORY RELACYJNE I LOGICZNE, WYRAŻENIA LOGICZNE, INSTRUKCJA WARUNKOWA IF. Informatyka 1
Politechnika Białostocka Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii Instrukcja do pracowni specjalistycznej z przedmiotu Informatyka 1 Kod przedmiotu: ES1C200 009 (studia stacjonarne)
lekcja 8a Gry komputerowe MasterMind
lekcja 8a Gry komputerowe MasterMind Posiadamy już elementarną wiedzę w zakresie programowania. Pora więc zabrać się za rozwiązywanie problemów bardziej złożonych, które wymagają zastosowania typowych
/*W tym miejscu funkcja system wywołuje systemową komendę PAUSE tj.czeka tak długo, aż zostanie wciśnięty dowolny znak z
Języki i metodyka Programowania Zajęcia 1. 1. Spróbujmy uruchomić pierwszy program. Otwórzmy okno dosowe (polecenie cmd) i po przejściu do katalogu projektu uruchamiamy z linii poleceń nasz program wielokrotnie.
Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij.
Programowanie Sobera Jolanta 16.09.2006 Strona 1 z 26 1 Wprowadzenie do programowania 4 2 Pierwsza aplikacja 5 3 Typy danych 6 4 Operatory 9 Strona 2 z 26 5 Instrukcje sterujące 12 6 Podprogramy 15 7 Tablice
Programowanie w C/C++ Instrukcje - konstrukcje powtórka. LABORKA Piotr Ciskowski
Programowanie w C/C++ Instrukcje - konstrukcje powtórka LABORKA Piotr Ciskowski zadanie 1. Licz się ze sobą Napisz funkcję bez argumentów i bez wyniku, która za każdym wywołaniem będzie podawała, ile razy
Pętle. Dodał Administrator niedziela, 14 marzec :27
Pętlami nazywamy konstrukcje języka, które pozwalają na wielokrotne wykonywanie powtarzających się instrukcji. Przykładowo, jeśli trzeba 10 razy wyświetlić na ekranie pewien napis, to można wykorzystać
Spis treści JĘZYK C - INSTRUKCJA WARUNKOWA IF, OPERATORY RELACYJNE I LOGICZNE, WYRAŻENIA LOGICZNE. Informatyka 1
Politechnika Białostocka Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii Instrukcja do pracowni specjalistycznej z przedmiotu Informatyka 1 Kod przedmiotu: ES1C200 009 (studia stacjonarne)
Podstawy Informatyki. Kompilacja. Historia. Metalurgia, I rok. Kompilatory C++ Pierwszy program. Dyrektywy preprocesora. Darmowe:
Podstawy Informatyki Metalurgia, I rok Historia Lata 0-te XX w język C (do pisania systemów operacyjnych) "The C programming language" B. Kernighan, D. Ritchie pierwszy standard Koniec lat 80 standard
Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++
Programowanie Wstęp p do programowania Klasa 3 Lekcja 9 PASCAL & C++ Język programowania Do przedstawiania algorytmów w postaci programów służą języki programowania. Tylko algorytm zapisany w postaci programu
Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki
Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Turbo Pascal jest językiem wysokiego poziomu, czyli nie jest rozumiany bezpośrednio dla komputera, ale jednocześnie jest wygodny dla programisty,
Operatory. Operatory bitowe i uzupełnienie informacji o pozostałych operatorach. Programowanie Proceduralne 1
Operatory Operatory bitowe i uzupełnienie informacji o pozostałych operatorach. Programowanie Proceduralne 1 Przypomnienie: operatory Operator przypisania = przypisanie x = y x y Operatory arytmetyczne
Programowanie strukturalne i obiektowe
Programowanie strukturalne i obiektowe Język C część I Opracował: Grzegorz Flesik Literatura: A. Majczak, Programowanie strukturalne i obiektowe, Helion, Gliwice 2010 P. Domka, M. Łokińska, Programowanie
1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
Podstawy Informatyki. Metalurgia, I rok. Wykład 6 Krótki kurs C++
Podstawy Informatyki Metalurgia, I rok Wykład 6 Krótki kurs C++ Historia Lata 70-te XX w język C (do pisania systemów operacyjnych) "The C programming language" B. Kernighan, D. Ritchie pierwszy standard
Zmienne, stałe i operatory
Zmienne, stałe i operatory Przemysław Gawroński D-10, p. 234 Wykład 2 4 marca 2019 (Wykład 2) Zmienne, stałe i operatory 4 marca 2019 1 / 21 Outline 1 Zmienne 2 Stałe 3 Operatory (Wykład 2) Zmienne, stałe
Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Ćwiczenie 1. Podstawy. Wprowadzenie do programowania w języku C. Katedra Metrologii AGH
Laboratorium Podstaw Informatyki Kierunek Elektrotechnika Ćwiczenie 1 Podstawy Wprowadzenie do programowania w języku C Kraków 2010 Twój pierwszy program w C Program w języku C, jak i w wielu innych językach
Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych
1. Wstawianie skryptu na stroną: Laboratorium 1 Do umieszczenia skryptów na stronie służy znacznik: //dla HTML5 ...instrukcje skryptu //dla HTML4 ...instrukcje
dr inż. Jarosław Forenc
Informatyka Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 8/9 Wykład nr 4 (.3.9) Rok akademicki 8/9, Wykład nr 4 /33 Plan wykładu
W przeciwnym wypadku wykonaj instrukcję z bloku drugiego. Ćwiczenie 1 utworzyć program dzielący przez siebie dwie liczby
Część XI C++ W folderze nazwisko36 program za każdym razem sprawdza oba warunki co niepotrzebnie obciąża procesor. Ten problem można rozwiązać stosując instrukcje if...else Instrukcja if wykonuje polecenie
PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6
PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6 TEMAT: Programowanie w języku C/C++: instrukcje iteracyjne for, while, do while Ogólna postać instrukcji for for (wyr1; wyr2; wyr3) Instrukcja for twory pętlę działającą
Struktura pliku projektu Console Application
Struktura pliku projektu Console Application #include #include using namespace std; int main(int argc, char *argv[]) // to jest komentarz system("pause"); return EXIT_SUCCESS; Na początku
Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.
Typy, operatory, wyrażenia. Wejście i wyjście. Typy, operatory, wyrażenia Zmienna: [] [ '[' ']' ] ['=' ]; Zmienna to fragment pamięci o określonym
Wskaźniki w C. Anna Gogolińska
Wskaźniki w C Anna Gogolińska Zmienne Zmienną w C można traktować jako obszar w pamięci etykietowany nazwą zmiennej i zawierający jej wartość. Przykład: kod graficznie int a; a a = 3; a 3 Wskaźniki Wskaźnik
Spis treści JĘZYK C - INSTRUKCJA WARUNKOWA IF, OPERATORY RELACYJNE I LOGICZNE, WYRAŻENIA LOGICZNE. Metodyki i techniki programowania
Politechnika Białostocka Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii Instrukcja do pracowni specjalistycznej z przedmiotu Metodyki i techniki programowania Kod przedmiotu: TS1C200
/* dołączenie pliku nagłówkowego zawierającego deklaracje symboli dla wykorzystywanego mikrokontrolera */ #include <aduc834.h>
Szablon programu: /* dołączenie pliku nagłówkowego zawierającego deklaracje symboli dla wykorzystywanego mikrokontrolera */ #include /* opcjonalne: deklaracja typów o rozmiarze jednego i dwóch
Część 4 życie programu
1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część
Przedrostkowa i przyrostkowa inkrementacja i dekrementacja
Część VIII C++ Przedrostkowa i przyrostkowa inkrementacja i dekrementacja W poprzednim ćwiczeniu operatory inkrementacji i dekrementacji występowały w wersji przyrostkowej. Istnieje inny sposób zapisu
I - Microsoft Visual Studio C++
I - Microsoft Visual Studio C++ 1. Nowy projekt z Menu wybieramy File -> New -> Projekt -> Win32 Console Application w okienku Name: podajemy nazwę projektu w polu Location: wybieramy miejsce zapisu i
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się
Podstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
WYKŁAD 8. Funkcje i algorytmy rekurencyjne Proste przykłady. Programy: c3_1.c..., c3_6.c. Tomasz Zieliński
WYKŁAD 8 Funkcje i algorytmy rekurencyjne Proste przykłady Programy: c3_1.c..., c3_6.c Tomasz Zieliński METODY REKURENCYJNE (1) - program c3_1 ======================================================================================================
Język C++ zajęcia nr 2
Język C++ zajęcia nr 2 Inicjalizacja Definiowanie obiektu może być połączone z nadaniem mu wartości początkowej za pomocą inicjalizatora, który umieszczany jest po deklaratorze obiektu. W języku C++ inicjalizator
Instrukcje sterujące. wer. 11 z drobnymi modyfikacjami! Wojciech Myszka :53:
Instrukcje sterujące wer. 11 z drobnymi modyfikacjami! Wojciech Myszka 2017-07-05 10:53:09 +0200 Ala ma kota Część I Prosty przykład Problem 1. Zadanie polega na tym, żeby opracować algorytm który dla
Język C zajęcia nr 11. Funkcje
Język C zajęcia nr 11 Funkcje W języku C idea podprogramów realizowana jest wyłącznie poprzez definiowanie i wywołanie funkcji. Każda funkcja musi być przed wywołaniem zadeklarowana. Deklaracja funkcji
Programowanie I C / C++ laboratorium 03 arytmetyka, operatory
Programowanie I C / C++ laboratorium 03 arytmetyka, operatory Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2013-02-19 Typ znakowy Typ znakowy Typ wyliczeniowy # include
Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska
Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny Technologiczny Politechnika Śląska Języki programowania z programowaniem obiektowym Laboratorium
Instrukcja wyboru, pętle. 2 wykład. Podstawy programowania - Paskal
Instrukcja wyboru, pętle 2 wykład. Podstawy programowania - Paskal Tematy Instrukcja wyboru jeden z wielu wariantów: case Pętle while repeat for Instrukcje sterowania pętli break continue goto Instrukcja
Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.
Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy Laboratorium 2 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Komentarze Funkcja printf() Zmienne Łańcuchy
1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami
1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami Celem tych zajęć jest zrozumienie i oswojenie z technikami programowania przy pomocy wskaźników w języku C++. Proszę przeczytać rozdział 8.
Warunek wielokrotnego wyboru switch... case
Warunek wielokrotnego wyboru switch... case Działanie instrukcji switch jest zupełnie inne niż w przypadku instrukcji if o czym będziesz mógł się przekonać w niniejszym rozdziale. Różnice pomiędzy instrukcjami
Powtórka algorytmów. Wprowadzenie do języka Java.
Powtórka algorytmów. Wprowadzenie do języka Java. BEGIN Readln(a); Readln(b); Suma := 0; IF Suma < 10 THEN Writeln( Suma wynosi:, Suma); ELSE Writeln( Suma większa niż 10! ) END. 1. Narysować schemat blokowy
Programowanie komputerowe. Zajęcia 1
Programowanie komputerowe Zajęcia 1 Code::Blocks - tworzenie projektu Create New Project Console Application -> C++ Wybierz nazwę projektu Stworzy się nowy projekt z wpisaną funkcją main Wpisz swój program
Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc.
Zmienne powłoki Zmienne powłoki (shell variables) to tymczasowe zmienne, które mogą przechowywać wartości liczbowe lub ciągi znaków. Związane są z powłoką, Przypisania wartości do zmiennej następuje poprzez
1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci:
1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci: * Jan Kowalski * * ul. Zana 31 * 3. Zadeklaruj zmienne przechowujące
Operatory w C++ Operatory arytmetyczne. Operatory relacyjne (porównania) Operatory logiczne. + dodawanie - odejmowanie * mnożenie / dzielenie % modulo
Operatory w C++ Operatory arytmetyczne + dodawanie - odejmowanie * mnożenie / dzielenie % modulo Operatory relacyjne (porównania) < mniejszy niż większy niż >= większy lub równy
Język C zajęcia nr 5
Język C zajęcia nr 5 Instrukcja wyboru switch switch ( wyr ) inst Głównym przeznaczeniem instrukcji switch jest rozgałęzianie wykonania programu na wiele różnych ścieżek w zależności od wartości pewnego
Informatyka I: Instrukcja 4.2
Informatyka I: Instrukcja 4.2 1 Wskaźniki i referencje - bezboleśnie Nauczyliśmy się do tej pory, że funkcje w języku C mogą zwracać wartość. Co jednak, gdybyśmy chcieli napisać funkcję, która rozwiąże
Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice.
Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice. Język PHP Język interpretowalny, a nie kompilowany Powstał w celu programowania
Programowanie - instrukcje sterujące
Instytut Informatyki Uniwersytetu Śląskiego Laborki środowisko NetBeans, tworzenie nowego projektu; okno projekty; główne okno programu; package - budowanie paczek z klas; public class JavaApplication
Struktury, unie, formatowanie, wskaźniki
Struktury, unie, formatowanie, wskaźniki 1. Napisz aplikację, która na wejściu dostaje napis postaci W Roku Pańskim 1345, władca Henryk 12, na rzecz swoich 143209 poddanych uchwalił dekret o 20 procentowej
Konwersje napis <-> liczba Struktury, unie Scanf / printf Wskaźniki
Konwersje napis liczba Struktury, unie Scanf / printf Wskaźniki Konwersje liczba napis Ćwiczenia 1. Napisz aplikację, która na wejściu dostaje napis postaci W Roku Pańskim 1345, władca Henryk 12,
Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?
Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz
Stuck in the loop. Sterowanie. Marcin Makowski. 29 października Zak lad Chemii Teoretycznej UJ
Sterowanie Zak lad Chemii Teoretycznej UJ 29 października 2007 1 2 3 4 arytmetyczne +, -, *, / % (dzielenie modulo) operatory sa lewostronnie l aczne priorytety: (*, /, %), (+, -) nie istnieje operator
Podstawy programowania w języku C i C++
Podstawy programowania w języku C i C++ Część czwarta Operatory i wyrażenia Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,
Programowanie w Baltie klasa VII
Programowanie w Baltie klasa VII Zadania z podręcznika strona 127 i 128 Zadanie 1/127 Zadanie 2/127 Zadanie 3/127 Zadanie 4/127 Zadanie 5/127 Zadanie 6/127 Ten sposób pisania programu nie ma sensu!!!.
Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1 Pętle Pętla jest konstrukcją sterującą stosowaną w celu wielokrotnego wykonania tego samego zestawu instrukcji jednokrotne
JAVAScript w dokumentach HTML (1)
JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript mogą być zagnieżdżane w dokumentach HTML. Instrukcje JavaScript
Obsługa plików. Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Laboratorium Podstaw Informatyki Strona 1. Kraków 2013
Laboratorium Podstaw Informatyki Strona 1 Laboratorium Podstaw Informatyki Kierunek Elektrotechnika Obsługa plików Kraków 2013 Laboratorium Podstaw Informatyki Strona 2 Obsługa plików Zanim będziemy mogli
Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.
M. Trzebiński C++ 1/14 Podstawy języka C++ Maciej Trzebiński Instytut Fizyki Jądrowej Polskiej Akademii Nauk Praktyki studenckie na LHC IVedycja,2016r. IFJ PAN Przygotowanie środowiska pracy Niniejsza
Programowanie obiektowe - zadania
Programowanie obiektowe - zadania Elementy języka Java Zad.1. Napisz program, który sprawdza, czy dana liczba całkowita jest parzysta. Zad.2. Napisz program, który sumuje dane dwie liczby tylko w przypadku,
Laboratorium 1: Podstawy języka c. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski
Laboratorium 1: Podstawy języka c dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski 12 października 2017 1. Wprowadzenie Instrukcja zawiera informacje o podstawowych konstrukcjach w języku c. Część pierwsza
Lekcja 3: Pierwsze kroki z Pythonem. Pętle
#SuperKoderzy www.superkoderzy.pl Mikrobitowcy Autorzy: Filip Kłębczyk Lekcja 3: Pierwsze kroki z Pythonem. Pętle Podczas lekcji uczniowie zapoznają się z dwoma rodzajami pętli - for i while - analizując
METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH
METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH ĆWICZENIE NR 9 WYRAŻENIA LOGICZNE, INSTRUKCJE WARUNKOWE I INSTRUKCJE ITERACYJNE W PROGRAMIE KOMPUTEROWYM MATLAB Dr inż. Sergiusz Sienkowski ĆWICZENIE NR
Operatory cd. Relacyjne: ==!= < > <= >= bool b; int i =10, j =20; dzielenie całkowitych wynik jest całkowity! Łączenie tekstu: + string s = "Ala ma ";
1 2 Operacje na zmiennych Kolejność operacji: deklaracja, inicjacja bool decyzja; int licznik, lp; double stvat, wartpi; char Znak; string S1, S2 = "Kowalski"; przypisanie wartości podstawienie decyzja
Wprowadzenie do programowania w języku C
Wprowadzenie do programowania w języku C Część druga Instrukcje sterujące przebiegiem programu Autor Roman Simiński Kontakt siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót