4.3-amaliy mashg’ulot. Ma’lumotlarni saralash
Quyida tartibsiz elementlardan iborat massiv berilgan, ushbu massivning elementlarini bir nechta saralash usullari orqali amalga oshirilgan dasturlar kodi keltirilgan:
Indeksli saralash usuli:
#include
#include
using namespace std;
void insertSort(int a[], int N)
{
int x;
int i, j;
for ( i=0; i < N; i++)
{
x = a[i];
for ( j=i-1; j>=0 && a[j] > x; j--)
a[j+1] = a[j];
a[j+1] = x;
} }
main ()
{
int i, n, mas[1000];
cout<>n;
cout<<"Massiv elementlarini kiriting!"<
for (i=0; i
cin>>mas[i];
insertSort(mas,n);
cout<<"Saralangan massivni chiqaring"<
for(i=0; i
cout<
getch();
return 0;
}
natija:
Pufaksimon saralash usuli:
#include
#include
void bubbleSort(int a[], long N)
{
long i, j;
int x;
for( i=0; i < N; i++)
{
for( j = N-1; j > i; j-- )
{ if ( a[j-1] > a[j] ) {
x=a[j-1]; a[j-1]=a[j]; a[j]=x; } } } }
main ()
{
int i, n, mas[1000];
cout<<"\n Massiv uzunligini kiriting = ";
cin>>n;
cout<<"Massiv elementlarini kiriting : "<
for (i=0; i
cin>>mas[i];
bubbleSort(mas,n);
cout<<"Saralangan massiv"<
for(i=0; i
cout<
getch();
return 0;
}
natija:
Tanlash yoki ajratilgan oraliq asosida saralash usuli:
#include
#include
void selectSort(int a[], int N)
{
int i, j, k;
int x;
for( i=0; i < N; i++)
{
k=i; x=a[i];
for( j=i+1; j < N; j++)
if ( a[j] < x )
{ k=j; x=a[j]; }
a[k] = a[i]; a[i] = x;
} }
main ()
{
int i, n, mas[1000];
cout<<"\n Massiv uzunligini kiriting = "; cin>>n;
cout<<"Massiv elementlarini kiriting :"<
for (i=0; i
cin>>mas[i];
selectSort(mas,n);
cout<<"Saralangan massiv"<
for(i=0; i
cout<
getch();
return 0;
}
Natija:
Sheyker saralash usuli:
#include
#include
void shakerSort(int a[], int N)
{
int j, k = N-1;
int lb=1, ub = N-1; // Massivni saralanmagan qismi chegarasi
int x;
do {
Quyidan yuqoriga o'tish for( j=ub; j>0; j-- ) {
if ( a[j-1] > a[j] ) {
x=a[j-1]; a[j-1]=a[j]; a[j]=x; k=j;
} }
lb = k+1;
Yuqoridan quyiga o'tish for (j=1; j<=ub; j++) {
if ( a[j-1] > a[j] ) {
x=a[j-1]; a[j-1]=a[j]; a[j]=x;
k=j;
} }
ub = k-1;
} while ( lb < ub );
}
main ()
{
int i, n, mas[1000];
cout<
cin>>mas[i];
shakerSort(mas,n); cout<<"Saralangan massiv"<
getch(); return 0;
}
Natija:
3-topshiriq
1-variant. Ta’mirlash ustaxonasida bir nechta (N ta) mashina bor. Ular to’g’risida quyidagi ma’lumotlarga egamiz: raqami, markasi, egasini ismi, oxirgi marta ta’mirlanganligi sanasi (kuni, oyi, yili), ta’mirdan chiqishi lozim bo’lgan sana (kun, oy, yil).
2-variant. To’g’ridan-to’g’ri qo’shish usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqish (variantga mos ravishda): Mashina egalarini ismlari bo’yicha alifbo tartibida joylashtirilsin va mos ravishda ularning mashinalari haqidagi ma’lumotlar chiqarilsin.
3-variant. Pufaksimon saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: Avtomobillarni ta’mirlanish tartibi ishlab chiqilsin. Bu yerda ta’mir tugashi sanasi qaysi avtomobil uchun ertaroq bo’lsa shunga birinchi navabatda xizmat ko’rsatiladi.
4-variant. Pufaksimon saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: "Jiguli" markasidagi mashinalarni oldingi ta’mir sanasi bo’yicha kamayish tartibida joylashtirilsin.
5-variant. Pufaksimon saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: Oldingi ta’mir qilinganlar soni 2 ga teng bo’lgan mashinalar raqamlari bo’yicha kamayish tartibida joylashtirilsin.
6-variant. Tanlash ѐki ajratilgan oraliq asosida saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: Oldin ta’mir qilinmagan mashinalarni ta’mirdan chiqish sanasi bo’yicha o’sish tartibida joylashtiring.
7-variant. Indeksli saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: "Mersedes" markali mashina egalarini alifbo bo’yicha teskari tartibda joylashtiring.
8-variant. Sheyker saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: Boshqalaridan oldinroq ta’mirlanadigan
mashinalarni ularni markasi bo’yicha alifbo tartibida joylashtiring (ta’mir tugatilishi sanasi 31.12.2007 dan erta).
9-variant. Indeksli saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: "Jiguli" markasidagi mashinalarni raqamlari bo’yicha o’sish tartibida joylashtiring.
10-variant. To’g’ridan-to’g’ri qo’shish usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqish: o’tgan yildan beri ta’mirlanmagan mashinalarni ularning egalari ismlari bo’yicha alifbo tartibida joylashtiring.
11-variant. To’g’ridan-to’g’ri qo’shish usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqish: keyingi oyda ta’mirlanishi lozim bo’lgan mashinalarni oxirgi marta ta’mirlanganlik sanasi bo’yicha o’sish tartibida keltiring.
12-variant. Indeksli saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: Oldingi ta’mir qilinganlar soni 3 martadan ko’p bo’lgan mashinalarni egalari ismlarini alifbo bo’yicha teskari tartibda joylashtiring.
13-variant. Pufaksimon saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: "Mersedes" markasidagi mashinalarni raqamlari bo’yicha kamayish tartibida joylashtiring.
14-variant. To’g’ri tanlov usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi: MS va A, oliy matematika, fizika, dasturlash, topshirgan sessiya umumiy bali saralash amalga oshirilsin.
15-variant. Sheyker saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi: talabalar familiyalarini alifbo tartibida saralash amalga oshirilsin.
16-variant. Sheyker saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi: Talabalar familiyalarini alifbo bo’yicha teskari tartibda saralash amalga oshirilsin.
17-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi: Talabalarni ѐshi bo’yicha o’sish tartibida saralash amalga oshirilsin.
18-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi: Talabalarni ѐshi bo’yicha kamayish tartibda.
19-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi: Talabalarni umumiy bali bo’yicha o’sish tartibda saralansin.
20-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi: Talabalarni umumiy bali bo’yicha o’sish tartibda saralansin.
21-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi: Talabalarni birinchi imtihoni natijasi bo’yicha o’sish tartibda.
22-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi: Talabalarni ikkinchi imtihoni natijasi bo’yicha kamayish tartibda.
23-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi: Talabalarni uchinchi imtihoni natijasi bo’yicha o’sish tartibda.
24-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi: Talabalarni to’rtinchi imtihoni natijasi bo’yicha kamayish tartibda.
25-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi talabalarni birinchi va ikkinchi imtihoni natijalarini o’sish tartibida saralansin.
26-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. N ta talabadan iborat guruh tuzilsin. Quyidagi ma’lumotlar berilgan: familiya, ism, tug’ilgan yili, fanlar bo’yicha bahosi talabalarni birinchi va ikkinchi imtihoni natijalarini kamayish tartibida saralansin.
27-variant. Pufaksimon saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin: A massivni eng katta (eng kichik) elementini ekranga chiqarish dasturini tuzing.
28-variant. Sheyker saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. A massiv elementlari qiymatlarini kamayish tartibida saralash dasturini tuzing.
29-variant. Indeksli saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: A massivda elementlar berilgan. Mazkur massiv elementlaridan shunday V massiv shakllantiruvchi shunday dastur tuzingki, V massiv elementlari kamayish tartibida saralangan bo’lsin.
30-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. Elementlari o’sish tartibida joylashgan A sonli massiv va a soni berilgan. a ni A massivga shunday qo’shingki, tartiblanganlik buzilmasin.
31-variant. Pufaksimon saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin: elementlari o’sish tartibida joylashgan A massivni, elementlari kamayish tartibida joylashgan massiv ko’rinishda tez quruvchi dastur tuzing.
32-variant. Sheyker saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. Manfiy va musbat sonlardan tashkil topgan A massiv berilgan. Barcha manfiy sonlarni chiqarib, musbatlarini o’sish tartibda joylashtiruvchi dastur tuzing.
33-variant. Indeksli saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: Berilgan A massivdan ketma-ket sonlar olib, ulardan o’sish tartibida shakllantirilgan V massiv hosil qiluvchi dastur tuzing.
34-variant. Pufaksimon saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin: Mualliflar ro’yxati A massiv shaklida berilgan. Mualliflarni alifbo tartibida shakllantirish va shakllangan ro’yxatni ekranga chiqarish dasturini tuzing.
35-variant. Sheyker saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. Telefon stansiyasida n ta mijoz bor.
Quyidagi shaklda ro’yxat hosil qiluvchi dastur tuzing: telefon raqami, mijoz familiyasi (telefon raqamlari o’sish tartibda joylashadi).
36-variant. Indeksli saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqing: A massivni uzunliklari har hil bo’lgan n ta so’z tashkil qiladi. So’zlarni uzunliklari bo’yicha o’sish tartibida joylashtiruvchi dastur tuzing.
38-variant. To’g’ridan-to’g’ri qo’shish saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. A massiv elementlari modullarini o’sish va kamayish tartibida saralovchi dastur tuzing.
39-variant. Sheyker saralash usulidan foydalanib, saralashni amalga oshirish dasturini ishlab chiqilsin. Saralangan A sonli massivda har bir juft elementlar orasiga chap elementdan katta o’ng elementdan kichik son qo’ying va hosil bo’lgan massivni ekranga chiqaring.
Do'stlaringiz bilan baham: |