Разряд сотен и тысяч
На предыдущей странице мы рассматривали выделение цифр трехзначного числа. Здесь рассматриваются задачи Integer17 - Integer18 из задачника Абрамяна, где находим цифры разряда сотен и тысяч в числах, больших трехзначных.
Integer17. Дано целое число, большее 999. Используя одну операцию деления нацело и одну операцию взятия остатка от деления, найти цифру, соответствующую разряду сотен в записи этого числа.
Пусть мы имеем число 7829301, и нам нужно определить число сотен (цифру 3). Сначала мы удаляем две последние цифры – для этого разделим нацело данное число на 100: 7829301 div 100 = 78293
. Потом для выделения последней цифры 3 находим остаток от деления на 10: 78293 mod 10 = 3
. Эта последовательность описана в программе ниже.
Код Pascal
1
2
3
4
5
6
7
8
9
10
11
12 | var
N: word;
begin
write('Введите целое число, большее 999: ');
readln(N); { <-- вводим число }
writeln;
N := N div 100; { <== удаляем последние две цифры }
N := N mod 10; { <== последняя цифа полученного числа }
writeln('Число сотен: ', N);
readln
end. |
|
Integer18. Дано целое число, большее 999. Используя одну операцию деления нацело и одну операцию взятия остатка от деления, найти цифру, соответствующую разряду тысяч в записи этого числа.
Как и в задаче Integer17 выше, для определения цифры тысяч, сначала удалим последние 3 цифры, а потом в полученном числе выделим последнюю цифру. Например, для числа 123456789 число тычяч равно 6. Поэтому:
1) 123456789 div 1000 = 123456
;
2) 123456 mod 10 = 6
– это и будет результат.
Код Pascal
1
2
3
4
5
6
7
8
9
10
11
12 | var
N: longword;
begin
write('Введите целое число, большее 999: ');
readln(N); { <-- вводим число }
writeln;
{ Удаляем последние 3 цифры и в новом
числе находим последнюю цифру: }
writeln('Число тысяч: ', N div 1000 mod 10);
readln
end. |
|