Kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent


Download 126.58 Kb.
Pdf ko'rish
Sana29.11.2020
Hajmi126.58 Kb.
#154921
Bog'liq
MT va A - (Laboratoriya ishi -4)


O’ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA 

KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI 

 

MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT 

AXBOROT TEXNOLOGIYALARI UNIVERSITETI 

 

 



 

 

 



 

 

MA’LUMOTLAR TUZILMALARI VA ALGORITMLARI 



fani bo’yicha 

 

 

 

 

 

 

 

Laboratoriya ishi - 4

 

 



 

Bajardi: 411-19 guruh talabasi 

Ibragimov Abbos 

 

 

 



 

 

 



 

 

Toshkent – 2020

 


4-tajriba ishi. DARAXTSIMON TUZILMALAR 

 

Ishdan  maqsad:  Talabalar  daraxtsimon  tuzilmalar,  binar  daraxtlarni  e’lon  qilish,  uning 



ustida amallar bajarish algoritmlarini tadqiq qilishlari va o’rganishlari kerak, bu algoritmlarning 

dasturiy realizatsiyasini amalga oshirish ko’nikmasiga ega bo’lishlari kerak. 

Qo’yilgan masala: Har bir talaba topshiriq varianti olib, undagi masalaning qo’yilishiga 

mos binar daraxtlarni tadqiq qilishga oid dasturni ishlab chiqishlari kerak. 

Ish tartibi: 

 

Tajriba ishi nazariy ma’lumotlarini o’rganish; 



 

Berilgan topshiriqning algoritmini ishlab chiqish

 

C++ dasturlash muhitida dasturni yaratish



 

Natijalarni tekshirish; 

 

Hisobotni tayyorlash va topshirish. 



 

Topshiriq 

 

Variantlar: 

4.  Daraxt tugunlari haqiqiy sonlar bo’lsin. Daraxt barcha tugunlarini yig’indisini hisoblash 

algoritmi va dasturini keltiring. 

 

DASTUR KODI: 

 

#include   



using namespace std;  

 

struct Node {  



 

    float key;  

 

    Node* left, *right;  



};  

 

Node* newNode(float key)  



 

{  


    Node* node = new Node;  

 

    node->key = key;  

 

    node->left = node->right = NULL;  



 

    return (node);  

}  

 

float addBT(Node* root)  



 

{  


    if (root == NULL)  

 

        return 0;  



 

    return (root->key + addBT(root->left) + addBT(root->right));  

}  

 

int main()  



 

{  


 

    Node* root = newNode(1.5);  

 

    root->left = newNode(2.3);  



 

    root->right = newNode(3.7);  

 

    root->left->left = newNode(4);  



 

    root->left->right = newNode(5.5);  

 

    root->right->left = newNode(6.1);  



 

    root->right->right = newNode(7.4);  

 

    root->right->left->right = newNode(8.9);  



 

 

    float sum = addBT(root);  



 

    cout << "Daraxt tugunlari yig'indisining qiymati:  " << sum << endl;  

 

    return 0;  





DASTUR NATIJASI: 

 

 



 

Download 126.58 Kb.

Do'stlaringiz bilan baham:




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