Warning
This page is located in archive.

HW06 - ASCII art (+bonus)

Termín odevzdání: 27.12.2019 23:59 CET

Hodnocení: 6b (+6b bonus)

Zadání

  • Ze standardního vstupu načtěte dvě přirozená čísla v rozsahu 3 až 69, včetně obou těchto krajních hodnot.
  • Z načtených čísel “vykreslete” do souboru output.txt domeček podle předlohy níže.
  • První číslo udává šířku domečku, druhé výšku domečku. Viz Příklad 1.
  • Pokud se nepodaří načíst obě čísla, tak vypište na standardní výstup zprávu: “Error: Chybny vstup!” a program ukončete. Viz Příklad 2.
  • Obě čísla (jak šířka, tak výška) musí být v daném intervalu. V případě, že tomu tak není, vypište na standardní výstup zprávu: “Error: Vstup mimo interval!” a program ukončete. Viz Příklad 3.
  • První číslo reprezentující šířku musí být vždy liché. Pokud tomu tak není vypište na standardní chybový výstup chybovou hlášku: “Error: Sirka neni liche cislo!” a program ukončete. Viz Příklad 4.
  • Každý řádek končí znakem nového řádku, který je ihned za posledním symbolem na řádku ('X'), nebo ('|') pro volitelné zadání.

Příklad 1

Vstupní hodnoty (stdin) Výstup (output.txt) Výstup (stdout)
7 4
   X
  X X
 X   X
XXXXXXX
X     X
X     X
XXXXXXX
žádný

Příklad 2

Vstupní hodnoty (stdin) Výstup (output.txt) Výstup (stdout)
x 16
žádný
Error: Chybny vstup!

Příklad 3

Vstupní hodnoty (stdin) Výstup (output.txt) Výstup (stdout)
-4 16
žádný
Error: Vstup mimo interval!

Příklad 4

Vstupní hodnoty (stdin) Výstup (output.txt) Výstup (stdout)
8 21
žádný
Error: Sirka neni liche cislo!

Bonusové zadání

  • V případě, že jsou první dvě čísla shodná, načtěte třetí kladné celé číslo, které udává délku a výšku plotu. Viz Příklad 5.
  • Velikost plotu musí být kladná a ostře menší než je výška domu. V případě, že tomu tak nebude, uvědomte o tom uživatele zprávou na standardní výstup ve znění: “Error: Neplatna velikost plotu!” a program ukončete. Viz Příklad 6.
  • Horizontální části plotu jsou vždy na prvním a posledním řádku plotu. Pravá část plotu končí vždy svislou plaňkou, takže první řádek plotu vypadá pro velikost 2 takto: “-|”, pro velikost 3: “|-|” a pro velikost 4: “-|-|” atd.
  • Domeček je vyplněn znaky 'o' a '*', přičemž v levém horním rohu je vždy znak 'o' a znaky tvoří diagonály.

Příklad 5

Vstupní hodnoty (stdin) Výstup (output.txt) Výstup (stdout)
9 9 6
    X
   X X
  X   X
 X     X
XXXXXXXXX
Xo*o*o*oX
X*o*o*o*X
Xo*o*o*oX-|-|-|
X*o*o*o*X | | |
Xo*o*o*oX | | |
X*o*o*o*X | | |
Xo*o*o*oX | | |
XXXXXXXXX-|-|-|
žádný

Příklad 6

Vstupní hodnoty (stdin) Výstup (output.txt) Výstup (stdout)
5 5 x
žádný
Error: Chybny vstup!

Příklad 7

Vstupní hodnoty (stdin) Výstup (output.txt) Výstup (stdout)
5 5 10
žádný
Error: Neplatna velikost plotu!
courses/bab37zpr/hw/hw06.txt · Last modified: 2019/12/16 10:35 by viteks