Differences

This shows you the differences between two versions of the page.

Link to this comparison view

courses:bd6b36pjv:ulohy:uloha_1 [2018/02/26 14:04] (current)
Line 1: Line 1:
 +{{indexmenu_n>​1}}
 +==== 1. úloha ====
  
 +Vytvořte jednoduchou kalkulačku. Program se postupně uživatele dotáže na operaci tak, že 1 odpovídá součtu, 2 rozdílu, 3 součinu a 4 podílu. Po volbě operace se program dotáže na dva operandy, které korektně označí podle zvolené operace - tj. pro součet se dotáže na sčítance, pro rozdíl na menšence a menšitele, pro součin na činitele a pro podíl na dělence a dělitele. Posledním vstupem programu je počet desetinných míst, která se použijí na tisk výsledku.
 +
 +Volba operace očekává celé číslo (1, 2, 3, 4). Operandy jsou reálná čísla. Počet desetinných míst je celé nezáporné číslo.
 +
 +Program musí ošetřit případné dělení nulou, či volbu nepodporované operace.
 +
 +Formát výstupu je: "​operand1 operátor operand2 = výsledek"​
 +Tak, že operandy i výsledek jsou formátovány na zadaný počet desetinných míst.
 +
 +<note tip>​Odevzdávejte jako zazipovaný projekt v NetBeans - jméno souboru =  <<​vaše jméno_1ULOHA>>​.zip''</​note>​
 +
 +<note important>​Navrhněte kód tak, aby bylo možné využít principu dědění v Úloze 2</​note>​
 +<note important>​Řešení musí být odolné nečíselným údajům a uživatelsky návodné v identifikaci chybného zadání</​note>​
 +
 +
 +Dodržte prosím doporučené textové výpisy dle ukázek níže. ​
 +
 +Za textem výběru operace není mezera, naopak za textem zadávání operandů mezera je. Např.:
 +<​code>​
 +Vyber operaci (1-soucet, 2-rozdil, 3-soucin, 4-podil):
 +Zadej scitanec:_
 +Zadej scitanec:_
 +Zadej pocet desetinnych mist:_
 +</​code>​
 +Zde znak podtržítka "​_"​ reprezentuje mezeru.
 +</​note>​
 +
 +==== Příklad komunikace programu ====
 +
 +<​code>​
 +Vyber operaci (1-soucet, 2-rozdil, 3-soucin, 4-podil):10
 +Chybna volba!
 +</​code>​
 +
 +<​code>​
 +Vyber operaci (1-soucet, 2-rozdil, 3-soucin, 4-podil):1
 +Zadej scitanec: 10.1234
 +Zadej scitanec: 42
 +Zadej pocet desetinnych mist: 2
 +10.12 + 42.00 = 52.12
 +</​code>​
 +
 +<​code>​
 +Vyber operaci (1-soucet, 2-rozdil, 3-soucin, 4-podil):2
 +Zadej mensenec: 1.23456
 +Zadej mensitel: 12.345678
 +Zadej pocet desetinnych mist: 3
 +1.235 - 12.346 = -11.111
 +</​code>​
 +
 +<​code>​
 +Vyber operaci (1-soucet, 2-rozdil, 3-soucin, 4-podil):3
 +Zadej cinitel: 12.345678
 +Zadej cinitel: 1.23456
 +Zadej pocet desetinnych mist: 3
 +12.346 * 1.235 = 15.241
 +</​code>​
 +
 +<​code>​
 +Vyber operaci (1-soucet, 2-rozdil, 3-soucin, 4-podil):4
 +Zadej delenec: 10
 +Zadej delitel: 0
 +Pokus o deleni nulou!
 +</​code>​
 +
 +<​code>​
 +Vyber operaci (1-soucet, 2-rozdil, 3-soucin, 4-podil):4
 +Zadej delenec: 10
 +Zadej delitel: 2
 +Zadej pocet desetinnych mist: 5
 +10.00000 / 2.00000 = 5.00000
 +</​code>​
 +
 +<​code>​
 +Vyber operaci (1-soucet, 2-rozdil, 3-soucin, 4-podil):1
 +Zadej scitanec: 10.234
 +Zadej scitanec: 1
 +Zadej pocet desetinnych mist: 0
 +10 + 1 = 11
 +</​code>​
 +
 +<​code>​
 +Vyber operaci (1-soucet, 2-rozdil, 3-soucin, 4-podil):1
 +Zadej scitanec: 10
 +Zadej scitanec: 20
 +Zadej pocet desetinnych mist: -1
 +Chyba - musi byt zadane kladne cislo!
 +</​code>​
courses/bd6b36pjv/ulohy/uloha_1.txt · Last modified: 2018/02/26 14:04 by vanapet1