begin
var (a, b) := ReadInteger2; // Считывание a и b
var simple := ArrFill(b + 1, true); // Инициализация булевого массива значением true.
// Реализация решета Ератосфена
for var i := 2 to b do
if simple[i] then
begin
var j := i * i;
while (j <= b) do
begin
simple[j] := false;
j += i;
end;
end;
// Вывод на экран найденного результата
for var i := a to b do
if (simple[i]) and (i > 1) then i.Print
end.
Из 100 туристов:
немецким30; только немецким30 -8 -5-3= 14
английским28; только английским 28 -8-10-3= 7
французским42; только французским... 42-10- 5-3=24
английским и немецким8; только англ.и немец8-3= 5
английским и французским10; только англ.и француз10-3= 7
немецким и французским5; только немец.и француз5-3= 2
всеми тремя языками3; только англ.,немец.,француз3
не владеют ни одним языком ..?; не владеют100-14-7-24-5-7-2-3=38