Projekt współfinansowany przez Unię Europejską ze środków Europejskiego Funduszu Społecznego



Podobne dokumenty
Laboratorium_1: Temat: Wprowadzenie do języka C++ 1. Operatory. Arytmetyczne

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

Język ludzki kod maszynowy

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

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

Programowanie strukturalne i obiektowe

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce.

Wprowadzenie do programowania aplikacji

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

Część 4 życie programu

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

Podstawy programowania C. dr. Krystyna Łapin

Programowanie komputerowe. Zajęcia 1

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

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

C++ wprowadzanie zmiennych

2 Przygotował: mgr inż. Maciej Lasota

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

Pytania sprawdzające wiedzę z programowania C++

Podstawy programowania w języku C

Programowanie w języku Python. Grażyna Koba

Wstęp do Programowania, laboratorium 02

I - Microsoft Visual Studio C++

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++

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

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

Wstęp do programowania

Programowanie - wykład 4

Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.

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

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

Grzegorz Cygan. Wstęp do programowania mikrosterowników w języku C

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

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

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Podstawy programowania Java

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

Język C - podstawowe informacje

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

1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.

( wykł. dr Marek Piasecki )

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

Proste programy w C++ zadania

KURS C/C++ WYKŁAD 1. Pierwszy program

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

Proces tworzenia programu:

OPERACJE WEJŚCIA / WYJŚCIA. wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout)

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Ćwiczenie 1. Podstawy. Wprowadzenie do programowania w języku C. Katedra Metrologii AGH

Wstęp do programowania. Wykład 1

Podstawy programowania - 1

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

lekcja 8a Gry komputerowe MasterMind

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

Programowanie strukturalne język C - wprowadzenie

Podstawy Programowania C++

Struktura pliku projektu Console Application

Język C zajęcia nr 11. Funkcje

ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2015

Informacje wstępne #include <nazwa> - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Tablice. Monika Wrzosek (IM UG) Podstawy Programowania 96 / 119

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci:

Wykład 1

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

#include <stdio.h> void main(void) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

#include <stdio.h> int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

Podstawy Programowania. Wykład 1

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

Metodyki i Techniki Programowania MECHANIZM POWSTAWANIA PROGRAMU W JĘZYKU C PODSTAWOWE POJĘCIA

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

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

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

Podstawy programowania (1)

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

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

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

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

Wprowadzenie do języka Java

3. Instrukcje warunkowe

Języki programowania - podstawy

1. Wprowadzanie danych z klawiatury funkcja scanf

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

Podstawy programowania w języku C i C++

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

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

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

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.

Microsoft IT Academy kurs programowania

4. Funkcje. Przykłady

Podstawy języka C++ Maciej Trzebiński. Praktyki studenckie na LHC IFJ PAN. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. M. Trzebiński C++ 1/16

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

Zmienne, stałe i operatory

Podstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji

1. Wypisywanie danych

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

Języki i metody programowania. Omówienie języków C, C++ i Java

Struktury Struktura polami struct struct struct struct

Transkrypt:

