Построить блок схему к задаче. Указать тип
алгоритма, что дано и что нужно найти:
1. Известны две скорости: одна в километрах в час, другая — в метрах в
секун- ду. Какая из скоростей больше?
2.Напечатать таблицу перевода расстояний в дюймах в сантиметры для значе- ний 10, 11,
..., 22 дюйма (1 дюйм = 25,4 мм).
//Pascal ABC.NET v3.1 сборка 1172
Type
ty=record
sub,name,ot,ul,kv,ho:string;
mo,ye:integer;
end;
Var
ar1,ar2:array of ty;
k,i,n:integer;
s:string;
begin
readln(k);
setlength(ar1,k);
n:=0;
for i:=0 to k-1 do
begin
write('Введите фамилию рабочего №',i+1,':'); readln(ar1[i].sub);
write('Введите имя рабочего:№',i+1,':'); readln(ar1[i].name);
write('Введите отчество рабочего:№',i+1,':'); readln(ar1[i].ot);
write('Введите улицу проживания рабочего:№',i+1,':'); readln(ar1[i].ul);
write('Введите дом проживания рабочего:№',i+1,':'); readln(ar1[i].ho);
write('Введите квартиру проживания рабочего:№',i+1,':'); readln(ar1[i].kv);
write('Введите месяц поступления на работу рабочего:№',i+1,':'); readln(ar1[i].mo);
write('Введите год поступления на работу рабочего:№',i+1,':'); readln(ar1[i].ye);
end;
write('Введите искомую улицу:'); readln(s);
writeln('Результаты:');
for i:=0 to k-1 do
begin
if ar1[i].ul=s then
begin
inc(n);
setlength(ar2,n);
ar2[n-1]:=ar1[i];
writeln('Рабочий #',i+1,',', ar2[n-1].sub,' ',ar2[n-1].name,' ',ar2[n-1].ot);
writeln('Адрес:',ar2[n-1].ul,' ',ar2[n-1].ho,',',ar2[n-1].kv);
writeln('Дата поступления на работу:',ar2[n-1].mo,',',ar2[n-1].ye);
end;
end;
end.
Пример ввода:
3
Введите фамилию рабочего №1:Хацуне
Введите имя рабочего:№1:Мику
Введите отчество рабочего:№1:Ивановна
Введите улицу проживания рабочего:№1:Омотесандо
Введите дом проживания рабочего:№1:23
Введите квартиру проживания рабочего:№1:34
Введите месяц поступления на работу рабочего:№1:1
Введите год поступления на работу рабочего:№1:1998
Введите фамилию рабочего №2:Двачевская
Введите имя рабочего:№2:Алиса
Введите отчество рабочего:№2:Петровна
Введите улицу проживания рабочего:№2:Пушкина
Введите дом проживания рабочего:№2:223
Введите квартиру проживания рабочего:№2:34
Введите месяц поступления на работу рабочего:№2:2
Введите год поступления на работу рабочего:№2:1997
Введите фамилию рабочего №3:Персунов
Введите имя рабочего:№3:Семён
Введите отчество рабочего:№3:Олегович
Введите улицу проживания рабочего:№3:Омотесандо
Введите дом проживания рабочего:№3:23
Введите квартиру проживания рабочего:№3:34
Введите месяц поступления на работу рабочего:№3:6
Введите год поступления на работу рабочего:№3:2000
Введите искомую улицу:Омотесандо
Пример вывода:
Результаты:
Рабочий #1,Хацуне Мику Ивановна
Адрес:Омотесандо 23,34
Дата поступления на работу:1,1998
Рабочий #3,Персунов Семён Олегович
Адрес:Омотесандо 23,34
Дата поступления на работу:6,2000
мой вариант - немного не логичный с некоторой стороны, но попытаюсь объяснить почему 29:
--
О - 16 - 10000 в двоичной системе, если посмотреть, то именно 5 цифр получается, что возможно нам и подходит.
Д - 5 - 101 возможно, это потому что две 55, и добавляем единицу в конце
Т - 20 - 10100 тут образуются все 5 цифр, и как перед этим (Д - 5), получаем 101
Ч - 26 - 11010 тут просто добавляется 1 в перед
и далее 55555, так как с 5555 получили просто впереди 1, то скорее всего, и тут добавляется 1, и получаем число 11101 = 29