Bạn chưa đăng nhập. Vui lòng đăng nhập để hỏi bài
anh đẹp zai

Số đảo ngược
Cho số nguyên A biểu diễn trong hệ thập phân có dạng a 1 a 2 …a N-1 a N . Ta gọi số nguyên A* mà
biểu diễn trong hệ thập phân có dạng a N a N-1 …a 2 a 1 (Có đúng N chữ số có nghĩa) là số đảo ngược
của A. Ta có thể định nghĩa tương tự như trên đối với số đảo ngược của một số trong hệ nhị phân.
Yêu cầu: Cho trước số nguyên dương K. Hãy tìm số lượng các số nguyên không âm A thoả mãn
A ≤ K và biểu diễn trong hệ nhị phân của A và A* là hai số đảo ngược của nhau.
Dữ liệu vào từ file văn bản: ‘daonguoc.INP’
Số K (K≤1000)
Dữ liệu ra ghi ra file văn bản: ‘daonguoc.OUT’
Số S là số lượng các số tìm được.
Ví dụ:

daonguoc.INP daonguoc.OUT
7                        5

(Giải thích: Với K = 7 Ta tìm được 5 số, đó là các số: 0, 1, 3, 5, 7)

Trần Đức Huy
29 tháng 1 2022 lúc 9:51

Viết bằng pascal dc k

 

Trần Đức Huy
29 tháng 1 2022 lúc 11:58

Var k,i,t:longint;
Function kt(n:longint):boolean;
Var s,x:string;
    d,m,j:longint;
Begin
s:=''
x:=''
j:=0;
d:=0;
 While n<>0 do
  Begin
   d:=n mod 2;
   n:=n div 2;
   Str(d,s);
   x:=x+s;
   j:=length(x)
  end;
s:=x;
For m:=1 to j do
 x[m]:=x[j-m+1];
If s=x then Exit(True) else Exit(False);
end;
Begin
{$ifndef online_JUDGE}
Assign(input,'standard.inp');
 Reset(input);
Assign(output,'standard.out');
 Rewrite(output);
{$endif}
Read(k);
For i:=1 to k+1 do
 Begin
  If kt(i-1) then inc(t);
 end;
Write(t);
end.

 


Các câu hỏi tương tự
NGUYỄN THỊ MỸ LINH
Xem chi tiết
huynh chinh
Xem chi tiết
huynh chinh
Xem chi tiết
Phương
Xem chi tiết
Mộng Chúc
Xem chi tiết
Khánh Như
Xem chi tiết
Hau Thai
Xem chi tiết
Phong Hoàng
Xem chi tiết
Vũ Kiệt
Xem chi tiết