S:=1; - переменной s присваивается начальное значение 1 for i := 10 to 99 do - начало цикла с параметром, i - параметр цикла, 10 - начальное значение параметра, 99 - конечное значение параметра. Т.е. цикл будет выполняться 90 раз, параметр i будет принимать последовательно значения 10, 11, 12, ..., 99. if (i mod 13 = 0) and (i mod 2 <> 0) then - условный оператор. В условии используется операция mod - определение остатка от целочисленного деления. (i mod 13 = 0) - это условие будет выполняться для чисел, которые делятся на 13 без остатка; (i mod 2 <> 0) - это условие будет выполняться для чисел, которые делятся на 2 с остатком (это нечетные числа). Таким образом, условие (i mod 13 = 0) and (i mod 2 <> 0) будет иметь значение true для нечетных чисел, которые делятся на 13 без остатка (это 13, 39, 65, 91). Программа в целом вычисляет произведение нечетных чисел, которые делятся на 13 без остатка. (В программе есть ошибка. Тип переменной s должен быть integer.)
Var arnx,armx,arny,army,delMmax:array[1..1000] of real; N,M,res,i,j:integer; min:real; begin min:=maxreal; {не уверен существует ли эта константа в fpc, если что, она равна максимальному значению типа real} readln(N); for i:=1 to N do readln(arnx[i],arny[i]); readln(M); for i:=1 to M do begin readln(armx[i],army[i]); delMmax[i]:=-1; for j:=1 to N do if delMmax[i]<sqrt(sqr(armx[i]-arnx[j])+sqr(army[i]-arny[j])) then delMmax[i]:=sqrt(sqr(armx[i]-arnx[j])+sqr(army[i]-arny[j])); if delMmax[i]<min then begin min:=delMmax[i]; res:=i; end; end; writeln(res); end.
Пример ввода: 3 2 1 1 2 1 1 3 1 5 3 3 4 2 Пример вывода: 2
for i := 10 to 99 do - начало цикла с параметром, i - параметр цикла, 10 - начальное значение параметра, 99 - конечное значение параметра. Т.е. цикл будет выполняться 90 раз, параметр i будет принимать последовательно значения 10, 11, 12, ..., 99.
if (i mod 13 = 0) and (i mod 2 <> 0) then - условный оператор. В условии используется операция mod - определение остатка от целочисленного деления. (i mod 13 = 0) - это условие будет выполняться для чисел, которые делятся на 13 без остатка; (i mod 2 <> 0) - это условие будет выполняться для чисел, которые делятся на 2 с остатком (это нечетные числа). Таким образом, условие (i mod 13 = 0) and (i mod 2 <> 0) будет иметь значение true для нечетных чисел, которые делятся на 13 без остатка (это 13, 39, 65, 91).
Программа в целом вычисляет произведение нечетных чисел, которые делятся на 13 без остатка.
(В программе есть ошибка. Тип переменной s должен быть integer.)
Var
arnx,armx,arny,army,delMmax:array[1..1000] of real;
N,M,res,i,j:integer;
min:real;
begin
min:=maxreal;
{не уверен существует ли эта константа в fpc, если что, она равна максимальному значению типа real}
readln(N);
for i:=1 to N do
readln(arnx[i],arny[i]);
readln(M);
for i:=1 to M do
begin
readln(armx[i],army[i]);
delMmax[i]:=-1;
for j:=1 to N do
if delMmax[i]<sqrt(sqr(armx[i]-arnx[j])+sqr(army[i]-arny[j]))
then
delMmax[i]:=sqrt(sqr(armx[i]-arnx[j])+sqr(army[i]-arny[j]));
if delMmax[i]<min
then
begin
min:=delMmax[i];
res:=i;
end;
end;
writeln(res);
end.
Пример ввода:
3
2 1
1 2
1 1
3
1 5
3 3
4 2
Пример вывода:
2