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

Все квадраты натуральных чисел записаны подряд, начиная с единицы. Определить, какая цифра стоит на N-м месте. Пример Ввода: 4 Вывода: 1
Гость
Ответ(ы) на вопрос:
Гость
Немного теории. Для того, чтобы избежать переполнения разрядной сетки, значение квадрата натурального числа не должно превышать максимального числа, представимого выбранным типом данных. В языке Паскаль числа типа longint записываются в четырех байтах в дополнительном коде, т.е. максимальное значение числа не может превышать 2³¹-1. Тогда максимальное натуральное число, квадрат которого мы можем вычислить, равно целой части от величины: [latex]\displaystyle \lim:= \sqrt{2^{31}-1} \approx 2^{31/2}=2^{15.5}= e^{15.5\cdot ln(2)}[/latex]  //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
Не нашли ответ?
Ответить на вопрос
Похожие вопросы