Viết chương trình nhập vào xâu ký tự S , độ dài không quá 100 ký tự . Hãy chuẩn hóa xâu
- Xâu chuẩn là xâu không có dấu cách ở đầu câu , giữa 2 từ trong xâu chỉ có 1 dấu cách .
Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
Uses crt;
Var st:string;
I,d:integer;
Begin
Clrscr;
Write('nhap xau:'); readln(st);
D:=length(st);
While st[d]=#32 do
Begin
Delete(st,d,1);
D:=length(st);
End;
For i:=1 to d do
If (st[i]=#32) and (st[i+1]=#32) then delete(st,i,1);
Writeln(st);
Readln;
End.
uses crt;
var st:string;
i,d:integer;
begin
clrscr;
write('Nhap xau:'); readln(st);
d:=length(st);
writeln('Xau vua nhap la: ',st);
for i:=1 to d do
if st[i]=#32 then delete(st,i,1);
writeln('Xau moi la: ',st);
readln;
end.
#include <bits/stdc++.h>
using namespace std;
int d,i,d1;
string st;
int main()
{
getline(cin,st);
d=st.length();
while (st[0]==32)
{
st.erase(0,1);
}
while (st[d-1]==32)
{
st.erase(d-1,1);
}
d1=st.length();
for (i=0; i<d1; i++)
if ((st[i]==32) && st[i+1]==32)
{
st.erase(i,1);
i--;
}
cout<<st;
return 0;
}
Để chuẩn hóa xâu kí tự, ta sẽ loại bỏ các ký tự trống ở đầu và cuối xâu, sau đó loại bỏ các ký tự trống kề liền.
Để tìm số lượng kí tự chữ số trong xâu, ta sẽ duyệt qua từng ký tự của xâu và kiểm tra xem ký tự đó có phải là chữ số không.
Code Python để thực hiện yêu cầu đề bài như sau:
pythondef chuan_hoa_xau(s): # Xóa khoảng trắng ở đầu và cuối xâu s = s.strip() # Loại bỏ khoảng trắng kề nhau i = 0 while i < len(s) - 1: if s[i] == ' ' and s[i+1] == ' ': s = s[:i] + s[i+1:] else: i += 1 return s def dem_chu_so(s): count = 0 for c in s: if c.isdigit(): count += 1 return count # Đọc xâu kí tự từ input s = input() # Chuẩn hóa xâu s_chuan = chuan_hoa_xau(s) # Tìm số lượng kí tự chữ số so_luong_chu_so = dem_chu_so(s_chuan) # In ra kết quả print(s_chuan) print(so_luong_chu_so)Ví dụ:
Input:
csharpThis is an example 1234 string .Output:
csharpThis is an example 1234 string. 4Chương trình:
program bai_10_chuong_4;
uses crt;
var
s: string[100];
i, dem: integer;
Begin
clrscr;
write('Nhap xau vao:'); readln(s); dem:= 0;
for i:= 1 to length(s) do
if ('0'<=s[i]) and(s[i]<=’9') then dem:=dem+l;
Writeln('Trong xau s co '»dem,' chu so thap phan');
readln;
End.
uses crt;
var st:string;
i,d,dem:integer;
begin
clrscr;
write('Nhap xau:'); readln(st);
d:=length(st);
writeln('Xau vua nhap la: ',st);
dem:=0;
for i:=1 to d do
if st[i] in ['0'..'9'] then inc(dem);
writeln(dem);
readln;
end.
Uses crt;
Var st:string;
I,d:integer;
Begin
Clrscr;
Write('nhap xau:'); readln(st);
D:=length(st);
While st[d]=#32 do
Begin
Delete(st,d,1);
D:=length(st);
End;
For i:=1 to d do
If (st[i]=#32) and (st[i+1]=#32) then delete(st,i,1);
Writeln(st);
Readln;
End.