Tin học Xâu

R.Lucky

Học sinh mới
Thành viên
20 Tháng hai 2019
5
2
6
21
Hà Tĩnh
THPT Chuyên Hà Tĩnh
#include <bits/stdc++.h>
using namespace std;
int main(){
string s; int dema=0,demb=0;
cin>>s;
for (int i=0;i<s.length();i++){
if ((int(s)>=48) &&(int(s)<=57)) dema++;
if (((s>='a')&&(s<='z'))||((s>='A')&&(s<='Z'))) demb++;
}
cout<<dema<<" "<<demb;
}

p.s: Bạn xem thử code có chạy không nhé tại mình chưa chạy thử. Tiện thể cho mình hỏi cách viết code trên diễn đàn với ạ!
 

Trâm Nguyễn Thị Ngọc

Giải Nhất event Thế giới Sinh học 2
Thành viên
13 Tháng mười 2018
1,523
1,339
216
18
Quảng Trị
Trường TH&THCS Hải Ba
Đề 1:https://diendan.hocmai.vn/threads/tin-11.738675/#post-3709272
Đề 2
Mã:
Var
 s:string;
 d1,d2,i:integer;
Begin
 readln(s);
d1;=0;d2:=0;
 For i:=1 to length(s) do
  If s[i] in ['0'..'9'] then d1:=d1+1
  else d2:=d2+1;
writeln('so cac pt chu so la:',d1);
write('so cac pt ki tu la:',d2);
readln
End.
 
Last edited:

R.Lucky

Học sinh mới
Thành viên
20 Tháng hai 2019
5
2
6
21
Hà Tĩnh
THPT Chuyên Hà Tĩnh
Đề 1:https://diendan.hocmai.vn/threads/tin-11.738675/#post-3709272
Đề 2
Mã:
Var
 s:string;
 d1,d2,i:integer;
Begin
 readln(s);
d1;=0;d2:=0;
 For i:=1 to length(s) do
  If s[i] in ['0'..'9'] then d1:=d1+1
  else d2:=d2+1;
writeln('so cac pt chu so la:',d1);
write('so cac pt ki tu la:',d2);
readln
End.
Cho mình hỏi nếu như xâu S có mặt các kí hiệu như '&', '$','{','}',..... thì sao? Bạn viết như vậy chưa chắc đã đúng!
 

Trâm Nguyễn Thị Ngọc

Giải Nhất event Thế giới Sinh học 2
Thành viên
13 Tháng mười 2018
1,523
1,339
216
18
Quảng Trị
Trường TH&THCS Hải Ba
Cho mình hỏi nếu như xâu S có mặt các kí hiệu như '&', '$','{','}',..... thì sao? Bạn viết như vậy chưa chắc đã đúng!
Vậy thì sửa lại cái khúc else ý là:
Mã:
Else if not(s[i] in ['0'..'9'] ) then d2:=d2+1:
 

Trâm Nguyễn Thị Ngọc

Giải Nhất event Thế giới Sinh học 2
Thành viên
13 Tháng mười 2018
1,523
1,339
216
18
Quảng Trị
Trường TH&THCS Hải Ba
Nếu như vậy cũng có khác gì đâu?????
Bạn phải cho vòng if như sau:
Mã:
   if (s[i] in ['a'..'z']) or s[i] in ['A'..'Z']) d2:=d2+1;
Sao mà không khác được bạn, ngày từ đầu code đã đúng rồi
Đầu tiên kiêm tra s[ i ] nếu là chữ số thì cộng vào d1, còn nếu không phải thì cộng vào d2 nên các ký tự như { ,; cũng sẽ được cộng nha
 

R.Lucky

Học sinh mới
Thành viên
20 Tháng hai 2019
5
2
6
21
Hà Tĩnh
THPT Chuyên Hà Tĩnh
Sao mà không khác được bạn, ngày từ đầu code đã đúng rồi
Đầu tiên kiêm tra s[ i ] nếu là chữ số thì cộng vào d1, còn nếu không phải thì cộng vào d2 nên các ký tự như { ,; cũng sẽ được cộng nha
Kí tự là a,b,c,....z hoặc A,B,C,... Z chứ ?????
 
Top Bottom