Giúp mik với ạ........ Giải thích sẵn viết code giúp mik với!!!!!!!!!!!!!! Dãy các số tự nhiên được viết ra thành một dãy vô hạn trên đường thẳng: 1234567891011121314..... (1) Yêu cầu: Cho biết số nguyên dương K và tìm số nằm ở vị trí thứ K trong dãy (1) ở trên và số đó thuộc vào số nào? TIMSO.INP TIMSO.OUT 15 2 12 150 8 80
2 câu trả lời
uses crt;
var d:text; i,m,n:longint; s:string;
begin
clrscr;
assign(d,'input.pas');reset(d);
readln(d,n);
close(d);
assign(d,'output.pas');rewrite(d);
repeat
inc(i);
str(i,s);
inc(m,length(s));
until m>=n;
writeln(s[abs(n-(m-length(s)))]);
writeln(s);
close(d);
readln
end.
/////////////////////
Thuật toán:
Ta chạy cho đến khi độ dài của dãy (1) >= n.
Trong khi đó ta tăng i lên và đổi i thành xâu s, m sẽ tăng lên m+length(s);
Sau khi repeat xong ta xuất phần tử s làm tròn n-(m-length(s))!
uses crt;
var d:text; i,m,n:longint; s:string;
begin
clrscr;
assign(d,'input.pas');reset(d);
readln(d,n);
close(d);
assign(d,'output.pas');rewrite(d);
repeat
inc(i);
str(i,s);
inc(m,length(s));
until m>=n;
writeln(s[abs(n-(m-length(s)))]);
writeln(s);
close(d);
readln
end.