Viết chương trình nhập vào một câu
a) Kiểm tra xem xâu đó có là xâu đối xứng hay ko ?
b) Chuyển đổi xâu vừa nhập thành xâu in hoa
Viết chương trình nhập vào một câu
a) Kiểm tra xem xâu đó có là xâu đối xứng hay ko ?
b) Chuyển đổi xâu vừa nhập thành xâu in hoa
var s: string;
i, kt: byte;
Begin
Write(‘nhap xau: ‘); readln(s);
Kt:=1;
For i:=1 to (length(s) div 2) do
If s[i] <> s[length(s) – i + 1]
Then kt:=0;
If kt=1 then write(‘la xau doi xung’)
Else write(‘khong phai xau doi xung’);
For i:=1 to length(s) do
s[i]:=upcase(s[i]);
Readln
End.
uses crt;
var s,sg:string;
i:byte;
Begin
clrscr;
write(‘Nhap xau S: ‘);
readln(s);
for i:=length(s) DownTo 1 do sg:=sg+s[i];
if s = sg then writeln(s,’ la xau doi xung’) else writeln(s,’ khong la xau doi xung’);
writeln(‘Xau in hoa la: ‘,Upcase(s));
readln;
end.
Thuật toán cho câu a: bạn tạo 1 xâu phụ, chạy từ length(s) to 1, cộng sg:=sg+s[i], sau đó kiểm tra nếu s = sg thì 2 xâu là xâu đối xứng vì xâu đối xứng là xâu khi đảo ngược lại vẫn giống xâu ban đầu. Vote 5 sao và ctlhn cho mình nha