Символы лат. алфавита от A=41H=4*16+1=65 до Z=5AH=5*16+10=90 Среди них кратны 2 и 3, то есть кратны 6, коды: B = 66, H = 72, N = 78, T = 84, Z = 90. В Паскале код буквы выводит функция ord(c), где с имеет тип char. Наоборот, букву по коду выводит функция chr(i), где i - число. Begin var i: integer for i := 66 to 91 do { begin writeln chr(i); i := i+5; end } End. В Паскале нельзя задать цикл с произвольным шагом (или можно, но я не помню, как), поэтому я внутри цикла прибавляю 5, а сам цикл прибавляет еще 1, и получается шаг 6. Если не получается, исправьте i+5 на i+6. В итоге вы должны получить буквы B, H, N, T, Z. Если надо еще и маленькие буквы, то их коды от a=61H=97 до z=7AH=122, из них кратны 6 : f = 102; l(L) = 108; r = 114; x = 120. Тогда нужно в прогамму добавить второй цикл: for i := 102 to 121 do { begin writeln chr(i); i := i+5; end } End.
Москва & Санкт-Петербург - синяя и красная области, 210 тыс. страниц Москва & Вышний Волочек - красная и жёлтая области, 270 тыс. страниц (Вышний Волочек | Санкт-Петербург ) & Москва - все три области, 350 тыс. результатов Москва & Cанкт-Петербург & Вышний Волочек - красная область, ? тыс. страниц
Если сложить количества страниц по первым двум запросам, то получется сумма, в которой синяя и желтая области учтены один раз, а красная дважды. Если вычесть результат третьего запроса, получится как раз то, что надо.
210 + 270 - 350 = 130
(Знающие формулу включений-исключений не рисуют картинки, а сразу используют то, что |A ∩ B| = |A| + |B| - |A ∪ B|)
Среди них кратны 2 и 3, то есть кратны 6, коды:
B = 66, H = 72, N = 78, T = 84, Z = 90.
В Паскале код буквы выводит функция ord(c), где с имеет тип char.
Наоборот, букву по коду выводит функция chr(i), где i - число.
Begin
var i: integer
for i := 66 to 91 do
{ begin
writeln chr(i);
i := i+5;
end }
End.
В Паскале нельзя задать цикл с произвольным шагом (или можно, но я не помню, как), поэтому я внутри цикла прибавляю 5, а сам цикл прибавляет еще 1, и получается шаг 6.
Если не получается, исправьте i+5 на i+6.
В итоге вы должны получить буквы B, H, N, T, Z.
Если надо еще и маленькие буквы, то их коды от a=61H=97 до z=7AH=122,
из них кратны 6 : f = 102; l(L) = 108; r = 114; x = 120.
Тогда нужно в прогамму добавить второй цикл:
for i := 102 to 121 do
{ begin
writeln chr(i);
i := i+5;
end }
End.
Москва & Санкт-Петербург - синяя и красная области, 210 тыс. страниц
Москва & Вышний Волочек - красная и жёлтая области, 270 тыс. страниц
(Вышний Волочек | Санкт-Петербург ) & Москва - все три области, 350 тыс. результатов
Москва & Cанкт-Петербург & Вышний Волочек - красная область, ? тыс. страниц
Если сложить количества страниц по первым двум запросам, то получется сумма, в которой синяя и желтая области учтены один раз, а красная дважды. Если вычесть результат третьего запроса, получится как раз то, что надо.
210 + 270 - 350 = 130
(Знающие формулу включений-исключений не рисуют картинки, а сразу используют то, что |A ∩ B| = |A| + |B| - |A ∪ B|)