Муҳаммад ал-Хоразмий номидаги тату самарқанд филиали


Download 294.57 Kb.
bet2/2
Sana24.01.2023
Hajmi294.57 Kb.
#1118040
1   2
Bog'liq
Дастурлаш 10.1 машгулот

Функцияни чақириш. Функция чақирилганда функция ичида ёзилган код бажарилади.
Функция қиймати қайтарилганда, мазкур функциянинг чақирилиши қиймат сифатида қабул қилинади, мисол учун:
int larger = maks(3, 4);
бу ерда maks(3, 4) чақирилиб, қиймати larger ўзгарувчисига таъминланмоқда.
cout << max(3, 4);
бу ерда maks(3, 4) натижаси экранга чоп этилади.

1-машқ. Функция ёрдамида берилган учта соннинг максимумини топувчи дастур тузинг.

Дастур коди:


  1. #include


  2. using namespace std;


  3. //funksiyani e'lon qilish

  4. //maks nomli funksiya sarlavhasi

  5. int maks(int num1, int num2, int num3)

  6. {

  7. int natija;


  8. if (num1 >= num2 && num1 >=num3 )

  9. natija = num1;

  10. else if (num2 >= num1 && num2 >=num3 )

  11. natija = num2;

  12. else

  13. natija = num3;


  14. return natija;

  15. }


  16. int main()

  17. {

  18. int k = 5;

  19. int l = 12;

  20. int m = 16;


  21. //qiymat o'zgaruvchisiga

  22. //maks funksiyasining qiymatini ta'minlash

  23. int qiymat = maks(k,m,l);


  24. //natijani ekranga chop etish

  25. cout << k << ", " << l << " va " << m

  26. << " sonlarining maksimumi "<


  27. return 0;

  28. }



Натижа:





void функциялар. void функциялар – қиймат қайтармайди. Функция тури сифатида void кўрсатилади.
2-машқ. Фойдаланувчи томонидан 100 баллик тизимда балл киритилганда мазкур баллни 5 баҳолик тизимга ўтказувчи дастурни қиймат қайтармайдиган функцияни ишлатган ҳолда тузинг.

Дастур коди:


  1. #include

  2. using namespace std;


  3. // Bahoni chop etuvchi funksiya

  4. void printBaho(double ball)

  5. {

  6. if (ball < 0 || ball > 100)

  7. {

  8. cout << "Invalid ball" << endl;

  9. return;

  10. }

  1. if (ball >= 90.0)

  2. cout << '5' << endl;

  3. else if (ball >= 75.0)

  4. cout << '4' << endl;

  5. else if (ball >= 60.0)

  6. cout << '3' << endl;

  7. else

  8. cout << '2' << endl;

  9. }


  10. int main()

  11. {

  12. cout << "Ballni kiriting: ";

  13. double ball;

  14. cin >> ball;

  15. cout << "Sizning baho ";

  16. //funksiyani chaqirish

  17. printBaho(ball);


  18. return 0;

  19. }


Натижа:

Юқоридаги дастур учун қуйидаги маълумотлар киритилганда натижани текширинг:

Kiriuvchi ma’lumot

Chiquvchi ma’lunot

90

Sizning baho 5

82

Sizning baho 4



3-машқ. Фойдаланувчи томонидан 100 баллик тизимда балл киритилганда мазкур баллни 5 баҳолик тизимга ўтказувчи дастурни char туридаги қиймат қайтарувчи функцияни ишлатган ҳолда тузинг.

Дастур коди:


  1. #include

  2. using namespace std;


  3. // Bahoni oluvchi funksiya

  4. char getBaho(double ball)

  5. {

  6. if (ball < 0 || ball > 100)

  7. {

  8. cout << "Invalid ball" << endl;

  9. exit(1);

  10. }

  11. if (ball >= 90.0)

  12. return '5';

  13. else if (ball >= 75.0)

  14. return '4';


  15. else if (ball >= 60.0)

  16. return '3';




  1. else

  2. return '2';

  3. }


  4. int main()

  5. {

  6. cout << "Ballni kiriting: ";

  7. double ball;

  8. cin >> ball;

  9. cout << "Sizning baho ";

  10. //funksiyani chaqirish

  11. cout<< getBaho(ball);


  12. return 0;

  13. }

Юқоридаги дастур учун қуйидаги маълумотлар киритилганда натижани текширинг:



Kiriuvchi ma’lumot

Chiquvchi ma’lunot

96

Sizning baho 5

62

Sizning baho 3




ДАСТУРЛАШ (С++) фанидан 10.1-лаборатория машғулотлари

Download 294.57 Kb.

Do'stlaringiz bilan baham:
1   2




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