| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > динамический массив. в вижуал студио. |
| Автор: kronul 20.3.2010, 17:39 |
| надо: Сформировать одномерный динамический массив целых чисел размерностью К. из массива удалить N наименьших элементов, изменяя размер массива и сохраняя порядок следования остальных элементов массива. N должно быть меньше К. использовать временный динамический массив. почти всё сделал, но вот как из массива удалить N наименьших элементов, изменяя размер массива и сохраняя порядок следования остальных элементов массива, я не знаю :( #include "stdafx.h" #include <iostream> #include <ctime> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { int action; int n, *pmas, np, nn,k, b, l, lc, lt, *pmas2; int diapazon,minnum; unsigned int r; char cont; b=0; do { cout<<"\n1 - Create and initialize massive\n"; cout<<"2 - Show massive\n"; cout<<"3 - udalenie elimentov\n"; cout<<"0 - EXIT\n"; cin>>action; cin.get(); switch (action) { case 1: b=1; r=time(NULL)2767; srand®; cout<<"diapazon=?"; cin>>diapazon; cin.get(); cout<<"min. number=?"; cin>>minnum; cin.get(); cout<<"size of massive=?"; cin>>n; cin.get(); pmas = new int[n]; for(int i=0;i<n;i++)>0) np++; else if(*(pmas+i)<0) nn++; }} break; case 3: if (b == 0) cout<<"\nMassive not create\n"; else { cout<<"skoljko elimentov udalitj=?"; cin>>k; } break; case 0: if (b= 0) delete [] pmas; delete [] pmas2; break; default: cout<<"Very much!\n"; cin.get(); cout<<"For continue -- <enter>,for exit -- any symbol and <enter>\n"; cin.get(cont); } }while(action != 0); return 0; } вот код проги без вычитания наим.элементов :( надо что бы в 3ем меню он отнимал К наименьших чисел. и при выборе 2ого меню он его отображал |
| Автор: k0rvin 20.3.2010, 22:17 |
| а всё потому, что страуструп сказал "накуй спецтип массивов, можно через указатели сделать" |
| Автор: kronul 20.3.2010, 23:10 |
| чо? |