
Все квадраты натуральных чисел записаны подряд, начиная с единицы. Определить, какая цифра стоит на
N-м месте. Пример Ввода: 4 Вывода: 1

Ответы на вопрос

Для того, чтобы избежать переполнения разрядной сетки, значение квадрата натурального числа не должно превышать максимального числа, представимого выбранным типом данных.
В языке Паскаль числа типа longint записываются в четырех байтах в дополнительном коде, т.е. максимальное значение числа не может превышать 2³¹-1. Тогда максимальное натуральное число, квадрат которого мы можем вычислить, равно целой части от величины:
//PascalABC.Net 3.0, сборка 1066
var
s:string;
i,n,lim,l:longint;
begin
lim:=Trunc(exp(15.5*ln(2)));
Write('Введите номер позиции: '); Read(n);
i:=0; l:=0;
while (l<n) and (i<=lim) do begin
Inc(i); Str(i*i,s); l:=l+Length(s);
end;
if i<=lim then Writeln('Искомая цифра- ',s[Length(s)-l+n])
else Writeln('Решения в типе данных longint невозможно')
end.
Тестовое решение:
Введите номер позиции: 4
Искомая цифра- 1
Введите номер позиции: 33
Искомая цифра- 5



Для решения этой задачи мы можем использовать метод итерации. Мы знаем, что первые 9 чисел содержат только одну цифру, затем следующие 90 чисел содержат две цифры, и так далее. Мы можем использовать эту информацию, чтобы определить, на каком месте находится N-е число.
Давайте рассмотрим пример с числом 4. Сначала мы вычитаем 9 (поскольку первые 9 чисел содержат только одну цифру), и у нас остается 4-9=-5. Это означает, что 4-е число содержит две цифры. Теперь мы знаем, что у нас есть 90 чисел с двумя цифрами, и остается 5 чисел (из 90-ти), которые содержат две цифры. Таким образом, мы можем вычислить, что 4-е число содержит две цифры.
Теперь мы можем определить, какая цифра стоит на 4-м месте. Мы знаем, что первое двузначное число - это 10, второе - 11, третье - 12, и четвертое - 13. Таким образом, на 4-м месте стоит цифра 1.
Таким образом, ответ на задачу для числа 4 - это 1.
Мы можем применить этот метод к любому другому числу N, чтобы определить, какая цифра стоит на N-м месте.


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili