Читайте также:
|
|
#include <iostream. h>
#include <conio. h>
int n, a[20];
void vst();
int main(int argc, char* argv[])
{ int i;
cout << "Vvedite chislo elementov: ";
cin >> n;
for (i=0; i<n; i++)
{ cout << "Vvedite chislo " << i+1 << ": ";
cin >> a[i];
}
vst(); getch();
return 0;
}
void vst()
{int i, j, m;
for (i=1; i<n; i++)
{ m=a[i];
for (j=i-1; j>=0&&m<a[j]; j--)
{ a[j+1]=a[j]; a[j]=m;
} }
for (i=0; i<n; i++)cout << a[i] << " ";
cout << endl;
}
Задан 1мер. масив. Написать ф-ю линейного
Поиска заданного элемента в
Массиве с использованием барьера.
#include <iostream. h>
#include <conio. h>
int n, a[20];
void poisk();
int main(int argc, char* argv[])
{ int i;
cout << "Vvedite chislo elementov: ";
cin >> n;
for (i=0; i<n; i++)
{ cout << "Vvedite chislo " << i+1 << ": ";
cin >> a[i];
} poisk(); getch();
return 0;
}
void poisk()
{ int i, m;
cout << "Vvedite iskomij element: ";
cin >> m;
a[n]=m;
for (i=0; i<=n; i++)
{ if (a[i]==m)
if (i==n)
cout << "Elementa v masive net" << endl;
else
{cout << " Element: " << a[i] << endl; break;
}}}
Задан отсортированный по возрастанию массив.
Написать ф-ю 2го поиска заданного элемента в массиве.
#include <iostream. h>
#include <conio. h>
int n, a[20];
void poisk();
int main(int argc, char* argv[])
{ int i;
cout << "Vvedite chislo elementov: ";
cin >> n;
for (i=0; i<n; i++)
{ cout << "Vvedite chislo " << i+1 << ": ";
cin >> a[i];
} poisk(); getch();
return 0;
}
void poisk()
{ int m, x, i=0, j=n-1;
cout << "Vvedite iskomij element: ";
cin >> m;
while (i<j)
{ x=(i+j)/2;
if (m>a[x]) i=x+1;
else j=x;
}
if (a[i]==m)
cout << " Element: " << a[i] << endl;
else cout << "Elementa v masive net" << endl;
}
Написать программу формирующую стек из 7 чисел. Удалить последний элемент стека.
Предусмотреть вывод результата и очистку стека в конце работы.
#include <conio. h>
#include <iostream. h>
struct stk
{ int inf;
stk *a;
} st;
stk *adst(stk *, int);
stk *del(stk *);
int main(int argc, char* argv[])
{ int i, inf, n=7;
stk *sp, *st=NULL;
for (i=0; i<n; i++)
{ cout << "Vvedite element " << i+1 << ": ";
cin >> inf;
st=adst(st, inf);
} sp=st;
while (sp->a->a!=NULL) sp=sp->a;
sp->a=NULL;
del(st); getch();
return 0;
}
stk *adst(stk *st, int inf)
{ stk *spt=new stk;
spt-> inf = inf;
spt->a=st;
return spt;
}
stk *del(stk *st)
{ int inf;
stk *spt;
while (st!=NULL)
{ spt=st;
st=st->a;
inf =spt-> inf;
cout << inf << " ";
delete spt;
} cout << endl;
return NULL;
Написать программу формирующую стек из 6 чисел. Удалить первый элемент стека.
Предусмотреть вывод результата и очистку стека в конце работы.
#include <conio. h>
#include <iostream. h>
struct stk
{ int inf;
stk *a; } st;
stk *adst(stk *, int);
stk *del(stk *);
int main(int argc, char* argv[])
{ int i, inf, n=6;
stk *spt, *st=NULL;
for (i=0; i<n; i++)
{ cout << "Vvedite element " << i+1 << ": ";
cin >> inf;
st=adst(st, inf);
} spt=st;
st=st->a;
spt=NULL;
del(st); getch();
return 0; }
stk *adst(stk *st, int inf)
{ stk *spt=new stk;
spt-> inf = inf;
spt->a=st;
return spt; }
stk *del(stk *st)
{int inf;
stk *spt;
while (st!=NULL)
{ spt=st; st=st->a; inf =spt-> inf;
cout << inf << " "; delete spt; }
cout << endl; return NULL; }
Написать программу формирующую стек из 8 чисел. Добавить элемент в конец стека.
Дата добавления: 2015-12-08; просмотров: 46 | Нарушение авторских прав