Zadanie 3. Jubiler

Pan Srebrny prowadzi firmę jubilerską zajmującą się produkcją naszyjników i pierścionków z najwyższej klasy surowców. Typy wyrobów oznaczane są liczbami od 1 do 9, a każda liczba oznaczająca typ wyrobu szyfrowana jest z użyciem algorytmu RSA.

Aby pan Srebrny mógł przeprowadzić spis utworzonych produktów, udostępniono mu dwie liczby pierwsze: q, na podstawie których wyznaczono klucz prywatny i klucz publiczny szyfru. Liczba p wynosi 3, a liczba q wynosi 7.

Zaszyfrowane liczby będące oznaczeniami produktów zapisane są w pliku bizuteria.txt, każda liczba w osobnym wierszu.

Plik bizuteria.txt zawiera 500 wierszy zawierających liczby naturalne z przedziału [1, 500]. Każda liczba to zaszyfrowane oznaczenie produktu.

Wyznacz klucz prywatny na podstawie podanych liczb pierwszych oraz sprawdź, ile zostało wyprodukowanych wyrobów o oznaczeniach 2 i 5. Zapisz te wartości (dwie liczby stanowiące klucz prywatny, liczbę wyprodukowanych produktów o oznaczeniach 2, liczbę wyprodukowanych produktów o oznaczeniach 5) w pliku wyniki.txt, rozdzielając je pojedynczym znakiem odstępu.

Przykład 1

Dla danych:

Linia 1. 7. Linia 2. 12. Linia 3. 16. Linia 4. 11. Linia 5. 16. Linia 6. 1. Linia 7. 17. Linia 8. 1. Linia 9. 12. Linia 10. 12.

oraz:

Linia 1. p znak równości 3. Linia 2. q znak równości 7.

plik wynikowy miałby następującą postać:

Linia 1. 5 21 1 1.

Napisz program, który wyznaczy klucz prywatny z użyciem podanych liczb pierwszych, a następnie wypisze, ile produktów z oznaczeniami 2 i 5 znajdowało się na liście.

Do oceny oddajesz:

  • plik wyniki.txt zawierający odpowiedź (cztery liczby naturalne oddzielone od siebie spacją; dwie pierwsze liczby to klucz prywatny; dwie kolejne to liczba wystąpień produktów o podanych numerach porządkowych),

  • plik(i) z komputerową realizacją zadania (kodem programu).

Plik wejściowy bizuteria.txt zawierający zaszyfrowane oznaczenia produktów znajduje się w załączniku:

R13veLUkyRg7T

Plik zawierający materiały do lekcji.

Plik bizuteria.txt.
Plik TXT o rozmiarze 1.74 KB w języku polskim
Praca domowa

Napisz program w wybranym języku programowania, a następnie sprawdź poprawność jego działania dla danych podanych w pliku bizuteria.txt.

Odpowiedź do zadania dla pliku bizuteria.txt znajduje się pod sekcją ćwiczeń.

11
Pokaż ćwiczenia:

Przetestuj działanie programu dla następujących produktów:

Linia 1. 7 przecinek 12 przecinek 16 przecinek 11 przecinek 16 przecinek 1 przecinek 17 przecinek 1 przecinek 12 przecinek 12 przecinek 11 przecinek 11 przecinek 11 przecinek 18 przecinek 6 przecinek 8 przecinek 17 przecinek 16 przecinek 17 przecinek 17 przecinek 18 przecinek 18 przecinek 12 przecinek 16 przecinek 12.

oraz wartości liczb pierwszych p = 3q = 7. Oblicz, ile zostało wyprodukowanych produktów o oznaczeniach 2 oraz 5.

1

JĘZYK C++

21
Ćwiczenie 1
R9iO1LqPOOuqg
Wymyśl pytanie na kartkówkę związane z tematem materiału.
1

JĘZYK JAVA

21
Ćwiczenie 2
R6w9Rl5WXy0pk
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.
1

JĘZYK PYTHON

21
Ćwiczenie 3
R18kPV9JMSYyC
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.

Odpowiedź

Odpowiedź do zadania dla danych zawartych w pliku bizuteria.txt:

R1CPQDXjyh1dZ

Przycisk do pobrania pliku TXT z wynikiem zadania.

Plik odpowiedzi.txt.
Plik TXT o rozmiarze 10.00 B w języku polskim