#1
begin
var N := ReadInteger();
var sum:real := 1;
for var i := 1 to N do sum *= 1 / i;
sum.println;
end.
#2
begin
var N := ReadInteger();
var sum:real := 1;
var divisor := 1;
while divisor <= N do begin
sum *= 1/divisor;
divisor += 1;
end;
sum.Println;
end.
#3
begin
var N := ReadInteger();
var sum:real := 1;
var divisor := 1;
repeat begin
sum *= 1/divisor;
divisor += 1;
end;
until divisor > N;
sum.Println;
end.
А вообще:
begin
SeqGen(ReadInteger(), p -> 1/p, 1).product.Println;
end.
тк Борисов жил с ученым из Ярославля, то Борисов не оттуда и не с Москвы и Санкт-Петербурга. следовательно, он с Новосибирска
Григорьев не Москвич и не с Ярославля. и теперь понятно, что не с Новосибирска. следовательно, он с Санкт-Петербурга
Егоров не с Москвы, остается один вариант, он с Ярославля
а Викторов значит с Москвы
можно сделать таблицу (по ней легко решать такие задачи):
Москва. Новосиб. С-п. Ярославль.
Борисов. - + - -
Викторов. + - - -
Григорьев. - - + -
Егоров. - - - +