CourseWare Wiki
Switch Term
Winter 2023 / 2024
Winter 2022 / 2023
Winter 2021 / 2022
Winter 2020 / 2021
Winter 2019 / 2020
Winter 2018 / 2019
Older
Search
Log In
b191
courses
b0b36prp
hw
hw05
Warning
This page is located in archive. Go to the latest version of this
course pages
.
Differences
This shows you the differences between two versions of the page.
View differences:
Side by Side
Inline
Go
Link to this comparison view
Both sides previous revision
Previous revision
2019/11/14 07:04 faiglj [Příklad 4 - pub04-m]
2019/11/14 07:02 faiglj [Povinné zadaní]
2019/11/09 16:44 vanapet1 [Povinné zadaní]
2019/10/23 16:20 kubikji2 [Příklad 1 - pub01-o] typo
2019/09/18 16:55 vanapet1 [Odevzdání]
2019/09/18 16:54 vanapet1
2019/09/13 21:42 faiglj [HW 05 - Caesarova šifra]
2019/09/13 21:40 faiglj [HW 05 - Caesarova šifra]
2018/11/02 07:21 external edit
Go
2019/11/14 07:04 faiglj [Příklad 4 - pub04-m]
2019/11/14 07:02 faiglj [Povinné zadaní]
2019/11/09 16:44 vanapet1 [Povinné zadaní]
2019/10/23 16:20 kubikji2 [Příklad 1 - pub01-o] typo
2019/09/18 16:55 vanapet1 [Odevzdání]
2019/09/18 16:54 vanapet1
2019/09/13 21:42 faiglj [HW 05 - Caesarova šifra]
2019/09/13 21:40 faiglj [HW 05 - Caesarova šifra]
2018/11/02 07:21 external edit
Go
Last revision
Both sides next revision
courses:b0b36prp:hw:hw05 [2019/11/09 16:44]
vanapet1
[Povinné zadaní]
courses:b0b36prp:hw:hw05 [2019/11/14 07:02]
faiglj
[Povinné zadaní]
Line 10:
Line 10:
===== Povinné zadaní =====
===== Povinné zadaní =====
-
Naším úkolem je rozluštit zprávu zakódovanou [[https://en.wikipedia.org/wiki/Caesar_cipher|Caesarovou šifrou]], která funguje na principu záměny písmene z abecedy za písmeno posunuté o pevně určený počet míst. V našem případě máme k dispozici nejen zašifrovaný text, ale také nespolehlivě odposlechnuté originální znění zprávy, tj. některé znaky originální zprávy jsou chybně zapsány. Řešení tak můžeme založit na testování všech možností kódování Caesarovou šifrou a porovnání s odposlechnutým textem. Posun s největší shodou dekódovaného textu s odposlechnutou
zprávu
budeme považovat za správný a takto dekódovaný text je náš požadovaný výstup. Obecně nemusí tento postup vést na unikátní správné řešení, nicméně v testovaných případech vždy existuje unikátní řešení.
+
Naším úkolem je rozluštit zprávu zakódovanou [[https://en.wikipedia.org/wiki/Caesar_cipher|Caesarovou šifrou]], která funguje na principu záměny písmene z abecedy za písmeno posunuté o pevně určený počet míst. V našem případě máme k dispozici nejen zašifrovaný text, ale také nespolehlivě odposlechnuté originální znění zprávy, tj. některé znaky originální zprávy jsou chybně zapsány. Řešení tak můžeme založit na testování všech možností kódování Caesarovou šifrou a porovnání s odposlechnutým textem. Posun s největší shodou dekódovaného textu s odposlechnutou
zprávou
budeme považovat za správný a takto dekódovaný text je náš požadovaný výstup. Obecně nemusí tento postup vést na unikátní správné řešení, nicméně v testovaných případech vždy existuje unikátní řešení.
-
Jedním z cílů tohoto domácího úkolu je procvičení <wrap alert>dynamické alokace paměti na základě velikosti vstupu</wrap>. Proto délka vstupního textu není dopředu známa a je nutné v případě vyčerpání počáteční
velikost
(např. 10-100 znaků) dynamicky alokovat prostor větší, např. funkcí ''realloc''() pro dvojnásobnou délku. V programu používejte pouze množství paměti, které řádově odpovídá zadanému vstupu. Odevzdávací systém kontroluje velikost dynamicky alokované paměti.
+
Jedním z cílů tohoto domácího úkolu je procvičení <wrap alert>dynamické alokace paměti na základě velikosti vstupu</wrap>. Proto délka vstupního textu není dopředu známa a je nutné v případě vyčerpání počáteční
velikosti
(např. 10-100 znaků) dynamicky alokovat prostor větší, např. funkcí ''realloc''() pro dvojnásobnou délku. V programu používejte pouze množství paměti, které řádově odpovídá zadanému vstupu. Odevzdávací systém kontroluje velikost dynamicky alokované paměti.
**Použitá abeceda se skládá pouze z malých a velkých písmen bez diakritiky, tj. znaky v rozsahu [a-zA-Z].**
**Použitá abeceda se skládá pouze z malých a velkých písmen bez diakritiky, tj. znaky v rozsahu [a-zA-Z].**
courses/b0b36prp/hw/hw05.txt
· Last modified: 2019/11/14 07:04 by
faiglj