Фанидан амалий машғулотларни бажариш бўйича услубий кўрсатмалар


-амалий машғулот. Қидирув усуллари


Download 1.74 Mb.
bet15/15
Sana26.11.2020
Hajmi1.74 Mb.
#152242
1   ...   7   8   9   10   11   12   13   14   15
Bog'liq
МТА amaliyot boyicha korsatmalar


5-амалий машғулот. Қидирув усуллари


1-мисол. Бинар қидирув усулидан фойдаланиб массив элементлари орасида белгиланган элементни қидириш дастури қуйида келтирилган:

1-усул.
#include
#include
int Binsearch(int a[], int N, int key, int *t)
{
int l=0, r=N-1, mid=(l+r)/2;
while (l<=r)
{ *t+=1;
if (a[mid]==key) return mid;
if (a[mid]>key) r=mid-1;
else l=mid+1;
mid=(l+r)/2;
}
a[N]=key;
return N;
}
main ()
{
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

int i, N, mas[1000], key, P, t=0; cout<>N;


cout<<"Massiv elementlarini kiriting!"<for (i=0; icin>>mas[i];
cout<<"Qidiruv elementini kiriting!"<cin>>key;
P=Binsearch(mas,N,key, &t);
if (P==N) cout<<"Bunday elementni massivga qo'shis lozim"<<" "<
else cout<<"Bunday element bor"<<" "<
getch();
return 0;
}


2-усул.
#include
#include
int InSeqsearch(int realArray[], int N, int kind[2][1000],int m,int key,
int *t)
{
int i=0,
low = 0,
hi = 0;

while ((i
{
i++;
(*t)++;
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

}
(*t)++;


if (i==0)


low=0;
else
low=kind[1][i-1];

if (i==m)


hi=N;
else
hi=kind[1][i]-1;

for (int j=low; j<=hi; j++)


{
(*t)++;
if( key==realArray[j] )
{
return j;
}
}
return -1;
}
main ()
{

int i = 0 ,


N=0,
mas[1000] = {0},
kind[2][1000] = {0},
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

key = 0,


P=0,
index = 0,
kindIndex = 0,
t = 0;

cout<>N;

cout<<"Massiv elementlarini kiriting!"<

for (i=0; i
cin>>mas[i];

cout<<"Qidiruv elementini kiriting!"<>key;

cout<<"Boshlangich qadamni kiriting! "<>P;



  1. = P-1; while(i

{
kind[0][kindIndex] = mas[i]; kind[1][kindIndex++] = i;

    1. += P;

}


index = InSeqsearch(mas,N,kind,kindIndex,key, &t);

Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

if (index == -1)
cout<<"Bunday element massivda yuq "<< index <<" "<cout<<"Bunday element bor"<<" "<

getch();
return 0;


}


3-усул.
#include
#include
#include
#include
struct TNode {
int value;
TNode* pnext;
};

//Ro'yhatga element qo'shish


void add2list(TNode **pphead, int val) {
TNode **pp = pphead, *pnew;
pnew = new TNode;
pnew->value=val;
pnew->pnext = *pp;
*pp = pnew;
}

//Ro'yhat elementlarini ekranga chiqarish


void print(TNode *phead)
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

{
TNode* p = phead;


while(p) {
cout <<" "<< p->value<<"-> ";


  1. = p->pnext;

}
cout << endl;


}


  • Ro'yhatda element qidirish, C++

TNode* Find(TNode *phead, int x)


{
TNode *p=phead;
while(p)
if (p->value==x) return p;
else p = p->pnext;
return 0;

}


//Ro'yhat elementini o'chirish
void deleteList(TNode *phead) {
if(phead) {
deleteList(phead->pnext);
if(phead)
delete phead;
}
}

//Asosiy qism


int main() {int mas[1000], N, key; TNode* T;
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

clrscr();


TNode *phead = 0;
cout<<"Ro’yhat uzunligini kirit"<cin>>N;
cout<<"Elementlarni kirit!"<for(int j=0; jcin>>mas[j];
for(int i = 0; i < N; ++i)
add2list(&phead,mas[i]);
cout<<"Qidiruv elementni kiriting!"<cin>>key;
cout << "Elements of the list:" << endl;
print(phead);
T=Find(phead,key);
if (T==0) cout <<"Bunday element yoq"<else cout <<"Bunday element bor"<<" "<value<<"
"<//deleteList(phead);
getch();
return 0;
}


4-усул.
#include
#include
int search(int a[], int N, int key, int *t)
{
int i=0;
while (i!=N)
{*t+=1;
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

if (a[i]==key) return i;


else i++;
}
//a[N]=key;
return -1;
}
main ()
{
int i, N, mas[1000], key, P, t=0; cout<>N;
cout<<"Massiv elementlarini kiriting!"<for (i=0; icin>>mas[i];
cout<<"Qidiruv elementini kiriting!"<cin>>key;
P=search(mas,N,key,&t);
if (P==-1) cout<<"Bunday elementni massivga qo'shis lozim"<<" "<
else cout<<"Bunday element bor"<<" "<
getch();
return 0;
}

Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

11-топшириқ
1–вариант. Кетма-кет қидирув усулидан фойдаланиб, А массив энг кичик элементини топинг.
2–вариант. А массив берилган, А массивдаги элементлар орасидан 30 дан катта элементларни топинг.
3–вариант. Кетма-кет қидирув усулидан фойдаланиб, А массив элементлари орасидан 3 (3,6,9, ...) га карралиларини экранга чиқаринг.
4–вариант. Кетма-кет қидирув усулидан фойдаланиб модули 20 дан катта ва 50 дан кичик элементларни топинг.
5–вариант. Кетма-кет қидирув усулидан фойдаланиб, А массив элементлари орасидан 4 (4,8,...) га карралиларини экранга чиқаринг.
6–вариант. Кетма-кет қидирув усулидан фойдаланиб 50 дан катта сонларни экранга чиқаринг.
7–вариант. Кетма-кет қидирув усулидан фойдаланиб, А массивда элементни ва таққослашлар сонини топинг.
8–вариант. Бинар қидирувдан фойдаланиб элементларни тасодифий равишда топинг.
9–вариант. Машина рақамлари рўйхати берилган: 345, 368, 876, 945, 564, 387, 230. Бинар қидирувдан фойдаланиб берилган рақамли машина қайси жойда турганини топинг.
10–вариант. Рўйхатда ҳар иккинчи элементни қидиринг ва таққослашалр сонини аниқланг.
11–вариант. Бинар қидирувдан фойдаланиб берилган калитли элементни топинг.
Бутун сонлар массиви берилган. Бошига қўйиш ва транспозиция усулига процедура тузилсин. Берилган масалани ечинг ва масалада ҳар иккала усулда топилган элементни рўйхат бошига жойлаштиринг.
12–вариант. Берилган массив элементлари ичидан энг катта элементни топилсин.

Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

13–вариант. Берилган массив элементлари ичидан энг кичик элементни топилсин.
14–вариант. 11 га бутун бўлинувчи энг катта сонни топинг (агар бундай сонлар кўп бўлса, у ҳолда уларнинг энг каттасини топинг; агар бундай сон мавжуд бўлмаса – шунга мос маълумот чиқаринг).
15–вариант. 11 га бутун бўлинувчи энг катта сонни топинг (агар бундай сонлар кўп бўлса, у ҳолда уларнинг энг кичигини топинг; агар бундай сон мавжуд бўлмаса – шунга мос маълумот чиқаринг).
16–вариант. Қўшни элементлари айирмаси 72 дан кичик бўлган элементни топинг. Агар бундай элементлар кўп бўлса, у ҳолда уларнинг энг каттасини топинг; агар бундай элемент мавжуд бўлмаса – шунга мос маълумот чиқаринг.
17–вариант. Қўшни элементлари бўлинмаси жуфт сон бўлган элементни топинг. Агар бундай элементлар кўп бўлса, у ҳолда уларнинг энг каттаси ѐки энг кичигини топинг; агар бундай элемент мавжуд бўлмаса – шунга мос маълумот чиқаринг.
18–вариант. Қўшни элементлар айирмаси жуфт бўлган элементни топинг. Агар бундай элементлар кўп бўлса, у ҳолда уларнинг энг каттаси ѐки энг кичигини топинг; агар бундай элемент мавжуд бўлмаса – шунга мос маълумот чиқаринг.
19–вариант. Керакли элементгача бўлган элементларнинг ўрта арифметиги 12 га тенг бўлган элемент топилсин. Агар бундай элемент мавжуд бўлмаса – шунга мос маълумот чиқаринг.
20–вариант. 10 бўлинувчи максимал элементни топинг. Агар бундай элемент мавжуд бўлмаса – шунга мос маълумот чиқаринг.
21–вариант. Қўшни элементлари айирмаси жуфт ва 3 га бўлинадиган элементни топинг. Агар бундай элемент мавжуд бўлмаса – шунга мос маълумот чиқаринг.
22–вариант. Керакли элементдан кейинги элементларнинг ўртача квадратик қиймати 10 дан кичик бўлган элементни топинг. Агар бундай
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

элементлар кўп бўлса, у ҳолда уларнинг энг каттасини топинг; агар бундай элемент мавжуд бўлмаса – шунга мос маълумот чиқаринг.


23–вариант. Ҳар бир х элемент учун tg(x) қийматини аниқланг ва энг катта қийматга эга бўлган элементни 1-чи ўринга қўйинг.

6-амалий машғулот. Маълумотларни саралаш

Қуйида тартибсиз элементлардан иборат массив берилган, ушбу массивнинг элементларини бир нечта саралаш усуллари орқали амалга оширилган дастурлар коди келтирилган:



Индексли саралаш усули:

#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; icin>>mas[i];
insertSort(mas,n);
cout<<"Saralangan massivni chiqaring"<for(i=0; icout<getch();
return 0;
}
натижа:



Пуфаксимон саралаш усули:
#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; icin>>mas[i];
bubbleSort(mas,n);
cout<<"Saralangan massiv"<for(i=0; icout<getch();
return 0;
}
натижа:


Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев




Танлаш ёки ажратилган оралиқ асосида саралаш усули:
#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; icin>>mas[i];
selectSort(mas,n);
cout<<"Saralangan massiv"<for(i=0; icout<getch();
return 0;
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

}
Натижа:






Шейкер саралаш усули:
#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;
}
Натижа:

12-топшириқ


Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

1-вариант. Таъмирлаш устахонасида бир нечта (N та) машина бор. Улар тўғрисида қуйидаги маълумотларга эгамиз: рақами, маркаси, эгасини исми, охирги марта таъмирланганлиги санаси (куни, ойи, йили), таъмирдан чиқиши лозим бўлган сана (кун, ой, йил).
2-вариант. Тўғридан-тўғри қўшиш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқиш (вариантга мос равишда): Машина эгаларини исмлари бўйича алифбо тартибида жойлаштирилсин ва мос равишда уларнинг машиналари ҳақидаги маълумотлар чиқарилсин.
3-вариант. Пуфаксимон саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: Автомобилларни таъмирланиш тартиби ишлаб чиқилсин. Бу ерда таъмир тугаши санаси қайси автомобил учун эртароқ бўлса шунга биринчи навабатда хизмат кўрсатилади.
4-вариант. Пуфаксимон саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: "Жигули" маркасидаги машиналарни олдинги таъмир санаси бўйича камайиш тартибида жойлаштирилсин.
5-вариант. Пуфаксимон саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: Олдинги таъмир қилинганлар сони 2 га тенг бўлган машиналар рақамлари бўйича камайиш тартибида жойлаштирилсин.
6-вариант. Танлаш ѐки ажратилган оралиқ асосида саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: Олдин таъмир қилинмаган машиналарни таъмирдан чиқиш санаси бўйича ўсиш тартибида жойлаштиринг.
7-вариант. Индексли саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: "Мерседес" маркали машина эгаларини алифбо бўйича тескари тартибда жойлаштиринг.
8-вариант. Шейкер саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: Бошқаларидан олдинроқ таъмирланадиган

Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

машиналарни уларни маркаси бўйича алифбо тартибида жойлаштиринг (таъмир тугатилиши санаси 31.12.2007 дан эрта).
9-вариант. Индексли саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: "Жигули" маркасидаги машиналарни рақамлари бўйича ўсиш тартибида жойлаштиринг.
10-вариант. Тўғридан-тўғри қўшиш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқиш: ўтган йилдан бери таъмирланмаган машиналарни уларнинг эгалари исмлари бўйича алифбо тартибида жойлаштиринг.
11-вариант. Тўғридан-тўғри қўшиш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқиш: кейинги ойда таъмирланиши лозим бўлган машиналарни охирги марта таъмирланганлик санаси бўйича ўсиш тартибида келтиринг.
12-вариант. Индексли саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: Олдинги таъмир қилинганлар сони 3 мартадан кўп бўлган машиналарни эгалари исмларини алифбо бўйича тескари тартибда жойлаштиринг.
13-вариант. Пуфаксимон саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: "Мерседес" маркасидаги машиналарни рақамлари бўйича камайиш тартибида жойлаштиринг.
14-вариант. Тўғри танлов усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси: МС ва А, олий математика, физика, дастурлаш, топширган сессия умумий бали саралаш амалга оширилсин.
15-вариант. Шейкер саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси: талабалар фамилияларини алифбо тартибида саралаш амалга оширилсин.
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

16-вариант. Шейкер саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси: Талабалар фамилияларини алифбо бўйича тескари тартибда саралаш амалга оширилсин.


17-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси: Талабаларни ѐши бўйича ўсиш тартибида саралаш амалга оширилсин.
18-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси: Талабаларни ѐши бўйича камайиш тартибда.
19-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси: Талабаларни умумий бали бўйича ўсиш тартибда саралансин.
20-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси: Талабаларни умумий бали бўйича ўсиш тартибда саралансин.
21-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси: Талабаларни биринчи имтиҳони натижаси бўйича ўсиш тартибда.
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

22-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси: Талабаларни иккинчи имтиҳони натижаси бўйича камайиш тартибда.


23-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси: Талабаларни учинчи имтиҳони натижаси бўйича ўсиш тартибда.
24-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси: Талабаларни тўртинчи имтиҳони натижаси бўйича камайиш тартибда.
25-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси талабаларни биринчи ва иккинчи имтиҳони натижаларини ўсиш тартибида саралансин.
26-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. N та талабадан иборат гуруҳ тузилсин. Қуйидаги маълумотлар берилган: фамилия, исм, туғилган йили, фанлар бўйича баҳоси талабаларни биринчи ва иккинчи имтиҳони натижаларини камайиш тартибида саралансин.
27-вариант. Пуфаксимон саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин: А массивни энг катта (энг кичик) элементини экранга чиқариш дастурини тузинг.
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

28-вариант. Шейкер саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. А массив элементлари қийматларини камайиш тартибида саралаш дастурини тузинг.


29-вариант. Индексли саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: А массивда элементлар берилган. Мазкур массив элементларидан шундай В массив шакллантирувчи шундай дастур тузингки, В массив элементлари камайиш тартибида сараланган бўлсин.
30-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. Элементлари ўсиш тартибида жойлашган А сонли массив ва а сони берилган. а ни А массивга шундай қўшингки, тартибланганлик бузилмасин.
31-вариант. Пуфаксимон саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин: элементлари ўсиш тартибида жойлашган А массивни, элементлари камайиш тартибида жойлашган массив кўринишда тез қурувчи дастур тузинг.
32-вариант. Шейкер саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. Манфий ва мусбат сонлардан ташкил топган А массив берилган. Барча манфий сонларни чиқариб, мусбатларини ўсиш тартибда жойлаштирувчи дастур тузинг.
33-вариант. Индексли саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: Берилган А массивдан кетма-кет сонлар олиб, улардан ўсиш тартибида шакллантирилган В массив ҳосил қилувчи дастур тузинг.
34-вариант. Пуфаксимон саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин: Муаллифлар рўйхати А массив шаклида берилган. Муаллифларни алифбо тартибида шакллантириш ва шаклланган рўйхатни экранга чиқариш дастурини тузинг.
35-вариант. Шейкер саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. Телефон станциясида n та мижоз бор.
Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

Қуйидаги шаклда рўйхат ҳосил қилувчи дастур тузинг: телефон рақами, мижоз фамилияси (телефон рақамлари ўсиш тартибда жойлашади).


36-вариант. Индексли саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқинг: А массивни узунликлари ҳар ҳил бўлган n та сўз ташкил қилади. Сўзларни узунликлари бўйича ўсиш тартибида жойлаштирувчи дастур тузинг.
38-вариант. Тўғридан-тўғри қўшиш саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. А массив элементлари модулларини ўсиш ва камайиш тартибида сараловчи дастур тузинг.
39-вариант. Шейкер саралаш усулидан фойдаланиб, саралашни амалга ошириш дастурини ишлаб чиқилсин. Сараланган А сонли массивда ҳар бир жуфт элементлар орасига чап элементдан катта ўнг элементдан кичик сон қўйинг ва ҳосил бўлган массивни экранга чиқаринг.

Мураккаб топшириқлар
1-вариант. Шахмат доскасидаги иккита катак координаталари берилган. Минимум нечта юришда ўтишлар сонини экранга чиқади.
2-вариант. Лабиринт бўйича ўтишни аниқловчи дастурни тузинг. Лабиринт квадратлардан ибората матрица кўринишида берилган. Ҳар
бир квадрат ѐ очиқ ѐки ѐпиқ. Ёпиқ квадратларга ўтиш тақиқланган. Агар квадрат очиқ бўлса, унга томонлардан ўтиш мумкин, бурчак бўйича мумкин эмас. Ҳар бир квадрат матрицадаги координаталари билан аниқланади. Дастурда берилган ўтишлардан харакатланиб, лабиринтдан чиқиш йўли топилсин. Ўтиш топилгандан сўнг, йўлни квадрат координаталари кўринишида чиқарсин. Йўлни сақлаш учун стекдан фойдаланинг.

Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев

Фойдаланилган адабиётлар


  1. Алфред В.А., Джон Э.Х., Джефри Д.У. Структура данных и алгоритмов. Издательский дом «Вильямс» Москва – Санкт-Петербург – Киев,

2003 – 384 с.




  1. Александрский А. Современное проектирование на С++. Изд. «Вильямс». Москва, Санк-Петербург, Киев-2002.




  1. Антон Е.М., Плисс О.А., Терехов А.А., Уфнаровский В.В. Конспект лекций «Обзор и сравнительный анализ языков программирования». – Санкт-

Петербург, 2000.




  1. Берзтисс А.Т. Структуры данных. – М.: Статистика, 1984.




  1. Вирт Н. Алгоритмы и структуры программы. – М.: Мир, 1985.




  1. Джамса К. Учимся программировать на языке С++. – М.: «МИР», 1997.




  1. Лабор В.В. «Си Шарп» Создание приложений для Windows. – Минск,

Харвест, 2003.




  1. Ленгсам Й. Структуры данных для персональных ЭВМ. – М.: Мир,

1989.



  1. Лойко В.И. Структуры и алгоритмы обработки данных. Учебное пособие для вузов. – Краснодар: КубГАУ, 2000. - 261 с.




  1. Максим Динман. С++ освой на примерах. Спб.:БХВ-Петербург. 2006.-

384с.



  1. Майкл Х., Боб Арнсон. Visual C++.NET для «ЧАЙНИКОВ». Москва,

Санк-Петербург, Киев, Изд. ДИАЛЕКТИКА, 2003.




  1. Павловская Т.А. Щупак Ю.А. С/С++ программирование языке уровня структурное программирование. Изд. «ПИТЕР», 2003.




  1. Сетфан Р.Д. С++ для «ЧАЙНИКОВ». Москва, Санк-Петербург, Киев,

Изд. «ДИАЛЕКТИКА», 2003.




  1. Трамбле Ж., Соренсон П. Введение в структуры данных. – М.:

«Машиностроение», 1982.


Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев



  1. Fozilov Sh., Jumanazarov S., Muhamedieva D. Dasturlash asoslari (masalalar va echimlar). – Tashkent, 2006. 196 b.




  1. Knuth D. E. (1968). The Art of Computer Programming Vol. I: Fundamental Algorithms, Addison – Wesley, Reading, Mass. (Русский перевод: Кнут Д.

Искусство программирования для ЭВМ. Том 1: Основные алгоритмы. – М.:


«Мир», 1976. Русский перевод переработанного издания: Кнут Д. Искусство программирования. Том 1: Основные алгоритмы. – М.: Издательский дом «Вильямс», 2000).


  1. Pratt, T. W. (1975). Programming Languages: Design and Implementation, Prentice-Hall, Englewood Cliffs, N. J. (Русский перевод: Пратт Т. Языки программирования. Разработка и реализация. – М.: «Мир», 1979).


Муаллифлар: М.Х.Худойбердиев, Б.Б.Акбаралиев
Download 1.74 Mb.

Do'stlaringiz bilan baham:
1   ...   7   8   9   10   11   12   13   14   15




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