Предмет: Информатика,
автор: DazaiOsamu14
Помогите пожалуйста!! Pascal.
С клавиатуры вводится натуральное число n, не превосходящее `2700`. Определите n-ую цифру в ряду: `100 101 102…999`. В данном ряду подряд выписаны все трехзначные цифры. На экран вывести одно число – искомую цифру.
Ответы
Автор ответа:
1
С функцией ord:
var
n, d: longint;
begin
readln(n);
n := n - 1;
d :=
(n div 300 + 1) * ord(n mod 3 = 0) +
(n div 3 mod 100 div 10) * ord(n mod 3 = 1) +
(n div 3 mod 10) * ord(n mod 3 = 2);
writeln(d);
readln
end.
Без ord:
var
n, d: longint;
begin
readln(n);
dec(n);
d :=
(n div 300 + 1) * (1 - (n mod 3 + 1) div 2) +
(n div 3 mod 100 div 10) * (n mod 3 mod 2) +
(n div 3 mod 10) * (n mod 3 div 2);
writeln(d);
readln
end.
Похожие вопросы
Предмет: Русский язык,
автор: миша318
Предмет: Окружающий мир,
автор: buratinaaa05
Предмет: Қазақ тiлi,
автор: aru78