4. Dinamik ma‟lumotlar tuzilmasi haqida ma’lumot bering


“x2+x+41 formulani 0≤x≤41 qiymatlarda hisoblash natijasi tub sonhisoblanish, tasdig‟ini tekshirish uchun dastur tuzing


Download 418.97 Kb.
bet21/27
Sana22.01.2023
Hajmi418.97 Kb.
#1110285
1   ...   17   18   19   20   21   22   23   24   ...   27
Bog'liq
algoritm — копия (2)

70. “x2+x+41 formulani 0≤x≤41 qiymatlarda hisoblash natijasi tub sonhisoblanish, tasdig‟ini tekshirish uchun dastur tuzing.
#include
using namespace std;
int main(){
int x;
n: cout<<"x="; cin>>x;
if(0<=x && x<=41) { cout<<"y="< else { cout<<"41 dan kichik son kiriting"; goto n; }
return 0;
}
71. Musbat butun son berilgan. Jumlani rostlikka tekshiring: “Berilgan son
ikki xonali juft son”

#include
using namespace std;
int main(){
int a;
cout<<"a="; cin>>a;
if(a>=10 && a<100 && a%2==0) cout<<"Rost";
else cout<<"Yolg'on";
return 0;
}

72. Musbat butun son berilgan. Jumlani rostlikka tekshiring: “Berilgan son
uch xonali toq son”


#include
using namespace std;
int main(){
int a;
cout<<"a="; cin>>a;
if(a>=100 && a<1000 && a%2==1) cout<<"Rost";
else cout<<"Yolg'on";
return 0;
}

73. a, b, c butun sonlar berilgan. Jumlani rostlikka tekshiring: „a, b, c tomonli
uchburchak teng tomonli bo’ladi”


#include
using namespace std;
int main(){
int a,b,c;
cout<<"a="; cin>>a;
cout<<"b="; cin>>b;
cout<<"c="; cin>>c;
if(a==b && b==c ) cout<<"Rost";
else cout<<"Yolg'on";
return 0;
}

74. a, b, c butun sonlar berilgan. Jumlani rostlikka tekshiring: „a, b, c tomonli
uchburchak yasash mumkin”


#include
using namespace std;
int main() {
int a,b,c;
cout<<"a="; cin>>a;
cout<<"b="; cin>>b;
cout<<"c="; cin>>c;
if(a>0 && b>0 && c>0) cout<<"Rost";
else cout<<"Yolg'on";
return 0;
}

75. x, y sonlar berilgan. Jumlani rostlikka tekshiring: „Koordinatalari (x,y)
bo’lgan nuqta, koordinata choragining to‟rtinchisida yotadi“


#include
using namespace std;
int main() {
int a,b;
cout<<"x="; cin>>a;
cout<<"y="; cin>>b;
if(a>0 && b<0) cout<<"Rost";
else cout<<"Yolg'on";
return 0;
}

76. Sonli yozuvida bir xil raqamlari bo’lmagan barcha uch xonali sonlarni
o’sish tartibida chop qiling.


#include
using namespace std;
int main() {
int a,b,c,i;
for(i=100; i<1000; i++) {
a=i%10;
b=(i/10)%10;
c=i/100;
if(a==b || a==c || b==c) ;
else cout< return 0;
}


77. m va n natural sonlar berilgan 1n+2n+….+mn=? hisoblash dasturini tuzing
78. Yozuvida bir xil raqamlar bo‟lmagan barcha to‟rt xonali sonlarni ekranga
chiqaring.
80. n ta butun sonlar ketma-ketligini kiriting. Hamma musbat sonlar
yigэindisini toping.
81. Natural soni berilgan. Uning ikkita maksimal raqamini aniqlang.
82. Natural son berilgan. Uning maksimal va minimal raqamlarining
yig‟indisi a soniga karrali bo‟lishini aniqlang.
83. a dan b gacha bo‟lgan barcha butun sonlardan k ga teng bo‟linuvchisi
bo‟lgan sonlarni toping. Agar bu sonlar mavjud bo‟lmasa, u holda mos
xabarlar chop qilinsin.
84. Fibonachchi soni bo‟lgan n butun soni berilgan (n > 1). N soni
Fibonachchi ketma-ketligining nechanchi hadi ekanligini aniqlovchi
dastur tuzing.
85. N butun soni berilgan (n>1). N sonidan katta bo‟lgan birinchi
Fibonachchi sonini aniqlovchi dastur tuzilsin.
86. Massiv haqida tushuncha va uning qo’llanish holatlari.
Massiv indeksi sifatida butun son qo’llaniladi. Umuman olganda indeks
sifatida butun son qiymatini qabul qiladigan ixtiyoriy ifoda ishlatilishi
mumkin va uning qiymati massiv elementi nomerini aniqlaydi. Ifoda sifatida
o’zgaruvchi ham olinishi mumkinki, o’zgaruvchining qiymati o’zgarishi bilan
murojaat qilinayotgan massiv elementini aniqlovchi indeks ham o’zgaradi. Shunday
qilib, programmadagi bitta indeksli o’zgaruvchi orqali massivning barcha
elementlarini belgilash (aniqlash) mumkin bo’ladi. Masalan, Reyting[i]
o’zgaruvchisi orqali i o’zgaruvchining qiymatiga bog’liq ravishda Reyting
massivining ixtiyoriy elementiga murojaat qilish mavjud.
Umuman olganda massiv quyidagi xususiyatlari keltirilgan.
 Massiv - bu elementlar to'plamidir.
 Massivdagi barcha elementlar bir xil turda bo’ladi.
 Bunday to'plam to'liq to'plamni tashkil qiladi.
C++ da massivlar ma'lum turdagi ma'lumotlar elementlarini xotirada ketmaketlikda saqlashga imkon beradi.
Massivlarning ishlatilish sababi. Siz dasturni yozyapsiz, unda
foydalanuvchi beshta butun sonni kiritishi va ularni ekranga chiqarishi mumkin.
Ushbu vaziyatni hal qilishning usullaridan biri dasturda beshta alohida butun
o'zgaruvchini e'lon qilish va ularda ko'rsatilgan qiymatlarni saqlashdir. Bunday e’lon
qilish quyidagicha bo’lishi mumkin:
int firstNumber = 0;
int secondNumber = 0;
int thirdNuinber = 0;
int fourthNumber = 0;
int fifthNumber = 0;
Ammo agar foydalanuvchi 500 va undan ortiq sonlarni saqlashi va aks ettirishi
kerak bo'lsa, u holda yuqoridagi tizim yordamida 500 ta shunday butun
o'zgaruvchini e'lon qilishi kerak edi. Buni amalga oshirish uchun ko'p mehnat va
sabr-toqat kerak. Agar foydalanuvchi 5 o'rniga 500 000 butun sonni so'rasa nima
bo'ladi? Har biri nolga tenglashtiriladigan beshta butun sonli qatorni e'lon qilish
to'g'riroq:
int myNumbers[5] = {0};
Shunday qilib, agar 500000 ta butun sonni berishni so'rashgan bo'lsa, unda
massivni muammosiz oshirish mumkin:
int manyNumbers[500000] = {0};
Besh belgidan iborat massivni quyidagicha aniqlash mumkin:
char myCharacters[5];
Bunday massivlar statik massivlar deb ataladi, chunki ular tarkibidagi
elementlarning soni, shuningdek ularga ajratilgan xotira hajmi kompilyatsiya
vaqtida o'zgarmaydi. Dinamik massivlar haqida kursimizning keyingi mavzularida
tanishamiz.
Statik massivlarni e'lon qilish va initsializatsiyalash. Yuqoridagi kod
satrlarida biz 0 qiymat bilan initsializatsiyalangan beshta int elementni (ya'ni butun
sonlarni) o'z ichiga olgan myNumbers deb nomlangan massivini e'lon qildik.
Shunday qilib, C++ da massivni e'lon qilish uchun sintaksis quyidagicha:
element_tipi Massiv_nomi [Elementlar_miqdori] =
{Boshlang’ich_qiymatlar-majburiy emas}
Massivni e'lon qilish bilan bir qatorda shu zahoti uning barcha elementlari
initsializatsiyalash mumkin. Shunday qilib, beshta butun sonli qatorni besh xil butun
sonli qiymatlar bilan initsializatsiyalash mumkin:
int myNumbers[5] = {34, 56, -21, 5002, 365};
Massivning barcha elementlari nol bo’lishi ham mumkin (standart qiymat
kompilyator tomonidan taqdim etiladi):
int myNumbers[5] = {0};
Yuqoridagi qator barcha elementlarga nol qiymatni beradi. Shuningdek, qator
elementlarining faqat bir qismini initsializatsiyalash mumkin:
int myNumbers[5] = {34, 56};
Ushbu holatda dastlabki ikkita elementga 34 va 56 qiymatlari beriladi. Boshqa
elementlar esa nolga tenglashtiriladi.
Massivning uzunligini (ya'ni undagi elementlarning sonini belgilash) konstanta
qilib belgilashva massivni belgilashda foydalanish mumkin:
const int ARRAY_LENGTH = 5;
int myNumbers[ARRAY_LENGTH] = {34, 56, -21, 5002, 365};
Bu, masalan, massivning uzunligini bir nechta joylarda, masalan, massivning
barcha elementlarini aylanib chiqish va undan foydalanish zarur bo'lganda
foydalidir. Bunday holda, qator uzunligini o'zgartirganda, faqat const int deb e'lon
qilingan bitta qiymatni tuzatish kifoya qiladi.
Agar massivdagi elementlarning boshlang'ich soni noma'lum bo'lsa, uni
chiqarib tashlash mumkin:
int myNumbers[] = {2017, 2052, -525};



Download 418.97 Kb.

Do'stlaringiz bilan baham:
1   ...   17   18   19   20   21   22   23   24   ...   27




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling