Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
ZveřejnilEliáš Štěpánek
1
Algoritmy I Cvičení č. 2
2
Cíl hodiny Datové typy a přetypování (int, float, double, bool, char, long, short) Konstanty – Celočíselné Desítkové – 15, 0, 1, 150L Oktalové – 065, 015, 0, 01 Šestnáctkové – 0X3A, 0xcd, 0x1, 0XCD – Reálné 0.124,.775, 3.14, 10.14f – Řetězcové "Retezec" – Znakové např. \n, \\, \", \0, 'a' Řídící struktura if Operátory (==, !=,, =, !) Operátor sizeof Formátování výstupů
3
Úloha č.1 Dělení dvou čísel – Vstup: dva celé čísla – A.) Výstup: Podíl těchto dvou čísel (celočíselné dělení a zbytek po celočíselném dělení – B.) Výstup: Podíl těchto dvou čísel (reálné dělení)
4
Úloha č.2 Výpočet obvodu a obsahu kruhu – Vstup: průměr (ne poloměr!) – Výstup: obvod a obsah kruhu
5
Úloha č.3 Program načte číslo v rozsahu od 0 do 255 (nemusíte kontrolovat správnost vstupu). Toto číslo program vypíše v dekadické, osmičkové a hexadecimální soustavě. Dále toto číslo převede na znak (char), bool, float a double a vypíše jeho hodnotu na obrazovku.
6
Úloha č.4 Vypište do konzole přesně následující text: James Bond \ "Agent 007" \ # 150% zaruka # / Spol. S rucenim omezenym
7
Úloha č.5 Napište program, který přečte 3 celá čísla a A.) Vypíše jejich aritmetický průměr B.) Seřadí je od nejmenšího po největší C.) Vypíše pouze ta, která jsou sudá D.) Pokud budou první dvě čísla stejná, přičte k poslednímu číslu 25% jeho hodnoty a vypíše jí na obrazovku E.) Pokud je druhé číslo větší (nebo rovno) než první a zároveň třetí větší (nebo rovno) než druhé, program vypíše text: “Cisla jsou serazena vzestupne” F.) Pokud je alespoň jedno ze zadaných čísel záporné, program vypíše text: “Jedno nebo vice cisel je zaporne.” G.) Místo výpisu textu v bodu F.) vypište proměnnou typu bool, do které uložíte true, pokud je splněna podmínka v bodě F.).
8
Úloha č.6 Napište program, který zjistí, zda-li je proměnná1 menší než proměnná2, pokud ano, vypíše o kolik by se musela proměnná1 zvýšit, aby se rovnaly. Je-li naopak proměnná1 větší než proměnná2, vypíše o kolik by se musela proměnná1 snížit, aby se rovnaly.
9
Úloha č.7 Vypište na obrazovku velikost alokované paměti pomocí operátoru sizeof v bytech, bitech a kilobytech. A.) pro proměnné typu char, int, bool, float, double, long B.) pro řetězcové konstanty "Ahoj", "A\nh\no\nj", "\\" C.) Porovnejte čísla, které vrátí sizeof(int), sizeof(char), atd… s výsledky v bodu A.)
10
Úloha č.8 Upravte a zkompilujte následující kód a zjistěte co program dělá. #include const float tenth = 0.1; const float one = 1.0; const float big = 1234567890.0; cout << "A. " << tenth << ", " << one << ", " << big << endl; cout << "B. " << fixed << tenth << ", " << one << ", " << big << endl; cout << "C. " << scientific << tenth << ", " << one << ", " << big << endl; cout << "D. " << fixed << setprecision(3) << tenth << ", " << one << ", " << big << endl; cout << "E. " << setprecision(20) << tenth << endl; cout << "F. " << setw(8) << setfill('*') << 34 << 45 << endl; cout << "G. " << setw(8) << 34 << setw(8) << 45 << endl;
11
Formátování pomocí manipulátorů endl odřádkování setw(n), width(n) minimální šířka zápisu left zarovnání výpisu doleva right zarovnání výpisu doprava, použijte jen s setw(n) setfill(ch) výplňový znak setprecision(n) nastaví počet desetinných míst fixed výpis s pevnou desetinnou čárkou scientific „vědecký“ formát výpisu (1.000000e-001) boolalpha, noboolalpha způsob výpisu logických hodnot
12
Co si zapamatovat? Umět vhodně používat typy int, float, bool, char Operátor sizeof vrací počet alokovaných bytů Přetypování (int->float, float->int, char->int, int- >char, int->bool, bool->int) Použití řídící struktury if Operátory ==, !=,, =, !, &&, || Rozdíl mezi celočíselným a reálným dělením Zbytek po celočíselném dělení (operátor %) Tvorba konstant
13
Domácí úkol Najděte dokumentaci k funkci printf a použijte jí v úloze č.8 a č.3 pro formátování výstupů. Příklad použití printf: #include printf("Ahoj");// vypíše Ahoj int cele_cislo = 10; printf("%d", cele_cislo);// vypíše 10 float cislo = 3.1415; printf("%.2f", cislo);// vypíše 3.14 printf("Prvni: %d, druhe %f\n", cele_cislo, cislo); // vypíše Prvni: 10, druhe 3.141500
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.