1. Wstęp do programowania Programowanie komputerów jest podstawową dziedziną informatyki i obejmuje: projekt programu - konstrukcja algorytmu, zapis programu w dowolnym języku programowania, testowanie programu. Algorytmem nazywamy sposób postępowania (metodę) z danymi, który w skończonej liczbie kroków (czynności) prowadzi rozwiązania problemu. Języki programowania Mikroprocesor wykonując program interpretuje rozkazy zapisane w tzw. kodzie maszynowym, będącym ciągiem bitów zero-jedynkowych. Ze względu na małą czytelność tak zapisanego programu stworzono szereg języków i systemów programowania. Język definiuje reguły (zasady) zgodnie z którymi powinien być zapisany program, aby możliwe było jego wykonanie, system programowania natomiast służy do tłumaczenia programu na kod maszynowy. Języki programowania ze względu na sposób złożoności dzieli się na: niskiego (asembler), wysokiego (Turbo Pascal, C/C++, Java, Fortran, Visual Basic, Algol) poziomu. W języku niskiego poziomu większość instrukcji odpowiada pojedynczym rozkazom procesora, dlatego też zapis programu w tym języku jest procesem bardzo pracochłonnym. Języki wysokiego poziomu używają sformułowań stosowanych w życiu codziennym, zaś ich instrukcje zastępują kilka czy nawet kilkanaście instrukcji języka niskiego poziomu. Generacja kody wynikowego System programowania do tłumaczenia programu na kod maszynowy używa osobnego programu zwanego translatorem. Ze względu na sposób działania translatory dzieli się na dwie grupy: interpretery, kompilatory. Interpreter po przetłumaczeniu jednej instrukcji programu przekazuje ją do wykonania mikroprocesorowi, po czym tłumaczy kolejną instrukcję programu. Interpreter nie tworzy pliku wynikowego zawierającego kod maszynowy programu (zbiory "exe" lub "com"). Oznacza to, że wykonanie programu jest możliwe tylko w środowisku programowania przy pomocy interpretera. Kompilator natomiast nie wykonuje programu lecz tłumaczy go na kod maszynowy w całości, w wyniku czego powstaje zbiór wykonywalny przez procesor. 2. Elementy programu Ogólnie program w języku C, C++ składa się z: dyrektyw preprocesora, komentarzy, deklaracji, instrukcji. Dyrektywy preprocesora. Dyrektywy preprocesora zajmują pełne wiersze i zaczynają się od znaku # (hash). Najczęściej spotykaną dyrektywą jest linia postaci: #include <nazwa_pliku>, gdzie nazwa_pliku jest nazwą pliku nagłówkowego (header file). Wymieniony plik zostaje przed kompilacją w całości włączony do programu i najczęściej zawiera deklaracje funkcji standardowych.

Komentarze Komentarze - które ułatwiają życie każdemu, kto pracuje nad tekstem źródłowym programu - mogą być dwojakiego rodzaju: /* Komentarz */ // Komentarz W pierwszym przypadku tekst komentarza może być jedno- lub wielowierszowym napisem nie zawierającym dwuznaku */ (gwiazdka, ukośnik). Natomiast po dwóch ukośnikach komentarz jest napisem mieszczącym się w jednym wierszu. Pierwszy program w C++ /* Pierwszy program int main(void) { return 0; // Funkcja główna /* Zwrot zera (kodu sukcesu) do systemu */ } /* Koniec programu */ Jest to najprostsza z możliwych konstrukcja językowa w C++. Mimo iż program jest prawidłowy, jednak nie robi on zupełnie nic. Po skompilowaniu i uruchomieniu nie stanie się nic. W pierwszej lini znajduje się bardzo ważne słowo main. Jest to główna funkcja programu; musi ona wystąpić w programie dokładnie jeden raz. Od tej funkcji rozpoczyna się wykonywanie programu. Oczywiście nie musi wystąpić zaraz na początku kodu, lecz należy pamiętać, że jest to taki punkt wyjściowy dla reszty programu. Taka deklaracja funkcji, jak w naszym przykładzie nazywana jest definicją funkcji. Definicja funkcji składa się z nagłówka oraz ciała. Nagłówek funkcji W tym przypadku nagłówek ma postać: int main(void), lecz można w nim pominąć zarówno słowo int, jak i słowo void. Jeśli przed nazwą funkcji nie ma określenia jej typu, funkcja jest domyślnie typu int, tzn. jej rezultat jest liczbą całkowitą (integer). Funkcja może wymagać pewnych parametrów w celu właściwego wykonania. Określenia tych parametrów umieszczamy w nawiasach okrągłych za nazwą funkcji. Puste nawiasy oznaczają, że funkcja jest bezparametrowa, co można podkreślić słowem kluczowym void. Podsumowując cztery poniższe nagłówki są sobie równoważne: int main(void) int main() main(void) main() Ciało funkcji Ciało funkcji jest ujęte w klamry. Całość kodu wewnątrz klamer odnosi się do funkcji (tutaj funkcji main). W tym przypadku istnieje tylko jedno zdanie w ciele funkcji - jest to przekazanie systemowi operacyjnemu argumentu instrukcji return (tu danej o wartości zero; jest to znak pomyślnego zakończenia programu, tzw. kod sukcesu). 3. Typy danych W języku C++ są cztery podstawowe proste typy danych: znak (char), liczba całkowita (int), liczba rzeczywista (float), typ bezwartościowy (void). Typy te można nieco zmodyfikować poprzez dodanie przy deklaracji następujących słów: signed, aby uzyskać liczbę ze znakiem (jest to ustawienie domyślne); unsigned, aby uzyskać liczbę bez znaku; short, aby zmniejszyć wielkość zmiennej (ale zmniejszeniu ulega także zakres);

