1- amaliy mashg’ulot mavzu: funksiyalar. RЕKURSIV funksiyalar. Foydalanuvchi kutubxonasi. Ishning Maqsadi



Download 0,82 Mb.
bet7/8
Sana23.01.2022
Hajmi0,82 Mb.
#405284
1   2   3   4   5   6   7   8
Bog'liq
DsturlashII ishlanmalari qayta topshirish

#include

  • using namespace std;

  • int main()

  • { int i,j,n;

  • cout<<"n="; cin>>n;

  • double **q = new double *[n];

  • for (i = 0; i < n; i++) q[i] = new double[n];

  • for (i = 0; i < n; i++)

  • { for (j = 0; j < n; j++){

  • cout << (q[i][j] = (i+1)*(j+1))<< "\t";}

  • cout << endl;}

  • for (i = 0; i < n; i++) delete[] q[i];

  • delete[] q;

  • }

    Dastur natijasi:



    Misol: Matritsa va vektorni ko'paytirish masalasi uchun dinamik massivlardan foydalanish

    1. #include

    2. #include

    3. #include

    4. using namespace std;

    5. int main ()

    6. { srand(time(0));

    7. int i,j,n,m;

    8. cout << "n=";

    9. cin >> n; //Matritsa ustunlari soni

    10. cout << "m=";

    11. cin >> m; //Matritsa satrlari soni

    12. float *b=new float [n]; // b massivga dinamik xotira ajratish

    13. float *c=new float [m]; // c massivga dinamik xotira ajratish

    14. float ** a =new float *[m] ; // ko'rsatkichlar massiviga xotira ajratish

    15. for (i=0;i

    16. a[i]=new float [n]; // dinamik xotira ajratish

    17. //a matritsaga element kiritish va chop qilish

    18. cout<<"\n a massiv elementlari \n\n";

    19. for (i=0;i

    20. for(j=0;j

    21. a[i][j]=rand()%10+1;

    22. cout<

    23. cout<

    24. //b massivga element kiritish va chop qilish

    25. cout<<"\n b massiv elementlari \n\n";

    26. for(j=0;j

    27. b[j]=rand()%10+1;

    28. cout<

    29. // a matritsa bilan b massivni qo'shib c massivga yuklash

    30. cout<<"\n\n c massiv elementlari \n\n";

    31. for (i=0; i

    32. { float s=0;

    33. for (j=0; j

    34. s+=a[i][j]+b[j] ;}

    35. c[i]=s;

    36. cout << "c["<

    37. // massivlarni xotiradan o'chirish, xotirani tozalash

    38. delete [] b;

    39. delete [] c;

    40. for (i=0;i

    41. delete []a; //massivni o'zi o'chirilyapti

    42. return 0;}

    Dastur natijasi:

    5- AMALIY MASHG’ULOT



    MAVZU: OBYEKTGA YO'NALTIRILGAN DASTURLASH TUSHUNCHASI.

    Ishning maqsadi: C++ dasturlash tilida obyektga yo’naltirilgan dasturlash tamoyilaridan foydalanib noma’lum nomlar fazosini tashkil qilish ko’nikmalarini shakllantirish.

    Masalaning qo’yilishi:

    Variantda berilgan class, konstruktor va class maydonlari yordamida noma’lum nomlar fazosini yarating. Class da obyektlar massivi ustida quyidagi funksiyalarni bajaruvchi 3 ta static metod yozing:

    - Qidirish metodi

    - Saralash metodi

    - O’zgartirish metodi

    Yuqoridagi metodlar uchun class maydonlaridan ixtiyoriysi tanlansin.



    Masala: “talaba” nomli nomlar fazosi va unda Talaba” classini yarating. Class maydonlari: Familiyasi, ismi, kursi, baholari, stipendiyasi. Class komponentalarini inkapsulyastiyalash, konstruktorlar va class metodlarini ishlab chiqing. Obyektlar massivini yarating va ular ustida qidirish, saralash, o’zgartirish amallarini bajaring.

    Masalani yechish goyasi: talaba fazosida Talaba classi yaratiladi va unda maydonlarni yopiq holda e’lon qilinadi. Konstruktor orqali talabaning familiyasi, ismi va kursi kiritiladi. Baholari massiv ko’rinishda e’lon qilinib, tasodifiy baholar oladigan metod yoziladi. Stipendiyasini baholariga qarab belgilovchi metod ham qilinadi. Talaba sessiyani yopganligiga qarab kursdan-kursga o’tkaziladi, agar u 4 kurs bo’lsa bitiruvchi ekanligi haqida habar chiqariladi. Bu uchun Talaba classida setKurs() metodi yoziladi. Main classda familiya va ism uchun string massivi tuzilib(tashqaridan kiritmaslik uchun), Talaba classiga tegishli obyektlar massivi konstruktoriga parametr sifatida beriladi va talabalar haqida ma’lumot chop etiladi. Main classida obyektlar massivi ustida talaba ismi bo’yicha qidiruvchi, familiyasi bo’yicha tartiblovchi va kursini o’zgartiruvchi funksiyalar do’st funksiya qilib yoziladi. Natija funksiya ichida to’g’ridan-to’g’ri murojaat etiladi.


    Download 0,82 Mb.

    Do'stlaringiz bilan baham:
  • 1   2   3   4   5   6   7   8




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

    kiriting | ro'yxatdan o'tish
        Bosh sahifa
    юртда тантана
    Боғда битган
    Бугун юртда
    Эшитганлар жилманглар
    Эшитмадим деманглар
    битган бодомлар
    Yangiariq tumani
    qitish marakazi
    Raqamli texnologiyalar
    ilishida muhokamadan
    tasdiqqa tavsiya
    tavsiya etilgan
    iqtisodiyot kafedrasi
    steiermarkischen landesregierung
    asarlaringizni yuboring
    o'zingizning asarlaringizni
    Iltimos faqat
    faqat o'zingizning
    steierm rkischen
    landesregierung fachabteilung
    rkischen landesregierung
    hamshira loyihasi
    loyihasi mavsum
    faolyatining oqibatlari
    asosiy adabiyotlar
    fakulteti ahborot
    ahborot havfsizligi
    havfsizligi kafedrasi
    fanidan bo’yicha
    fakulteti iqtisodiyot
    boshqaruv fakulteti
    chiqarishda boshqaruv
    ishlab chiqarishda
    iqtisodiyot fakultet
    multiservis tarmoqlari
    fanidan asosiy
    Uzbek fanidan
    mavzulari potok
    asosidagi multiservis
    'aliyyil a'ziym
    billahil 'aliyyil
    illaa billahil
    quvvata illaa
    falah' deganida
    Kompyuter savodxonligi
    bo’yicha mustaqil
    'alal falah'
    Hayya 'alal
    'alas soloh
    Hayya 'alas
    mavsum boyicha


    yuklab olish