Xétdãysốnguyêna1, a2,. . .,an, . ..,trong đóa1=1,anđượcxácđịnh như sau:đảo ngượcthứtự viết các chữ số của an-1 (trong hệ cơ số 10) và cộng thêm 2 vào số nhậnđược. Phần đầu của dãy số này có giá trị như sau: Chỉ số 1 2 3 4 5 6 7 8 . . . Dãy a 1 3 5 7 9 11 13 33 . . . Yêu cầu: Cho số nguyên dương n. Hãy xác định an (1 ≤ n ≤ 1012). Dữ liệu: Vào từ file văn bản SEQUENCE.INP gồm nhiều tests, mỗi test cho trên một dòng chứa một số nguyên n. Kết quả: Đưa ra file văn bản SEQUENCE.OUT, kết quả mỗi test đưa ra trên một dòng.

1 câu trả lời

uses crt;
Var n,i,x:integer;
    a:array[1..1024] of longint;
    s:string;
begin
 clrscr;
 write('nhap n');readln(n);
 a[1]:=1;
 for i:=2 to n do
  begin
   x:=a[i-1]; s:='';
   while x>0 do
    begin
     s:=s+chr(x mod 10+48);
     x:=x div 10;
    end;
   val(s,x);a[i]:=x+2;
  end;
 for i:=1 to n do write(a[i],' ');
 readln;
end.

Câu hỏi trong lớp Xem thêm