“Dasturlash I” fanidan mustaqil ishlash uchun topshiriqlar
5-haftaga oid mustaqil ishlash uchun topshiriqlar
1. Quyidagi jumlalarga qisqacha izoh bering:
1.1. Ichma-ich joylashgan if operatori;
1.2. Ikki tarmoqli operator;
1.3. rand () funksiyasi;
1.4. RAND_MAX;
1.5. srand(time(0));
2. Test savollariga javob bering:
Test savollariga javob bering.
Faraz qilaylik, x = 1, y = -1, and z = 1. Quyidagi kodning bajarilishi natijasida oynaga nima chiqadi?
if (x > 0)
if (y > 0)
cout << "x > 0 va y > 0" << endl;
else if (z > 0)
cout << "x < 0 va z > 0" << endl;
x > 0 va y > 0;
x < 0 va z > 0;
x < 0 va z < 0;
Toʻgʻri javob yoʻq.
Quyidagi kod _____________ ni ko`rsatadi.
double harorat = 35;
if (harorat >= 50)
cout << "Juda issiq" << endl;
else if (harorat <= 25)
cout << "Salqin" << endl;
else
cout << "Kerakli harorat" << endl;
Kerakli harorat
Juda issiq
Salqin
Juda issiqSalqinKerakli harorat
Faraz qilaylik, daromad 4001 ga teng. Ushbu dastur kodi qanday natija chiqaradi?
if (daromad > 3000)
{
cout << "Daromad 3000 dan ko`proq" << endl;
}
else if (daromad > 4000)
{
cout << "Daromad 4000 dan ko`proq" << endl;
}
Hech narsa chiqarmaydi
Daromad 3000 dan ko`proq
Daromad 3000 dan ko`proq, pastki qatordan Daromad 4000 dan ko`proq
Daromad 4000 dan ko`proq
Daromad 4000 dan ko`proq, pastki qatordan Daromad 3000 dan ko`proq
Faraz qilaylik, shunday dastur tuzish kerakki, haydovchilik guvohnomasi olmoqchi bo`lganlar uchun agar talabgorning yoshi 16 dan kichik bo`lsa “Haydovchilik guvohnomasini olib bo`lmaydi” va agar yoshi 16 dan katta bo`lsa “Haydovchilik guvohnomasini olishingiz mumkin” degan jumlalarni chiqarsin. Quyidagi kodlarning qaysi biri to`g`ri?
I:
if (yosh < 16)
cout << "Haydovchilik guvohnomasini olib bo`lmaydi";
if (yosh >= 16)
cout << "Haydovchilik guvohnomasini olishingiz mumkin";
II:
if (yosh < 16)
cout << " Haydovchilik guvohnomasini olib bo`lmaydi ";
else
cout << "Haydovchilik guvohnomasini olishingiz mumkin";
III:
if (yosh < 16)
cout << " Haydovchilik guvohnomasini olib bo`lmaydi ";
else if (yosh >= 16)
cout << " Haydovchilik guvohnomasini olishingiz mumkin ";
IV:
if (yosh < 16)
cout << " Haydovchilik guvohnomasini olib bo`lmaydi ";
else if (yosh == 16)
cout << " Haydovchilik guvohnomasini olishingiz mumkin ";
else if (yosh > 16)
cout << " Haydovchilik guvohnomasini olishingiz mumkin ";
I va II
II va III
I, II, va III
III va IV
Barcha javoblar to`g`ri
Faraz qilaylik, shunday dastur tuzish kerakki, haydovchilik guvohnomasi olmoqchi bo`lganlar uchun agar talabgorning yoshi 16 dan kichik bo`lsa “Haydovchilik guvohnomasini olib bo`lmaydi” va agar yoshi 16 dan katta bo`lsa “Haydovchilik guvohnomasini olishingiz mumkin” degan jumlalarni chiqarsin. Quyidagi kodlarning qaysi biri eng yaxshi?
I:
if (yosh < 16)
cout << "Haydovchilik guvohnomasini olib bo`lmaydi ";
if (yosh >= 16)
cout << "Haydovchilik guvohnomasini olishingiz mumkin ";
II:
if (yosh < 16)
cout << "Haydovchilik guvohnomasini olib bo`lmaydi ";
else
cout << "Haydovchilik guvohnomasini olishingiz mumkin ";
III:
if (yosh < 16)
cout << "Haydovchilik guvohnomasini olib bo`lmaydi ";
else if (yosh >= 16)
cout << "Haydovchilik guvohnomasini olishingiz mumkin ";
IV:
if (yosh < 16)
cout << "Haydovchilik guvohnomasini olib bo`lmaydi ";
else if (yosh == 16)
cout << "Haydovchilik guvohnomasini olishingiz mumkin ";
else if (yosh > 16)
cout << "Haydovchilik guvohnomasini olishingiz mumkin ";
I
II
III
IV
Quyidagi switch operatoridan keyin y nimaga teng bo`ladi?
int x = 3; int y = 4;
switch (x + 3)
{
case 6: y = 0;
case 7: y = 1;
default: y += 1;
}
1
2
3
4
Mazkur switch operatori bajarilgandan so`ng, ekranga nima chiqadi?
char ch = 'a';
switch (ch)
{
case 'a':
case 'A':
cout << ch << endl; break;
case 'b':
case 'B':
cout << ch << endl; break;
case 'c':
case 'C':
cout << ch << endl; break;
case 'd':
case 'D':
cout << ch << endl;
}
abcd
a
aa
ab
Ushbu switch operatori bajarilgandan so`ng, ekranga nima chiqadi?
char ch = 'b';
switch (ch)
{
case 'a':
cout << ch << endl;
case 'b':
cout << ch << endl;
case 'c':
cout << ch << endl;
case 'd':
cout << ch << endl;
}
abcd
bcd
b
bb
bbb
Quyidagi dastur qismini tahlil qiling:
int x;
double d = 1.5;
switch (d)
{
case 1.0: x = 1;
case 1.5: x = 2;
case 2.0: x = 3;
}
Dastur kompilyativ xatolik beradi, sababi switch operatorida to`xtatish (break) ko`rsatmasi tushirib qoldirilgan.
Dastur kompilyativ xatolik beradi, sababi switch operatorida dastlabki holatdagi case tushirib qoldirilgan.
Switch double bo`lmagan o`zgaruvchini nazorat qiladi
Xatoliklar yo`q
Quyidagi ifoda bajarilishi natijasida nima sodir bo`ladi?
x = 0;
y = (x > 0) ? 10 : -10;
-10
0
10
20
Noto`g`ri ifoda
juft o`zgaruvchisiga mantiqiy qiymat beruvchi quyidagi kodli qismlarni tahlil qiling.
kod 1:
if (son % 2 == 0)
juft = true;
else
juft = false;
kod 2:
juft = (son % 2 == 0) ? true: false;
kod 3:
juft = son % 2 == 0;
kod 2 da kompilyatsion xatolik mavjud. Chunki, shartli ifodada true yoki false qiymatlari mavjud emas.
kod 2 da kompilyatsion xatolik mavjud. Chunki, sonni juft deb e’lon qilishga harakat qilingan
Barchasi to`g`ri, lekin birinchisi afzalroq;
Barchasi to`g`ri, lekin ikkinchisi afzalroq;
Barchasi to`g`ri, lekin uchinchisi afzalroq.
Quyidagi kodning bajarilishi natijasida ekranga nima chiqariladi?
bool juft = false;
cout << (juft ? "rost" : "yolg`on") << endl;
rost
yolg`on
hech narsa
rost yolg`on
Quyidagi ifodaning qiymati nima?
true || true && false
true
false
3. Quyidagi masalani hisoblovchi dastur tuzing:
1. Dilshod va Javlon baliq oviga borishdi. Ular dasryodan oltin baliqni tutib olishdi va oltin baliq ularga agar qo`yib yuborsalar faqat bir kishining, bitta tilagini bajarishini aytdi. Shunda Dilshod va Javlon kim tilak so`rashi borasida tortishib qolishdi. Bunday vaziyatni hal qilish uchun oltin baliq ularga quyidagicha shart qo`ydi: “Men 0 dan 9 gacha bitta sonni o`ylayman, sizlar ham o`ylangizlar. Keyin sizlar menga birin-ketin o`ylagan raqamingizni aytasizlar. Agar birontangizning o`ylagan raqamingiz men o`ylagan raqam bo`lib chiqsa, o`shaning tilagini bajaraman. Agar har ikkalangiz ham topsangiz ikkalangizning ham tilagingizni bajo keltiraman.” Ular rozi bo`lishdi. Xo`sh, kimning tilagi ijobat bo`ladi?
2. Butun son berilgan. Berilgan sonni “musbat toq son”, “Manfiy juft son”, “son nolga teng” va h.k chiqaruvchi dasturni tuzing.
3. 1-100 gacha oraliqdagi sonlarni so’zlarda ifodalovchi dastur tuzilsin. (Masalan: qirq besh)
Eslatma: Berilgan topshiriqlarni Google Класс ga 13 oktabr 2019 yil kunidan kechikmasdan topshirishingiz zarur!
Do'stlaringiz bilan baham: |