Satrlarni solishtirish funksiyalari




Download 2,67 Mb.
Pdf ko'rish
bet135/164
Sana25.01.2024
Hajmi2,67 Mb.
#146073
1   ...   131   132   133   134   135   136   137   138   ...   164
Bog'liq
ALGORITMLASH VA DASTURLASH ASOSLARI

Satrlarni 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 
ning kodi=65 ning kodi=97 0 ning kodi=48 ning kodi=94 
ning kodi=66 ning kodi=98 1 ning kodi=49 <ning kodi=60 
ning kodi=67 ning kodi=99 2 ning kodi=50 >ning kodi=62 
ning kodi=68 ning kodi=100 3 ning kodi=51 ning kodi=47 
ning kodi=69 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 
ning kodi=71 ning kodi=103 6 ning kodi=54 ning kodi=58 
ning kodi=72 ning kodi=104 7 ning kodi=55 
ning kodi=73 ning kodi=105 8 ning kodi=56 
ning kodi=74 ning kodi=106 9 ning kodi=57 
ning kodi=75 ning kodi=107 probel ning kodi=32 
ning kodi=76 ning kodi=108 ! ning kodi=33 
ning kodi=77 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. 
 

Download 2,67 Mb.
1   ...   131   132   133   134   135   136   137   138   ...   164




Download 2,67 Mb.
Pdf ko'rish