Úkolem je realizovat program, který zobrazí tabulku pro násobilku.
Vstupem programu je celé číslo - mez n.
Výstupem programu je tabulka násobilky v rozsahu 1x1 až n x n. Tabulka je zobrazena bez duplicitních hodnot, tedy v trojúhelníkové podobě. Všechny sloupce mají stejnou šířku, šířka je dána počtem číslic v největším součinu v tabulce, zvětšeným o 1. Za posledním číslem na řádce následuje odřádkování, tedy na koncích řádky nejsou žádné bílé znaky navíc.
Pokud je vstup neplatný, program to musí detekovat a zobrazit chybové hlášení. Chybové hlášení zobrazujte na standardní výstup (ne na chybový výstup). Za chybu považujte:
- na vstupu není platné celé číslo,
- číslo na vstupu je záporné nebo nulové.
Ukázka práce programu:
Rozsah:
10
| 10 9 8 7 6 5 4 3 2 1
---+----------------------------------------
1| 10 9 8 7 6 5 4 3 2 1
2| 20 18 16 14 12 10 8 6 4
3| 30 27 24 21 18 15 12 9
4| 40 36 32 28 24 20 16
5| 50 45 40 35 30 25
6| 60 54 48 42 36
7| 70 63 56 49
8| 80 72 64
9| 90 81
10| 100
Rozsah:
8
| 8 7 6 5 4 3 2 1
--+------------------------
1| 8 7 6 5 4 3 2 1
2| 16 14 12 10 8 6 4
3| 24 21 18 15 12 9
4| 32 28 24 20 16
5| 40 35 30 25
6| 48 42 36
7| 56 49
8| 64
Rozsah:
32
| 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
----+----------------------------------------------------------------------------------------------------------------------------------------------------------------
1| 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
2| 64 62 60 58 56 54 52 50 48 46 44 42 40 38 36 34 32 30 28 26 24 22 20 18 16 14 12 10 8 6 4
3| 96 93 90 87 84 81 78 75 72 69 66 63 60 57 54 51 48 45 42 39 36 33 30 27 24 21 18 15 12 9
4| 128 124 120 116 112 108 104 100 96 92 88 84 80 76 72 68 64 60 56 52 48 44 40 36 32 28 24 20 16
5| 160 155 150 145 140 135 130 125 120 115 110 105 100 95 90 85 80 75 70 65 60 55 50 45 40 35 30 25
6| 192 186 180 174 168 162 156 150 144 138 132 126 120 114 108 102 96 90 84 78 72 66 60 54 48 42 36
7| 224 217 210 203 196 189 182 175 168 161 154 147 140 133 126 119 112 105 98 91 84 77 70 63 56 49
8| 256 248 240 232 224 216 208 200 192 184 176 168 160 152 144 136 128 120 112 104 96 88 80 72 64
9| 288 279 270 261 252 243 234 225 216 207 198 189 180 171 162 153 144 135 126 117 108 99 90 81
10| 320 310 300 290 280 270 260 250 240 230 220 210 200 190 180 170 160 150 140 130 120 110 100
11| 352 341 330 319 308 297 286 275 264 253 242 231 220 209 198 187 176 165 154 143 132 121
12| 384 372 360 348 336 324 312 300 288 276 264 252 240 228 216 204 192 180 168 156 144
13| 416 403 390 377 364 351 338 325 312 299 286 273 260 247 234 221 208 195 182 169
14| 448 434 420 406 392 378 364 350 336 322 308 294 280 266 252 238 224 210 196
15| 480 465 450 435 420 405 390 375 360 345 330 315 300 285 270 255 240 225
16| 512 496 480 464 448 432 416 400 384 368 352 336 320 304 288 272 256
17| 544 527 510 493 476 459 442 425 408 391 374 357 340 323 306 289
18| 576 558 540 522 504 486 468 450 432 414 396 378 360 342 324
19| 608 589 570 551 532 513 494 475 456 437 418 399 380 361
20| 640 620 600 580 560 540 520 500 480 460 440 420 400
21| 672 651 630 609 588 567 546 525 504 483 462 441
22| 704 682 660 638 616 594 572 550 528 506 484
23| 736 713 690 667 644 621 598 575 552 529
24| 768 744 720 696 672 648 624 600 576
25| 800 775 750 725 700 675 650 625
26| 832 806 780 754 728 702 676
27| 864 837 810 783 756 729
28| 896 868 840 812 784
29| 928 899 870 841
30| 960 930 900
31| 992 961
32| 1024
Rozsah:
asdf
Nespravny vstup.
Poznámky:
- Ukázkové běhy zachycují očekávané výpisy Vašeho programu (tučné písmo) a vstupy zadané uživatelem (základní písmo). Zvýraznění tučným písmem je použité pouze zde na stránce zadání, aby byl výpis lépe čitelný. Váš program má za úkol zobrazit text bez zvýrazňování (bez HTML markupu).
- Znak odřádkování (\n) je i za poslední řádkou výstupu (i za případným chybovým hlášením).
- Při programování si dejte pozor na přesnou podobu výpisů. Výstup Vašeho programu kontroluje stroj, který požaduje přesnou shodu výstupů Vašeho programu s výstupy referenčními. Za chybu je považováno, pokud se výpis liší. I chybějící nebo přebývající mezera/odřádkování je považováno za chybu. Abyste tyto problémy rychle vyloučili, použijte přiložený archiv se sadou vstupních a očekávaných výstupních dat. Podívejte se na videotutoriál (Courses -> Video tutoriály), jak testovací data použít a jak testování zautomatizovat.
- Výstup programu může být velmi široký/dlouhý, vyplatí se výstup přesměrovat do souboru a ten si prohlížet v nějakém editoru.