Share
Viết chương trình nhập từ bàn phím một xâu kí tự S và thông báo ra màn hình: 1. Số lần xuất hiện của mỗi chữ cái tiếng Anh trong xâu S (không phân biệ
Question
Viết chương trình nhập từ bàn phím một xâu kí tự S và thông báo ra màn hình:
1. Số lần xuất hiện của mỗi chữ cái tiếng Anh trong xâu S (không phân biệt chữ hoa, chữ thường).
2. Đếm số kí tự không là chữ số trong xâu S.
3. Đưa ra màn hình kết quả kiểm tra xâu S có là xâu đối xứng hay không.
Cho em hỏi câu này với ạ
in progress
0
Tổng hợp
4 years
2021-04-24T02:49:53+00:00
2021-04-24T02:49:53+00:00 3 Answers
143 views
0
Answers ( )
Program FNG;
Uses crt;
Var S: String;
dem: array[‘A’..’Z’] of byte;
d,i: longint;
k: char;
Function doixung(St: String): boolean;
Var i: longint;
Begin
For i:=1 to length(St) div 2 do
If St[i]<>St[length(St)-i+1] then exit(false);
exit(true);
End;
Begin
Clrscr;
Write(‘Nhap S: ‘); Readln(S);
For i:=1 to length(S) do
S[i]:=Upcase(S[i]);
For k:=’A’ to ‘Z’ do
dem[k]:=0;
For i:=1 to length(S) do
If S[i] in [‘A’..’Z’] then inc(dem[S[i]]);
Writeln(‘Cau 1: ‘);
For k:=’A’ to ‘Z’ do
If dem[k]<>0 then Writeln(k,’: ‘,dem[k]);
For i:=1 to length(S) do
If S[i] in [‘0’..’9′] then inc(d);
Writeln(‘Cau 2: ‘,d);
If doixung(S) then Write(‘Cau 3: Doi xung’)
Else Write(‘Cau 3: Khong doi xung’);
Readln
End.
uses crt;
var s:string; //xau S
i:byte; //bien chay tu dau toi cuoi xau S
c:char; //bien chay tu ‘A’ den ‘Z’
a:array[#0..#255] of byte; //mang su dung phan tu la ky tu ASCII
n:byte; //dem so ky tu khong phai chu so
kt:boolean; //kiem tra doi xung
begin
clrscr;
write(‘nhap xau S:’); readln(s);
for i:=1 to length(s) do
begin
if((s[i]>=’a’) and (s[i]<=’z’)) or ((s[i]>=’A’) and (s[i]<=’Z’)) then inc(a[upcase(s[i])]);
//neu no nam trong khoang tu ‘a’ toi ‘z’ hoac tu ‘A’ toi ‘Z’ thi minh se +1 vao phan tu trong mang
if not (s[i] in [‘0’..’9′]) then inc(n); //neu no khong nam trong khoang ‘0’ den ‘9’ thi ta +1 vao bien n
end;
writeln(‘so lan xuat hien cua cac chu cai tieng Anh:’);
for c:=’A’ to ‘Z’ do if(a[c]<>0) then writeln(c,’ xuat hien ‘,a[c],’ lan’);
writeln(‘co ‘,n,’ ky tu khong la chu so trong xau S’);
kt:=true; //neu true sau khi thuc hien vong for thi la xau doi xung va nguoc lai, neu false thi khong doi xung
for i:=1 to length(s) div 2 do //minh chi can kiem tra xem 2 ben co bang nhau khong
if(s[i]<>s[length(s)-i+1]) then begin kt:=false; break; end;
if(kt=true) then writeln(‘xau S la xau doi xung’)
else writeln(‘xau S khong la xau doi xung’);
readln;
end.
Để tìm câu trả lời chính xác các em hãy tham khảo đếm số lần xuất hiện ký tự trong excel các nguồn hoc24.vn, lazi.vn, hoidap247.com để thầy cô và các chuyên gia hỗ trợ các em nhé!