Chuyên đề Bài tập về đối xứng

Chuyên đề Bài tập về đối xứng

{NHAP DAY A KIEM TRA XEM DAY A CO PHAI DAY DOI XUNG KHONG}

uses crt;

var a:array[1..100]of integer;

w1,k:string;

i,n,d:longint;

{-----------------------------------}

function doixung(s:string):boolean;

var i,m,n,kt1,kt2:integer; s1:string;

begin

s1:='';

for i:=length(s) downto 1 do

s1:=s1+s[i];

doixung:=(s1=s);

end;

{------------------------------------}

BEGIN

clrscr;

write('nhap so phan tu cua mang n=');readln(n);

write('nhap cac phan tu cua mang:');

for i:=1 to n do

begin

write('a[',i,']=');readln(a[i]);

end;

str(a[i],w1);

if doixung(w1) then

writeln('day a la day doi xung:')

else

writeln('day a la day khong doi xung:');

readln;

END.

doc 8 trang Mai Loan 16/09/2025 330
Bạn đang xem tài liệu "Chuyên đề Bài tập về đối xứng", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
 bµi tËp vª ®èi xøng
{NHAP DAY A KIEM TRA XEM DAY A CO PHAI DAY DOI XUNG KHONG}
uses crt;
var a:array[1..100]of integer;
w1,k:string;
i,n,d:longint;
{-----------------------------------}
function doixung(s:string):boolean;
var i,m,n,kt1,kt2:integer; s1:string;
begin
s1:='';
for i:=length(s) downto 1 do
s1:=s1+s[i];
doixung:=(s1=s);
end;
{------------------------------------}
BEGIN
clrscr;
write('nhap so phan tu cua mang n=');readln(n);
write('nhap cac phan tu cua mang:');
for i:=1 to n do
begin
 write('a[',i,']=');readln(a[i]);
end;
str(a[i],w1);
if doixung(w1) then
writeln('day a la day doi xung:')
else
writeln('day a la day khong doi xung:');
readln;
END.
....................................................................................................................................
{KIEM TRA N CO PHAI LA SO DOI XUNG KHONG}
uses crt;
var i,j,n,k,d,p:longint;
 dx:boolean;
a,b:array[1..100] of longint;
BEGIN
CLRSCR;
 write('nhap so n=');readln(n);
{LUU CAC CHU SO CUA SO N VAO MANG A}
 i:=0;
 repeat
 inc(i);
 a[i]:=n mod 10;
 n:=n div 10;
 until n=0;
{KIEM TRA TINH DOI XUNG CUA MANG A}
 j:=1;
 dx:=true;
 if i>1 then
 while (j<=trunc(i div 2)) and(dx) do
 begin
 dx:=a[j]=a[i-j+1];
 inc(j);
 end;
 1 end;
 inc(i);
 dec(k);
 m:=m1;
 end;
if d=trunc(m div 2) then writeln('so tren la so doi xung');
readln;
end.
...................................
 {DOC RA CAC SO DOI XUNG CO M CHU SO}
 uses crt;
 var n,m,i,d:longint;
 dx:boolean;
 T,A:array [1..1000] of longint;
 S:String;
 function mu(a,n:longint):longint;
 begin
 if a=0 then mu:=1 else mu:=mu(a-1,n)*n;
 end;
 BEGIN
 clrscr;
 write('Nhap vao so chu so m=');readln(m);
 for n:=mu(m-1,10) to mu(m,10)-1 do
 begin
 dx:=true;
 str(n,S);
 if length(S)>1 then
 begin
 i:=1;
 while dx and (i<=length(S) div 2) do
 begin
 dx:=(s[i]=s[length(s)-i+1]);
 inc(i);
 end;
 if dx then
 begin
 inc(d);
 if d=1 then writeln('Cac so doi xung la');
 write(n,' ');
 end;
 end;
 end;
writeln;
writeln('Co ',d,' so doi xung');
readln
END.
...........................................
program dxtp;
Uses Crt;
Var luu, n,i,j,d,k: integer;
 dx: boolean;
 a:array[1..100] of longint;
 b: array[1..10] of 0..9;
BEGIN
Clrscr;
 Write('N='); Readln(N);
for i:=1 to n do
begin write('a[',i,']=');readln(a[i]);end;
 3 { function DOIXUNG(n:longint):boolean;
 var i,k:integer;s,s1:string;
 begin
 str(n,s);
 s1:='';
 for i:= length(s) downto 1 do s1:=s1+s[i];
 doixung:=(s1=s);
 end;}
 function DOIXUNG(n:longint):boolean;
 var i,k:integer;s:string;
 begin
 str(n,s);
 DOIXUNG:=False;
 i:=1; k:=length(s);
 while i<k do
 begin
 if s[i]s[k] then exit;
 inc(i); dec(k);
 end;
 doixung:=true;
 end;
BEGIN
 Clrscr;
 Write('N='); Readln(N);
 for i:=1 to n do
 begin write('a[',i,']=');readln(a[i]);end;
 for i:=1 to n do
 begin
 if doixung(a[i]) then begin writeln(a[i],' '); inc(d);end;
 End;
 if d=0 then write('Trong mang khong co so doi xung!')
 Else writeln('Co tat ca ',d, 'so doi xung');
readln;
End.
............................................................................
{DUNG HAM MU}
program dxtp;
Uses Crt;
Var luu, i,j,d,k,h,t,n: longint;
 dx: boolean;
 a:array[1..100] of longint;
 b: array[1..10] of 0..9;
function MU(a,n:longint):longint;
 begin
 if n=0 then mu:=1
 else MU:=a*MU(a,n-1);
 end;
Begin
 Clrscr;
 Write('N='); Readln(N);
for i:=1 to n do
begin write('a[',i,']=');readln(a[i]);end;
d:=0;
for i:=1 to n do
 begin
 k:=0;t:=0;
 5 uses crt;
var i,n,k,d,j,m,m1:longint;
 a,b:array[1..100] of longint;
 dx,dx1:boolean;
begin
 clrscr;
 k:=0;
 for n:=1 to 999 do
 begin
 m:=n;
 i:=0;
 repeat
 inc(i);
 b[i]:=m mod 10;
 m:=m div 10;
 until m=0;
 dx:=true;
 j:=1;
 while (j<=i div 2) and dx do
 begin
 dx:=b[j]=b[i-j+1];
 inc(j);
 end;
 if dx then
 begin
 i:=0;
 m:=n;
 repeat
 inc(i);
 a[i]:=m mod 2;
 m:=m div 2;
 until m=0;
 dx:=true;
 j:=1;
 while (j<=i div 2) and dx do
 begin
 dx:=a[j]=a[i-j+1];
 inc(j);
 end;
 if dx then
 begin
 inc(d);
 if d=1 then
 write('Cac so vua doi xung thap phan vua doi xung nhi phan la :');
 write(n,' ');
 end;
 end;
end;
writeln;
write('Co ',d,' so');
readln;
end.
................................................................
hµm th­êng dïng
function DOIXUNG(s:string):boolean;
 var s1:string; i,m,n,kt1,kt2:integer;
 begin
 s1:='';
 7

Tài liệu đính kèm:

  • docchuyen_de_bai_tap_ve_doi_xung.doc