Warning
This page is located in archive. Go to the latest version of this course pages. Go the latest version of this page.

5 - Strukturované datové typy

  • pro vyučující: 05

Procvičovaná témata

  • Struktury, uniony, pole
  • Ukazatele

Úkoly na cvičení

  1. Napište program, který bude pracovat s komplexními čísly.
    • Komplexní čísla budou realizována pomocí struktur.
    • Implementujte funkce pro operace s komplexními čísly
  2. Napište program, který vypíše jednotlivé byty čísla typu int
    • Pro realizaci využijte datový typ union
  3. Napište program, který vypíše mantisu, exponent a znaménko čísla typu float
    • Výsledek můžete ověřit např. na wikipedii
    • Tip na vylepšení příkladu: vypočítejte zpětně původní číslo :-)
    • Pozn. řešení pomocí unionu a bitového pole ve struktuře předpokládá, že pracujeme s 32-bitovou reprezentací reálného čísla odpovídající specifikaci podle IEEE 754.
  4. Napište program, který provede inicializaci 1D pole.
    • Velikost pole zadá uživatel ze standardního vstupu. (Kompilujte program s podporou standardu C99.)
    • Pole naplňte celými čísly ze standardního vstupu.
    • Doplňte program tak, aby prošel pole pomocí cyklu a vypsal jednotlivé prvky pole. Zkuste napsat cyklus tak, aby program vypsal pole ve více sloupcích.
    • Napište funkci, která vypíše prvky pole, které je jejím argumentem. Jak C zjistí velikost pole ve funkci?

Další úkoly na procvičení (domácí práce)

  1. Napište program, který zrealizuje součet zlomků. Zlomek reprezentuje struktura (čitatel, jmenovatel), pro nalezení největšího společného dělitele použijte např. Eukleidův algoritmus.
  2. Napište program, který v poli nalezne N-té největší číslo.
  3. Napište program, vypočítá průměr a střední kvadratickou odchylku v poli celých čísel.
  4. Napište program, který vypíše prvočísla v zadaném intervalu pomocí algoritmu známého jako Eratosthenovo síto.
courses/b0b99prpa/labs/lab05.txt · Last modified: 2019/10/29 22:18 by viteks