Zadania programistyczne

teoria a, b, c, d

3. Quiz geograficzny

Napisz program tworzący mapę, w której kluczami będą nazwy europejskich państw, a wartościami — ich stolice (lista państw i ich stolic znajduje się w załączonym pliku Stolice.txt). Program powinien wybierać losowo nazwę państwa i prosić użytkownika o podanie nazwy jego stolicy. Program powinien także zliczać poprawne i błędne odpowiedzi dopóki suma poprawnych albo błędnych odpowiedzi nie osiągnie sumy 5

Wskazówka: w celu wyświetlania polskich znaków ą, ę itd użyj na początku programu komend:
		setlocale(LC_ALL, "Polish_Poland.1250");  // Ustaw lokalizację na pl  
	  
Przykład:
	#include <bits/stdc++.h>
	using namespace std;

	int main() 
	{
     setlocale(LC_ALL, "Polish_Poland.1250");  // Ustaw lokalizację na polską 

     cout << "Zażółć gęślą jaźń\n";
     return 0;
	} 
	  

4. Szyfrowanie i deszyfrowanie pliku

Napisz program wykorzystujący mapę, w której każdej literze alfabetu będzie przypisany określony „kod”, na przykład:

map<char, char> codes = {
  {'A', '$'}, {'a', '9'}, {'B', '©'}, {'b', '#'}, // itd…
};

Kody zapisane zostały w pliku kody_znakow.txtProgram powinien otwierać zadany plik do zaszyfrowania tekst.txt a następnie zaszyfrować jego zawartość i zapisywać wynik do drugiego pliku. Napisz drugi program do deszyfrowania, który odczytuje zaszyfrowany plik i wyświetla jego zawartość.

5. Analiza pliku tekstowego

Napisz program, który odczytuje zawartość dwóch plików tekstowych i porównuje je w następujący sposób:

Wskazówka: do wykonania analizy wykorzystaj metody klasy set.

6. Częstość słów

Napisz program odczytujący zawartość pliku tekstowego. Program powinien tworzyć mapę, w której kluczami będą unikatowe słowa użyte w pliku, a wartościami — liczby ich wystąpień. Jeżeli na przykład słowo „jest” występuje w pliku 128 razy, mapa powinna zawierać element z kluczem „jest” i wartością 128. Program powinien wyświetlać na ekranie lub zapisywać w drugim pliku listę słów i liczby ich wystąpień.

Wskazówka: wykorzystaj mapę

7. Indeks słów

Napisz program odczytujący zawartość pliku tekstowego. Program powinien tworzyć mapę zawierającą następujące pary klucz-wartość:

Załóżmy, że słowo „robot” występuje w wierszach 7, 18, 94 i 138. Niech mapa zawiera element, w którym kluczem jest słowo „robot”, a wartością — zbiór liczb 7, 18, 94 i 138.

Program po utworzeniu mapy powinien tworzyć drugi plik tekstowy z indeksem słów. W pliku tym mają być zapisywane w porządku alfabetycznym słowa użyte w oryginalnym pliku wraz z numerami wierszy, w których zostały zastosowane.

Rysunek 17.9 przedstawia zawartość przykładowego pliku tekstowego (17/Mazowsze.txt) i pliku z indeksem (17/Indeks.txt).

Przykładowy plik tekstowy i indeks
Wskazówka: wykorzystaj map<.code>