Var a, b: integer;
begin readln(a,b);
while (a<>b) do
if a>b then a:=a-b
else b:=b-a;
writeln('наибольший общий делитель', a);
readln;
end.
ппппппненапишу
ттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееббббббббббббббббббббббббббббббббббббббббббббббббббббббббббееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееее
Ответ:
Борис - 1
Олег - 2
Алексей - 3
Евгений - 4
Михаил - 5
Объяснение:
Первые три условия нам понятны (ставим крестик в таблице как сказано в условиях)
Михаил отстал от Алексея на два места: это означает что Михаил не может быть на первом и втором месте или четвертым(из 1 условия), Алексей не может быть на 4 или 5 месте.
Олег финишировал сразу за Борисом: Борис не мог стоять на пятом месте, а Олег на пятом.
Когда мы заполнили табличку крестиками, смотрим кто куда подходит.
Алексей: - X - X X
Борис:. X - - - X
Евгений: X - - - X
Михаил: X X - - -
Олег: - - - - X
На пятом месте стоит Михаил, Алексей на 3( из условия 4 ), Олег 2 и Борис 1,а Евгений 4(т.к. другие месторасположения мест противоречили бы 5 условию)
Ну алгоритм: просто суммируешь поочерёдно.(можно кубиками нарисовать, но это мне делать не удобно, тем более не сложно)
Вот прога на паскале:
program sym
var p:array[1..12] of integer;
s,i:integer;
Begin
s:=0;
For i:=1 to 12 do
p[i]:=i*i; //если нет уже готового массива
For i:=1 to 12 do
s:=s+p[i];
write(s)
end.
Ну тут кстати массив излишен, если надо просто найти сумму:
program sym1
var s,i:integer;
Begin
s:=0;
For i:=1 to 12 do
s:=s+i*i;
write(s)
end.
Я у себя не проверял, но должно работать)
Для перевода необходимо умножить разряд числа на соответствующую ему степень разряда.
1110102<span> = 2</span>5*1 + 24*1 + 23*1 + 22*0 + 21*1 + 20*0 = 32 + 16 + 8 + 0 + 2 + 0 = 58
Ответ: 1110102<span>=58</span>