ОТ
Ольга Толли
Помогите с программой на паскаль
Все натуральные числа, начиная с 1, выписаны в одну строку без пробелов. Требуется написать программу определяющую, какая цифра стоит в этой строке на заданном месте.
Все натуральные числа, начиная с 1, выписаны в одну строку без пробелов. Требуется написать программу определяющую, какая цифра стоит в этой строке на заданном месте.
procedure Add1(var S : String);
var P : Byte;
begin
P := Length(S);
S[P] := Succ(S[P]);
while S[P] > '9' do
if P > 1 then begin S[P] := '0'; Dec(P); S[P] := Succ(S[P]); end
else begin S[P] := '0'; S := '1' + S; end;
end;
var K, N : Integer; S : String;
begin
Write('K = '); ReadLn(K);
N := 1; S := '1'; while N < K do begin Add1(S); N := N + Length(S); end;
WriteLn(S[Length(S) - N + K]);
end.