long, aby zwiększyć wielkość zmiennej (zwiększeniu ulega zakres, ale zmienna zajmuje więcej miejsca w pamięci). Poniższa tabela zawiera wspomniane typy: Nazwa typu Typ Zakres Wielkość (w bajtach) char całkowity -128..127 1 unsigned char całkowity 0..255 1 int całkowity -2^31..2^31-1 4 (2 na 16bit unsigned int całkowity 0..2^32 short int całkowity -32768..32767 2 unsigned short int całkowity 0..65535 2 long int całkowity -2^31..2^31-1 4 unsigned long int całkowity 0..2^32 4 float rzeczywisty 6 znaków precyzji 4 double rzeczywisty 10 znaków precyzji 8 kompilatorze) 4 (2 na 16bit kompilatorze) Jak widać w przypadku wielkość zmiennej mierzona w bajtach jest wprost proporcjonalna do zakresu danych, jaki może ona przechowywać. Dla zmiennych całkowitych zakres ten wynosi od 0 do 2^n (w przypadku liczb bez znaku), lub od -2^n do 2^n-1 (w przypadku liczb ze znakiem), gdzie n to ilość bitów, na których zapisana jest zmienna. Dla przypomnienia: jeden bajt ma osiem bitów. Deklaracja zmiennej wygląda tak: typ_danych nazwa_zmiennej; Czyli, jeśli chcemy zadeklarować zmienną znakową o nazwie "znak" to robimy to w ten sposób: char znak; W tym miejscu muszę także przedstawić jeden z ważniejszych operatorów języka C (pozostałe zostaną opisane w następnych punktach). Jest to oczywiście operator przypisania =. Od razu przedstawię praktyczne jego zastosowanie - zadeklarujemy zmienna taką, jak w powyższym przykładzie i przypiszemy jej wartość początkową: char znak='a'; Deklaracja zmiennej całkowitej o nazwie "dlugosc" (wraz z przypisaniem jej wartości początkowej) wygląda tak: unsigned long int dlugosc=5; Natomiast deklaracja zmiennej rzeczywistej o nazwie "pole" (wraz z przypisaniem jej wartości początkowej) tak: float pole=3.48; Jak widzimy w powyższym przykładzie część całkowitą oddzielamy od części ułamkowej przy pomocy kropki, nie przecinka! Typ bezwartościowy - void. Nie jest to typ danych w ścisłym tego słowa znaczeniu, ponieważ nie można utworzyć zmiennej tego typu (można jednak utworzyć zmienną typu wskaźnik na void. Służy on głownie do deklaracji, że funkcja nie zwraca lub też nie przyjmuje żadnych danych. Czyli przykład z pierwszego punktu: void main(void)

można przetłumaczyć jako informację dla kompilatora, że chcemy zdefiniować funkcję o nazwie main, która nie zwraca żadnej wartości oraz nie przyjmuje żadnych parametrów. Słowa zastrzeżone (słowa kluczowe, zarezerwowane) wybrane słowa o szczególnym dla danego języka znaczeniu, nie wolno ich używać jako np. nazw zmiennych. auto extern sizeof break float static case for struct char goto switch const if typedef continue int union default long unsigned do register void double return volatile else short while enum signed 4. Operatory Arytmetyczne Operator Opis + Dodanie dwóch wartości - Odjęcie jednej wartości od drugiej / Podzielenie jednej wartości przez drugą * Pomnożenie jednej wartości przez drugą % Reszta z dzielenia dwóch liczb ++ Zwiększenie o 1 -- Zmniejszenie o 1 Porównania Operator Opis > większe niż < mniejsze niż >= większe lub równe <= mniejsze lub równe == równe!= nie równe Logiczne Operator Opis OR && AND! NOT Operator wyboru (warunkowy) wyrażenie? wartość gdy prawda : wartość gdy fałsz c=(x>y)?5:12 Operatory przypisania +=,-=,*=,/=,%=,%= itp. i+=2 oznacza i=i+2;

Priorytety operatorów języka C++

Operacje we/wy Wyświetlania komunikatów na monitorze funkcja cout #include <iostream.h> // dyrektywa preprocesora dołacza bibliotekę iostream main() { cout<< Pierwszy program ; system("pause");//czeka na naciśnięcia jakiegoś klawisza return EXIT_SUCCESS; } Wczytywanie danych z klawiatury funkcja cin #include <iostream.h> // dyrektywa preprocesora dołacza bibliotekę iostream.h main() { int a; //definicja zmiennej a typu całkowitoliczbowego, cout<< Podaj wartość a= ;//drukuje komunikat na ekranie komputera, cin>>a; //wczytanie wartości z klawiatury, cout<< Zmienna a wynosi <<a<<endl; system("pause");//czeka na naciśnięcia jakiegoś klawisza - funkcja zdefiniowana w //bibliotece conio.h return EXIT_SUCCESS; } Zadania do wykonania na zajęciach: Zadanie_1 Wykonaj działania, dla sprawdzenia napisz program w języku C++ wykonujący poniższe operacje. int a=3,b=2,c=4,d; a. d=a+++b-c%3; d= b. d=++a+b-c%3; d= c. d=(b=c)+2; d= d. d=(b==c); d= e. d=(a<b)&&(b<c); d= f. c+=(a>0&&b<9)?(b>2?a:c):(a>1?b+c:++a); c= int n=5,p=9; float x; a. x=p%n+p>n; x= b. x=p/n; x= c. x=(float)p/n; x= d. x=(p+0.5)/n; x= e. x=int(p+0.5)/n; x= f. x=n*(p>n)?n:p); x= Zadanie_2 Napisz program INICJALY drukujący na ekranie Twoje inicjały. Program Leszka Iwańskiego powinien wydrukować na ekranie: Zadanie_3 Napisz program Zamiana cali na centymetry. Program powinien pobrać od użytkownika jedną liczbę rzeczywistą oznaczającą długość wyrażoną w calach (np. 1) po czym wydrukować na ekranie podaną długość po zmianie jednostki długości na centymetry (np. 2,54). Każda drukowana na ekranie oraz wczytywana z klawiatury liczba powinna być poprzedzona odpowiednim opisem (np. PODAJ DŁUGOŚĆ WYRAŻONĄ W CENTYMETRACH DL=).

Zadanie_4 Napisz program przeliczający wielkość kąta wyrażoną w stopniach na radiany. Zadanie_5 Napisz program Pole trójkąta. Program powinien pobrać z klawiatury dwie liczby będące długością podstawy i wysokością trójkąta, a następnie wydrukować na ekranie liczbę wyrażającą pole powierzchni danego trójkąta. Zadanie_6 Napisz program który oblicza ile litrów paliwa zużywa pojazd na 100km. Program wczytuje pokonana drogę w [km] oraz zużyte paliwo w litrach [l]. Zadanie_7 Prędkość w ruchu jednostajnym prostoliniowym może być określona uproszczonym wzorem v=s/t, gdzie s to droga przebyta w czasie t. Napisać program wyliczający prędkość v program wczytuje drogę s i czas jej przebycia t (są to dowolne liczby rzeczywiste) i wyświetla wynik. Program powinien na samym początku wyświetlić krótką informację o jego przeznaczeniu oraz zatrzymać swoje wykonanie po wyświetleniu wyniku do czasu naciśnięcia klawisza Esc. Zadanie_8 Cena brutto to cena netto powiększona o pewien podatek, wyrażony procentowo. Jeżeli coś kosztuje netto 100zł, a kwota podatku to 22%, cena brutto wynosi 122zł. Napisać program, który wyznaczy cenę brutto na podstawie ceny netto oraz podatku wyrażonego procentowo program wczytuje cenę netto, podatek wyrażony procentowo (są to dowolne liczby rzeczywiste) i wyświetla wynik. Program powinien na samym początku wyświetlić krótką informację o jego przeznaczeniu oraz zatrzymać swoje wykonanie po wyświetleniu wyniku do czasu naciśnięcia klawisza Esc. Zadanie_9 Wynagrodzenie pewnego pracownika to liczba przepracowanych godzin przemnożona przez stawkę godzinową. Napisać program, który wyznaczy wynagrodzenie pracownika po wczytaniu liczby przepracowanych godzin oraz stawki (są to dowolne liczby rzeczywiste). Dodatkowo program ma wyznaczyć, ile pracownik zarobił na dniówkę, zakładając, że pracuje zawsze, równo 8 godzin. Program powinien na samym początku wyświetlić krótką informację o jego przeznaczeniu oraz zatrzymać swoje wykonanie po wyświetleniu wyników do czasu naciśnięcia klawisza Esc. Zadanie_10 Szybkostrzelność teoretyczna karabinka automatycznego AK (Automat Kałasznikowa) wynosi 600strzałów/minutę. Magazynek karabinka mieści 30 naboi. Napisać program, który wczyta wyrażony w sekundach czas (dowolna liczba całkowita) trwania ognia ciągłego, prowadzonego z takiego karabinka. Ćwiczeniem programu jest wyznaczyć liczbę magazynków, które trzeba by wymienić, aby strzelać ogniem ciągłym przez wprowadzony czas. Program powinien na samym początku wyświetlić krótką informację o jego przeznaczeniu oraz zatrzymać swoje wykonanie po wyświetleniu wyniku do czasu naciśnięcia klawisza Esc. Zadanie_11 Sportowiec w trakcie jednego treningu spala średnio 1500 kalorii. Napisać program, który wczyta: ile razy sportowiec trenuje w tygodniu, i ile planuje tygodni trenować (dowolne liczby całkowite). Na tej podstawie program ma wyliczyć ile kilokalorii sportowiec spali w tym okresie czasu. Program powinien na samym początku wyświetlić krótką informację o jego przeznaczeniu oraz zatrzymać swoje wykonanie po wyświetleniu wyniku do czasu naciśnięcia klawisza Esc. Zadanie_12 Napisać program wczytujący liczbę całkowitą należącą do przedziału (1..150] (lewostronnie otwarty, prawostronnie domknięty). Liczba ta określa wiek pewnej osoby. Zadaniem programu jest stwierdzenie czy ta osoba jest pełnoletnia (pełnoletnie są osoby od 18-go roku życia) czy nie. Dodatkowo, dla osób niepełnoletnich należy wyznaczyć i wyprowadzić informację ile lat pozostało do osiągnięcia pełnoletności, a dla osób pełnoletnich, od ilu lat są pełnoletnie. Program powinien umożliwiać wielokrotne wykonywanie opisanych czynności.

Zadanie_13 Napisać program wczytujący liczbę całkowitą należącą do przedziału (1..150] (lewostronnie otwarty, prawostronnie domknięty). Liczba ta określa wiek pewnej osoby. Zadaniem programu jest stwierdzenie czy ta osoba: posiada bierne prawo wyborcze (ukończone 18 lat), posiada czynne prawo wyborcze (ukończone 21 lat), może kandydować do senatu (ukończone 30 lat), może kandydować na prezydenta (ukończone 35 lat). Dodatkowo, dla osób niepełnoletnich należy wyznaczyć i wyprowadzić informację ile lat pozostało do osiągnięcia pełnoletności, a dla osób pełnoletnich, od ilu lat są pełnoletnie. Program powinien umożliwiać wielokrotne wykonywanie opisanych czynności. Zadanie_14 Napisać program wczytujący liczbę całkowitą należącą do przedziału [1..15] oraz liczbę rzeczywistą z przedziału [100, 1000] (oba przedziały obustronnie domknięte). Liczba całkowita określa wiek samochodu, liczba rzeczywista kwotę bazową pewnego ubezpieczenia samochodowego. Kwotę ostateczną ubezpieczenia ustala się w ten sposób, że kwotę bazową powiększa się o pewną sumę, zależnie od wieku pojazdu. Dla aut do 5-ciu lat włącznie, nie dolicza się dodatku, dla aut o wieku (5, 10] dolicza się 50zł, dla aut (10, 15] dolicza się 100zł. Zadaniem programu jest wyliczenie kwoty ubezpieczenia, uwzględniającej dodatek zależny od wieku pojazdu. Program powinien umożliwiać wielokrotne wykonywanie opisanych czynności. Zadanie_15 Napisać program wczytujący liczbę całkowitą należącą do przedziału [1..31] oraz liczbę rzeczywistą z przedziału [50, 200] (oba przedziały obustronnie domknięte). Liczba całkowita określa liczbę dniówek przepracowanych przez pewnego pracownika, liczba rzeczywista stawkę za dniówką. Kwota wypłaty jest iloczynem liczby przepracowanych dniówek i stawki za dniówkę. Dla pracowników, którzy przepracowali od 20 do 15 dniówek dolicza się premię wysokości 100zł, dla tych, którzy przepracowali więcej niż 25 dniówek, dolicza się premię w wysokości 200zł. Zadaniem programu jest wyliczenie kwoty wypłaty, uwzględniającej dodatek zależny od liczby przepracowanych godzin. Program powinien umożliwiać wielokrotne wykonywanie opisanych czynności. Zadanie_16 Napisać program wczytujący liczbę całkowitą należącą do przedziału [1..31] oraz liczbę rzeczywistą z przedziału [50, 200] (oba przedziały obustronnie domknięte). Liczba całkowita określa liczbę dni opóźnienia zapłaty pewnej składki, liczba rzeczywista kwotę tej składki. Program ma wyznaczyć kwotę składki powiększoną o opłatę karną, wg. następującego regulaminu: jeżeli lb. Dni spóźnienia należy do przedziału [1, 10] opłata karna wynosi 10zł, jeżeli lb. Dni spóźnienia należy do przedziału [11, 20] opłata karna wynosi 15zł, jeżeli lb. Dni spóźnienia należy do przedziału [21, 31] opłata karna wynosi 25zł. Zadaniem programu jest wyliczenie kwoty składki, uwzględniającej opłatę karną wg. powyższego regulaminu. Program powinien umożliwiać wielokrotne wykonywanie opisanych czynności. Zadanie_18 Napisz program, który oblicza pierwiastki równania kwadratowego ax^2+bc+c=0. Zadanie_19 Napisz program kalkulator, który wczytuje dwie liczby rzeczywiste oraz znak operacji, a następnie zwraca wynik działania. Zadanie_20 Napisz program, który losuje liczbę z przedziału od 1 do 100. Zadaniem użytkownika jest odgadnięcie wylosowanej liczby. Funkcja, która losuje liczbę z zakresu od 1 do 100 rand() % 100 + 1; generator liczb losowych: srand( ( unsigned )time( NU ) ); Potrzebna biblioteka: #include <ctime>