Satrlarni solishtirish funksiyalari

|
Satrlarni solishtirish funksiyalari Pdf ko'rish
|
bet | 135/164 | Sana | 25.01.2024 | Hajmi | 2,67 Mb. | | #146073 |
Bog'liq ALGORITMLASH VA DASTURLASH ASOSLARISatrlarni solishtirish funksiyalari
Satrlarni solishtirish funksiyalari satrdagi belgilarning kodlari bo‗yicha
solishtiradi. Shuning uchun dastlab klavituradagi ko‗p foydalaniladigan
belgilarning kodlarini aniqlash dasturini va uning natijasini keltiramiz.
#include
#include
using namespace std;
219
int main()
{ int x,y,z,n,m,t,i;
char
a[40]="ABCDEFGHIJKLMNOPQRSTUVWXYZ",b[30]="abcdefghijklmnopq
rstuvwxyz";
char c[40]="0123456789 !@#$%&*()+-=;,?^<>\/,.:";
for(i=0;i<=32;i++) {x=(int)a[i];y=(int)b[i];z=(int)c[i];
if(i<=25){cout<<" "< kodi="< cout<<" "< ning kodi="< system("pause");
return 0;
}
Dastur natijasi quyidagicha bo‗ladi
A ning kodi=65 a ning kodi=97 0 ning kodi=48 ^ ning kodi=94
B ning kodi=66 b ning kodi=98 1 ning kodi=49 <ning kodi=60
C ning kodi=67 c ning kodi=99 2 ning kodi=50 >ning kodi=62
D ning kodi=68 d ning kodi=100 3 ning kodi=51 / ning kodi=47
E ning kodi=69 e ning kodi=101 4 ning kodi=52 , ning kodi=44
F ning kodi=70 f ning kodi=102 5 ning kodi=53 . ning kodi=46
G ning kodi=71 g ning kodi=103 6 ning kodi=54 : ning kodi=58
H ning kodi=72 h ning kodi=104 7 ning kodi=55
I ning kodi=73 i ning kodi=105 8 ning kodi=56
J ning kodi=74 j ning kodi=106 9 ning kodi=57
K ning kodi=75 k ning kodi=107 probel ning kodi=32
L ning kodi=76 l ning kodi=108 ! ning kodi=33
M ning kodi=77 m ning kodi=109 @ ning kodi=64
N ning kodi=78 n ning kodi=110 # ning kodi=35
O ning kodi=79 o ning kodi=111 $ ning kodi=36
P ning kodi=80 p ning kodi=112 % ning kodi=37
Q ning kodi=81 q ning kodi=113 & ning kodi=38
R ning kodi=82 r ning kodi=114 * ning kodi=42
S ning kodi=83 s ning kodi=115 ( ning kodi=40
T ning kodi=84 t ning kodi=116 ) ning kodi=41
U ning kodi=85 u ning kodi=117 + ning kodi=43
V ning kodi=86 v ning kodi=118 - ning kodi=45
220
W ning kodi=87 w ning kodi=119 = ning kodi=61
X ning kodi=88 x ning kodi=120 ; ning kodi=59
Y ning kodi=89 y ning kodi=121 , ning kodi=44
Z ning kodi=90 z ning kodi=122 ? ning kodi=63
Satrlarni solishtirishda compare funksiyasining quyidagi bir nechta
ko‗rinishlaridan foydalaniladi.
a)s=satr1.compare (satr2);
Bunda satr1va satr2 lar solishtiriladi. Agar
satr1> satr2 bo„lsa s>0
satr1= satr2 bo„lsa s=0
satr1
bo‗ladi. Satrlarni solishtirishda, ularning mos nomerlaridagi belgilarining
ASCII kodlari solishtirilib ketilaveradi. Qaysidir nomerli belgilari bir-biridan farq
qilsa va ulardan qaysi birining kodi katta bo‗lsa, o‗sha satr katta hisoblanadi.
b) s=satr1.compare (n,m,satr2); ko‗rinishidan foydalanilganda satr1 ning n-
nomeridan keyingi m ta belgilari ketma-ketligi satr2 bilan solishtiriladi.
c) s=satr1.compare (n,m,satr2,i,j); ko‗rinishidan foydalanilganda satr1 ning
n-belgisidan keyingi m ta belgilari ketma-ketligi satr2 ning i-belgisidan keyingi j
ta belgilari ketma-ketligi bilan solishtiriladi.
Solishtirish funksiyasining imkoniyatlarini quyidagi dastur misolida namoyish
qilamiz.
#include
#include
using namespace std;
int main()
{ int x,y,z,n,m,t,s5,s6,s7,s8;
string s1="daraja ko‗rsatkichida",s2="ABCDEF",s3="ABCD";
string s4="daraja ko‗rsat",s9="ab",s10="aa3-";
s5=s2.compare(s3); cout<<"s5="<s6=s2.compare(s1); cout<<" s6="<s8=s9.compare(s10); cout<<" s8="<s7=s1.compare(s4); cout<<" s7="<x=s1.compare(0,14,s4); cout<<" x="<y=s2.compare(0,5,s3); cout<<" y="<z=s1.compare(1,4,s4,1,4); cout<<" z="<
221
n=s1.compare(3,4,s4,2,4); cout<<" n="<m=s1.compare(3,5,s4,3,4); cout<<" m="<system("pause");
return 0;
}
Dastur natijasi quyidagicha bo‗ladi
s5=2 s6=-1 s8=1 s7=7
x=0 y=1 z=0 n=-1 m=1
Satr xossalarini aniqlash funksiyalari
Satrning xossalarini aniqlash uchun quyidagi funksiyalardan foydalaniladi.
x=satr.size(); funksiyasi satr ning o‗lchamini aniqlaydi.
x=satr.length(); funksiyasi satr ning belgilari sonini aniqlaydi.
x=satr.max_size(); funksiyasi satr ning maksimal o‗lchamini aniqlaydi.
x=satr.capacity(); funksiyasi satr ning xotirada egallagan joyi hajmini
aniqlaydi.
x=satr.empty(); funksiyasi qiymati bool turli bo‗lib, agar satr bo‗sh bo‗lsa,
funksiya qiymati true, aks holda false bo‗ladi. Quyidagi dasturni va uning
natijalarini tahlil qling.
#include
#include
using namespace std;
int main()
{ int z,n,m,t,s6,s7,s8;bool x,y;float s5;
string s1="daraja ko‗rsatkichida",s2="ABCDEF",s3="ABCD";
string s4="daraja ko‗rsat",s9="ab87,/+|",s10="";
s5=s9.size(); cout<<"s5="<s6=s9.length(); cout<<" s6="<s8=s10.max_size(); cout<<" s8="<s7=s9.capacity(); cout<<" s7="<x=s9.empty(); cout<<" x="<y=s10.empty(); cout<<" y="<system("pause");
return 0;
}
Dastur natijasi quyidagicha bo‗ladi
s5=8 s6=8 s8=1073741820 s7=8
x=0 y=1
222
Nazariy savollar
1.String turi deganda nimani tushunasiz?
2.String turidagi o‗zgaruvchilarni e‘lon qilish
3.String turidagi o‗zgaruvchilarni elementlariga murojat qilishni tushuntirib
bering?
4.String turdagi satrlar ustida qanday amallar bajariladi va ularning yozilishi?
5.String turdagi satrlarni nusxalash funksiyasi va uning umumiy ko‗rinishi?
6.Satrning qismiga boshqa satrni o‗rnatish funksiyasi va uning umumiy ko‗rinishi?
7.Satr qismini o‗chirish funksiyasi va uning umumiy ko‗rinishi?
8.Satr tarkibidan satr qismini izlash funksiyasi va uning umumiy ko‗rinishi?
9.string turli o‗zgaruvchilar bilan satrli massivlar o‗rtasida nima farq bor?
10. string turli matnlarni qayta ishlashga mo‗ljallangan qanday funksiyalarini
bilasiz? Ularni tushuntiring.
11. 1) ―gdf3546^.,;‖, 2) ―9876543 %$#@!‖ satrlar uzunligini aniqlang.
12. Satrning o‗zini yoki uning biror qismini o‗chirish funksiyasi qaysi va u qanday
bajariladi?
13. Satrni songa va sonni satrga aylantirish funksiyalarini yozib, tushuntiring.
|
| |