Aslanov shohjahon uzoqovichning 2-laboratoriya ishi qabul qildi


Download 0.68 Mb.
Pdf ko'rish
bet2/3
Sana25.02.2023
Hajmi0.68 Mb.
#1227869
1   2   3
Bog'liq
Ma\'lumotlar tuzilmasi va algoritmlar fanidan 2-laboratoriya ishi

Laboratoriya topshirig‘i. Berilgan masalani yechish uchun algoritm va mos 
dasturni ishlab chiqing. Algoritmni blok-sxema shaklida ifodalang va zarur bo‘lsa 
algoritmik dekompozitsiyani amalga oshiring. Zarur hollarda qism masalalarni 
yechish uchun qism dasturlardan foydalaning. 
 Dastur namunasi. Biz quyida namuna sifatida massivlarni qayta ishlash (tahlil 
qilish) bilan bog‘liq masalani qaraymiz. Masalani yechish algoritmini (psevdokod 
shaklida) ishlab chiqamiz va uni C++ tilidagi dasturga o‘tkazamiz.
Labotoriya topshirig‘i sharti. O‘rin almashtirishlardan iborat bo‘lgan N (N<=100) 
o‘lchamli A butun sonli massiv berilgan. Ushbu o‘rin almashtirishlardagi 
inversiyalari soni, ya’ni 𝐴
𝑖
> 𝐴
𝑗
, 𝑖 < 𝑗 shartni qanoatlantiruvchi barcha 𝐴
𝑖
, 𝐴
𝑗
juftliklar soni topilsin.
Masalani yechish algoritmi. Masalani yechish algoritmi massivning har bir A[i] 
elementini undan keyin joylashgan barcha A[j] elementlar bilan solishtirib
A[i]>A[j] shartni qanoatlantiradigan juftliklar sonini aniqlashga asoslangan. Bu 
g‘oyani quyidagi psevdokod orqali ifodalash mumkin: 
juda sodda bo‘lgani uchun, uning C++ dagi dasturi matnini keltiramiz: 
#include  
using namespace std
ifstream cin("input.txt"); 
anytype A[N]; 


ofstream cout("output.txt"); 

const int NMax=1000; 
int A[NMax]; 
int N; 
int Count=0; 
cin >> N; 
for (int i=0; icin >> A[i]; 
for (int i=0; ifor(int j=i+1; jif (A[i]>A[j]) 
Count++; 
cout << Count; 
return 0; 

Nazorat savollari 
1. Standart malumotlar tuzilmalari qanday tuzilmalar? 
2. Standart ma’lumotlar tuzilmalariga qanday tuzilmalar kiradi? 

Download 0.68 Mb.

Do'stlaringiz bilan baham:
1   2   3




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