7-§. MATNLAR BILAN ISHLASHGA DOIR MASALALAR
182*. 5 ta harfni so‘rovchi va ularni qo‘shib chiqaruvchi dastur tuzing (yo‘llanma: Concat funksiyasi yoki “+” amalidan foydalaning).
183*. 5 ta harfli A so‘zni belgilarini tagma-tag chiqaruvchi dastur tuzing (yo‘llanma: Copy funksiyasi yoki satrlarni massiv xususiyatidan foydalaning).
184*. Berilgan A so‘zni ekranning 3 ta joyida 3 xil rangda chiqaring.
Berilgan A so‘zni belgilari sonini qizil rangda chiqaring (yo‘llanma: Length funksiyasi).
Berilgan A, B va M so‘zlarini belgilarini umumiy sonini yashil rangda chiqaring (yo‘llanma: Length funksiyasi).
187*. Berilgan A so‘zni belgilari sonini kvadratini, B so‘zni belgilari sonini kubini va M so‘zni belgilari sonini uchlanganini yig‘indisini yashil rangda chiqaring (yo‘llanma: Length funksiyasi).
188. Berilgan A va B so‘zlarini belgilarini umumiy sonidan M so‘zni belgilari sonini ayirib pushti rangda izoh bilan chiqaring (yo‘llanma: Length funksiyasi).
189*. Juft sondagi belgilar qatnashgan A so‘z berilgan. Belgilari sonini yarmini, belgilarni yarmini izohli va rangli chiqaring (yo‘llanma: Length va Copy funksiyalari yoki Length funksiyasi va Delete protsedurasi).
190. Toq sondagi belgilar qatnashgan A so‘z berilgan. Belgilari sonidan bitta kam sonni yarmini izohli va rangli chiqaring (yo‘llanma: Length funksiyasi va 2 ga butun bo‘lish (div) amali).
191*. A so‘zni kiritib birinchi va oxirigi belgilarini turli rangda chiqaring.
Yechim:
A so‘zni String turda kiritamiz. Shuning uchun satrlarni massiv xususiyatiga ko‘ra birinchi belgisi A[1], oxirgi belgisi A[Length(A)] bo‘ladi. Bu qiymatlarni Char turdagi B va O o‘zgaruvchilarga o‘zlashtiramiz.
Masala yechimini Copy(A,1,1) va Copy(A,Length(A),1) funksiyalari yordamida ham yozish mumkin. Copy funksiyasi natijasi String turda bo‘ladi, shuning uchun bu qiymatlarni String[1] turdagi B va O o‘zgaruvchilarga o‘zlashtiramiz.
|
Dasturi:
Uses Crt;
Var A: String; B, O: Char;
Begin
Write('A so`zni kiriting: ');Readln(A);
B:=A[1]; O:=A[Length(A)];
TextColor(2);
WriteLn('Birinchi belgi: ', B);
TextColor(11);
WriteLn('Oxirgi belgi: ', O); ReadLn; End.
|
Dasturi:
Uses Crt;
Var A: String; B, O: String[1];
Begin
Write('A so`zni kiriting: '); Readln(A);
B:=Copy(A,1,1);O:=Copy(A,Length(A),1);
TextColor(2);
WriteLn('Birinchi belgi: ', B);
TextColor(11);
WriteLn('Oxirgi belgi: ', O); ReadLn; End.
|
192. A so‘zni kiritib birinchi, uchinchi va oxirgi belgilarini turli rangda chiqaring (yo‘llanma: Length va Copy funksiyalari, satrlarni massiv xususiyati).
193*. A so‘zni kiritib birinchi, oxiridan bitta oldingi va oxirgi belgilarini turli rangda chiqaring (yo‘llanma: Length va Copy funksiyalari, satrlarni massiv xususiyati).
A va B so‘zlarni birinchi 3 ta belgisidan yangi so‘z yasang (yo‘llanma: Length va Copy funksiyalari).
A va B so‘zlarni oxirgi 3 ta belgisidan yangi so‘z yasang (yo‘llanma: Length va Copy funksiyalari).
196*. A so‘zni birinchi 3 ta belgisidan va B so‘zni oxirgi 2 ta belgisidan yangi so‘z yasang (yo‘llanma: Length va Copy funksiyalari).
197*. 5 ta belgili A so‘zni toq o‘rindagi belgilari va 4 ta belgili B so‘zni toq o‘rindagi belgilaridan yangi so‘z yasang (yo‘llanma: Length va Copy funksiyalari yoki Length va satrlarni massiv xususiyati).
198*. A so‘zni birinchi 3 ta va oxirgi 2 ta belgisini o‘chirib chiqaring.
Yechim:
A so‘zni String turda kiritamiz. Delete(A,1,3) protsedurasi A satrni birinchi
3 ta belgisini o‘chiradi. Delete(A,Length(A)–1,2); protsedurasi A satrni oxirgi 2 ta belgisini o‘chiradi.
Masalani A:=Copy(A,4,Length(A)–3); va A:=Copy(A,1,Length(A)–2); ko‘rinishdagi Copy va Length funksiyalari qatnashgan o‘zlashtirish operatori yordamida ham hal etish mumkin.
|
Dasturi:
Var A: String;
Begin
Write('A so`zni kiriting: '); Readln(A);
Delete(A,1,3);
Delete(A,Length(A)–1,2);
WriteLn('Hosil bo‘lgan A so`z: ', A); ReadLn; End.
|
Dasturi:
Var A: String;
Begin
Write('A so`zni kiriting: '); Readln(A);
A:=Copy(A,4,Length(A)–3);
A:=Copy(A,1,Length(A)–2);
WriteLn('Hosil bo`lgan A so`z: ', A); ReadLn; End.
|
199*. A so‘zni 3-dan 7-belgisigacha o‘chirib go‘zal chiqaruvchi dastur tuzing (yo‘llanma: Delete protsedurasidan foydalaning).
200*. “A” harf B so‘zda birinchi marta nechanchi o‘rinda uchrashini aniqlovchi dastur tuzing (yo‘llanma: Pos funksiyasidan foydalaning).
201*. Kamida 3 ta “A” harfi bor B so‘zda “A” harfi uchinchi marta nechanchi o‘rinda uchrashini aniqlovchi dastur tuzing.
Yechim:
B so‘zni String turda kiritamiz. Pos(A,B) funksiyasi A harfni birinchi marta nechanchi o‘rinda uchrashini aniqlaydi. Shuning uchun Delete(B,Pos(A,B),1); protsedurasi birinchi uchragan A harfni o‘chiradi. Yana Delete(B,Pos(A,B),1); protsedurasini qo‘llasak ikkinchi uchragan A harfni ham o‘chiramiz. Endi javob sifatida 2 ta harf o‘chirilganini hisobga olib Pos(A,B)+2 ni chiqaramiz.
|
Dasturi:
Var A: Char; B: String;
Begin
Write('A harfni kiriting: '); Readln(A); Write('B so`zni kiriting: '); Readln(B);
Delete(B,Pos(A,B),1); Delete(B, Pos(A,B),1);
WriteLn(A, ' harfi uchinchi marta ', Pos(A,B)+2, ‘ o`rinda uchraydi’); ReadLn; End.
|
202*. A so‘z B so‘zda birinchi marta nechanchi o‘rinda uchrashini aniqlovchi dastur tuzing (yo‘llanma: Pos funksiyasidan foydalaning).
203*. A harf B so‘zda 3 marta uchrashi aniq bo‘lsa, bu harf qaysi o‘rinlarda uchrashini aniqlovchi dastur tuzing.
Yechim:
B so‘zni String turda kiritamiz. Pos(A,B) funksiyasi A harfni birinchi marta nechanchi o‘rinda uchrashini aniqlagani uchun Joy1:=Pos(A,B) deb olamiz. Delete(B,Pos(A,B),1); protsedurasi birinchi uchragan A harfni o‘chiradi. Bitta belgi o‘chirilganini hisobga olib Joy2:=Pos(A,B)+1 deb olamiz. Delete(B,Pos(A,B),1); protsedurasini yana qo‘llasak ikkinchi uchragan A harfini ham o‘chiradi. Ikkita belgi o‘chirilganini hisobga olib Joy3:=Pos(A,B)+2 deb olamiz.
|
Dasturi:
Var
A: Char; B: String; Joy1, Joy2, Joy3 : Byte;
Begin
Write('A harfni kiriting: '); Readln(A);
Write('B so`zni kiriting: '); Readln(B);
Joy1:=Pos(A,B); Delete(B,Pos(A,B),1); Joy2:=Pos(A,B)+1;
Delete(B, Pos(A,B),1); Joy3:=Pos(A,B)+2;
WriteLn(A, ' harfi ', Joy1,', ', Joy2, ', ', Joy3, ' o`rinlarda uchraydi');
ReadLn; End.
|
204*. Kiritilgan A harfi ASCII kodini aniqlovchi dastur tuzing (yo‘llanma: Ord(A) yoki Integer(A) funksiyalari).
205*. Kiritilgan 5 ta harfli A so‘zni harflari ASCII kodini aniqlovchi dastur tuzing (yo‘llanma: satrlarni massiv xususiyatidan foydalanib belgilarni ajratib oling, so‘ng Ord(A) yoki Integer(A) funksiyalaridan foydalaning).
206. Kiritilgan 5 ta harfli so‘zni harflari ASCII kodlari yig‘indisini aniqlovchi dastur tuzing (yo‘llanma: satrlarni massiv xususiyatidan foydalanib belgilarni ajratib oling, so‘ng Ord(A) yoki Integer(A) funksiyalaridan foydalaning).
207*. ASCII kodi kiritilgan 256 dan kichik A natural songa mos harfni chiqaruvchi dastur tuzing (yo‘llanma: Chr(A) yoki Char(A) funksiyalari). 208*. 7 ta belgili A so‘zni teskarilovchi dastur tuzing.
Yechim:
A va TesA so‘zlarni String[7] turda tavsiflaymiz. Masalani bir necha xil usulda hal etish mumkin. Masalan:
Satrlarni massiv xususiyatiga ko‘ra kerakli so‘z quyidagicha bo‘ladi:
TesA:=A[7]+A[6]+A[5]+A[4]+A[3]+A[2]+A[1];
TesA:=Copy(A,7,1)+Copy(A,6,1)+Copy(A,5,1)+Copy(A,4,1)+
+Copy(A,3,1)+Copy(A,2,1)+Copy(A,1,1);
|
Dasturi:
Var A, TesA: String[7];
Begin
Write('A so`zni kiriting: '); Readln(A);
TesA:=A[7]+A[6]+A[5]+A[4]+A[3]+A[2]+A[1];
WriteLn(A, ' so`zga teskari so‘z ', TesA);
|
ReadLn; End.
209*. A so‘zni birinchi harfidan keyin B so‘zni joylashtiring (yo‘llanma: Insert protsedurasi yoki Copy funksiyasi va “+” amali).
210*. A so‘zni oxirigi harfidan oldin B so‘zni joylashtiring (yo‘llanma: Insert protsedurasi yoki Copy funksiyasi va “+” amali).
211*. Juft belgili A so‘zni o‘rtasiga B so‘zni joylashtiring (yo‘llanma: Length funksiyasi, butun bo‘lish va Insert protsedurasidan yoki Length funksiyasi, butun bo‘lish, Copy funksiyasi va “+” amali).
212. A so‘zni birinchi harfidan keyin B so‘zni, oxirgi harfidan oldin M so‘zni joylashtiring (yo‘llanma: Insert protsedurasi yoki Copy funksiyasi va “+” amali). 213. Noldan farqli 5 ta raqamli A natural son berilgan. Uning 2-o‘rindagi va 4o‘rindagi raqamlarini o‘chirib, son boshiga yozilganda hosil bo‘ladigan B sonni aniqlang.
Do'stlaringiz bilan baham: |