Amaliy mashg‘ulot 24. Ko‘rsatkichlar va adres oluvchi o‘zgaruvchilar Ishdan maqsad



Yüklə 182,92 Kb.
Pdf görüntüsü
tarix02.05.2023
ölçüsü182,92 Kb.
#106355
Amaliy mashg‘ulot - 25. Ko‘rsatkichlar va adres oluvchi o‘zgaruvchilar (1)



Amaliy mashg‘ulot 24. Ko‘rsatkichlar va adres oluvchi o‘zgaruvchilar  
Ishdan maqsad: C++ dasturlash tilida ko‘rsatkichlar va adres oluvchi 
o‘zgaruvchilar bilan ishlash, ulardan foydalanish ko‘nikmalariga ega bo‘lish. 
Dasturda ko‘rsatkichlar va adres oluvchi o‘zgaruvchilardan foydalana olish.
Masalaning qo‘yilishi: Tinglovchi variant bo‘yicha berilgan masalani C++
dasturlash tilida ishlashi va kerakli natija olishi lozim.
Ishni bajarish uchun namuna  
Misol: Ikki sonning EKUBini topuvchi rekursiv funksiya tuzilsin. Funksiyaga 
ko‘rsatkich orqali murojaat qilinsin va natija ekranga chop qilinsin.
Dastur kodi:
dastur.cpp fayli:
#include
using namespace std;
int EKUB(int, int );
int main(int argc, char* argv[])
{
int (*ekub_korsatkich)(int, int);
ekub_korsatkich=EKUB;
int a, b;
cout << "Birinchi sonni kiriting: ";
cin >> a;
cout << "Ikkinchi sonni kiriting: ";
cin >> b;
cout << "EKUB = " << ekub_korsatkich(a, b) << endl;
system("pause");
return 0;
}
int EKUB(int son1, int son2)
{
if ( son2 == 0 )


return son1;
return EKUB(son2, son1 % son2);
}
Dastur ishlashi natijasi: 
Amaliy topshiriqlar 
1. Berilgan n ta haqiqiy sonlar orasida qo‘shnilaridan (o‘zidan oldingi va 
keyingi sonlardan) katta bo‘lgan sonlar miqdori topilsin. 
2. Berilg an 10 ta natural sonlarning eng katta umumiy bo‘luvchisi topilsin. 
3. Berilgan n va m natural sonlari uchun S = ∑

(𝑖 + 𝑗)
𝑚
𝑗=5
𝑛
𝑖=1
ifodaning 
qiymati hisoblansin. 
4. Berilga n nanatural sonlardan iborat ketma-ketlikning tartib nomerlari 
Fibonachchi sonlari bo‘lgan hadlarining yig‘indisi hisoblansin. 
5. 0 dan 1 5 gacha bo‘lgan sonlar ikkilik ko‘rinishida chop qilinsin. 
6. const int n = 20; 
float B[n][n]; 
Qo‘shimcha 
matrisadan 
foydalanmagan 
holda 

matritsaning 
transponerlangan ko‘rinishi BT hosil qilinsin. 
7. n natural soni va 5-chi tartibli haqiqiy turdagi kvadrat matritsa berilgan. Bu 
matritsaning n-darajasi topilsin (A1=A, A2=AA, A2=A2A va hokazo). 
8. const int n=20; 


float nuqta[n][2], d; 
Matritsaning satr elementlarini tekislikdagi nuqtalarning koordinatalari deb 
qarab, shu nuqtalar orasidagi eng katta masofa topilsin. 
Adabiyotlar ro‘yxati  
1. 
D.S. Malik. C++ Programming: From problem analysis to program design. 
Course Technology, 2011.
2. 
Ivor Horton. Beginning Visual C++ 2005. Wiley Publishing, 2005
.
3. 
Б. Страуструп. Язык программирования C++ . Спетсиалное издание.-
М.: ООО «Бином-Пресс», 2006

4. Madraximov Sh.F., Gaynazarov S.M. C++ tilida Dasturlash asoslari// 
Toshkent, O‘zbekiston Milliy Universiteti, 2009.
Keyslar banki  
Keys 1. Funksiyaga ko‘rsatkich orqali ishlovchi dastur tuzildi. Dastur vazifasi 
berilgan integralni epsilon aniqlikda hisoblash. Lekin dastur ishlashi natijasida 
epsilon aniqlikda hisoblashga erishilmadi.
Keysni bajarish bosqchilari va topshiriqlar:  
• Keysdagi muammoni keltirib chiqargan asosiy sabablarni belgilang 
(individual va kichik guruhda).
• Dasturni to‘g‘ri ishlashi uchun bajariladigan ishlar ketma-ketligini belgilang 
(juftliklardagi ish).
• C++ dasturlash tili imkoniyatlaridan kelib chiqib bir nechta usulda dastur kodini 
taqdim eting (individual holda).

Yüklə 182,92 Kb.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin