1 1 1 1 0 0 1 1 463/2=231/2=115/2=57/2=28/2=14/2=7/2=3/2=1 Важно разделить число так чтобы оно было без остатка если допустим число 463 не делится на 2 значит надо занять 1 тогда будет число 462 его разделим на 2 и т.д. а эту единицу необходимо записать над знаком деления если число делится пишим 0 над знаком деления и записываем получившееся число с права налево получается число 11001111 также и в восьмеричной системе счисления пишим остаток над знаком деления 7 1 463/8=57/8=7 ответ 717 Аналогично в 16 ричной СС 15 12 463/16=28/16=1 так как 15 у нас равно Е а 12 С ответ будет 1СЕ B) 1 0 0 1 1 1 0 1 0 0 1209/2=604/2=302/2=151/2=75/2=37/2=18/2=9/2=4/2=2/2=1 ответ с права налево 10010111001 1 7 2 1209/8=151/8=18/8=2 ответ 2271 9 В 1209/16=75/16=4 ответ 4В9 С) 0 1 0 1 0 1 1 0 362/2=181/2=90/2=45/2=22/2=11/2=5/2=2/2=1 ответ 101101010 2 5 362/8=45/8=5 ответ 552 А 6 362/16=22/16=1 ответ 16А D) 1 0 1 0 1 0 1 0 1 1 1 3925/2=1962/2=981/2=490/2=245/2=122/2=61/2=30/2=15/2=7/2=3/2=1 ответ 111101010101 5 2 5 3925/8=490/8=61/8=7 ответ 7525 5 5 3925/16=245/16=15 иил F ответ F55 Е) 1 1 0 1 1 0 1 0 0 0 11355/2=5677/2=2838/2=1419/2=709/2=354/2=177/2=88/2=44/2=22/2= 1 1 0 11/2=5/2=2/2=1 ответ 10110001011011 3 3 1 6 11355/8=1419/8=177/8=22/8=2 ответ 26133 В 5 С 11355/16=709/16=44/16=2 ответ 2С5В
Var n:integer; begin readln(n); writeln('Summary=',range(1,n).Where(x -> x mod 3=0).where(x -> x mod 10=2).Sum); writeln('Count=',range(1,n).Where(x -> x mod 3=0).where(x -> x mod 10=2).Count); end.
//"Школьный" вариант Var i,n,sum,co:integer; begin readln(n); for i:=1 to n do if (i mod 3=0) and (i mod 10=2) then begin co:=co+1; sum:=sum+i; end; writeln('Summary=',sum); writeln('Count=',co); end.
Пример ввода: 14 Пример вывода: Summary=12 Count=1
463/2=231/2=115/2=57/2=28/2=14/2=7/2=3/2=1 Важно разделить число так чтобы оно было без остатка если допустим число 463 не делится на 2 значит надо занять 1 тогда будет число 462 его разделим на 2 и т.д. а эту единицу необходимо записать над знаком деления если число делится пишим 0 над знаком деления и записываем получившееся число с права налево получается число 11001111
также и в восьмеричной системе счисления пишим остаток над знаком деления
7 1
463/8=57/8=7 ответ 717
Аналогично в 16 ричной СС
15 12
463/16=28/16=1 так как 15 у нас равно Е а 12 С ответ будет 1СЕ
B) 1 0 0 1 1 1 0 1 0 0
1209/2=604/2=302/2=151/2=75/2=37/2=18/2=9/2=4/2=2/2=1 ответ с права налево 10010111001
1 7 2
1209/8=151/8=18/8=2 ответ 2271
9 В
1209/16=75/16=4 ответ 4В9
С) 0 1 0 1 0 1 1 0
362/2=181/2=90/2=45/2=22/2=11/2=5/2=2/2=1 ответ 101101010
2 5
362/8=45/8=5 ответ 552
А 6
362/16=22/16=1 ответ 16А
D) 1 0 1 0 1 0 1 0 1 1 1
3925/2=1962/2=981/2=490/2=245/2=122/2=61/2=30/2=15/2=7/2=3/2=1 ответ 111101010101
5 2 5
3925/8=490/8=61/8=7 ответ 7525
5 5
3925/16=245/16=15 иил F ответ F55
Е) 1 1 0 1 1 0 1 0 0 0
11355/2=5677/2=2838/2=1419/2=709/2=354/2=177/2=88/2=44/2=22/2=
1 1 0
11/2=5/2=2/2=1 ответ 10110001011011
3 3 1 6
11355/8=1419/8=177/8=22/8=2 ответ 26133
В 5 С
11355/16=709/16=44/16=2 ответ 2С5В
//Продвинутый вариант
Var
n:integer;
begin
readln(n);
writeln('Summary=',range(1,n).Where(x -> x mod 3=0).where(x -> x mod 10=2).Sum);
writeln('Count=',range(1,n).Where(x -> x mod 3=0).where(x -> x mod 10=2).Count);
end.
//"Школьный" вариант
Var
i,n,sum,co:integer;
begin
readln(n);
for i:=1 to n do
if (i mod 3=0) and (i mod 10=2) then
begin
co:=co+1;
sum:=sum+i;
end;
writeln('Summary=',sum);
writeln('Count=',co);
end.
Пример ввода:
14
Пример вывода:
Summary=12
Count=1