По локальной сети регулярно перехватывались сообщения, состоящие только из цифр от 0 до 9. Некоторые косвенные данные позволили предположить, что сообщения содержат текст, вариант которого предлагается расшифровать. Известно, что сообщение 5 4 6 5 7 8 7 4 соответствует слову «Text».
Напишите, что содержится в следующем перехваченном сообщении:
5 4 6 8 6 9 7 3 2 0 6 9 7 3 2 0 7 3 6 5 6 3 7 2 6 5 7 4 2 0 7 4 6 5 7 8 7 4
tBook = record
author: string[20];
title: string[30];
year: integer
end;
var
f1: file of tBook;
function k2000(): integer;
{ файл должен быт открыт на чтение }
var
k: integer;
book: tBook;
begin
while not Eof(f1) do
begin
Read(f1, book);
if book.year < 2000 then k := k + 1
end;
k2000 := k
end;
var
B: tbook;
begin
Assign(f1, 'books.000');
Rewrite(f1);
Writeln('Для книги вводите в трех строках: автор, название, год издания');
Writeln('Введите * для завершения ввода');
repeat
Readln(B.author);
if B.author[1] <> '*' then
begin
Readln(B.title); Readln(B.year); Write(f1, B)
end
until B.author[1] = '*';
Close(f1);
Write('Количество книг, изданных до 2000г равно ');
Reset(f1);
Writeln(k2000);
Close(f1)
end.
Пример диалога с программой:
Для книги вводите в трех строках: автор, название, год издания
Введите * для завершения ввода
Александр Грин
Бегущая по волнам
1984
Эдгар Аллан По
Золотой жук
2002
Луи Буссенар
Капитан Сорви-голова
1997
Гарри Гаррисон
Крыса из нержавеющей стали
2007
А. и Б. Стругацкие
Сказка о Тройке
1974
*
Количество книг, изданных до 2000г равно 3
#include <ctime>
#include <iostream>
#include <iomanip>
using namespace std;
int main(int argc, char** argv) {
int n,k,j=0;
srand(time(NULL));
cout<<"n = "; cin>>n;
cout<<"k="; cin>>k; cout<<endl;
int a[n];
for (int i=0; i<n; i++)
{ a[i]=rand()/300; cout<<setw(5)<<a[i];
if (a[i]<k) j=i+1;
}
if (j>0) cout<<endl<<"ind = "<<j;
else cout<<endl<<"no elements";
return(0);
}