|
1mposs1ble
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 3
|
|
класс массивов
« : 22 Апрель 2010, 00:16:07 »
|
|
Пишу программу -
Составить описание класса для определения одномерных массивов целых чисел. Предусмотреть возможность обращения к отдельному элементу массива с контролем выхода за пределы массива , возможность задания произвольных границ , индексов при создании объекта и выполнения операций поэлементного сложения и вычитания массивов с одинаковыми границами индексов , умножения и деления , всех элементов массива на скаляр , вывода на экран элементов массива по заданному индексу и всего массива . Написать программу , демонстрирующую работу с этим классом . программа должны содержать меню, позволяющее осуществить проверку всех функций класса.
Помогите пожалуйсто дописать функции - операций поэлементного сложения и вычитания массивов с одинаковыми границами индексов , умножения и деления , всех элементов массива на скаляр
ВОт что напчиал на сегодняшний день, на консоль в билдере.
#include
#include
#include
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
//Класс массивы
class Massivs{
public:
int x,y,**ptr;//кол-во массивов, эл-ов в них и указатель на массивы
void Vvod();//ввод массивов
void Vuvod(int x1,int y1);//вывод всех массивов
void VuvodMassiv(int x1);//вывод 1 массива
void VuvodElem(int x1,int y1);//вывод эл-та в массиве
};
//-------------------------------------------------------------
void Massivs::Vvod()
{
if(x>0 && y>0)delete ptr; // разрушает объект, на который ссылается указатель , и освобождает область памяти, выделенную для него ранее операцией
cout
cout
cin>>x;
cout
cin>>y;
ptr=new int*
;
for(int i=0;i
ptr=new(int[y]);
for(int j=0;j
ptr[j]=rand()%9; //рандом
}
}
//------------------------------------------------------------ -
void Massivs::Vuvod(int x1,int y1){
for(int i=0;i
for(int j=0;j
cout
cout
}
getch();
}
//------------------------------------------------------------------------
void Massivs::VuvodMassiv(int x1){
cout
cin>>x1;
if(x1
for(int j=0;j
cout
cout
}
else
cout
getch();
}
//-------------------------------------------------------------
void Massivs::VuvodElem(int x1,int y1){
cout
cin>>x1;
cout
cin>>y1;
if(x1
cout
else
cout
//for(int j=0;j
//cout
getch();
}
//Главная функция
int main(int argc, char* argv[])
{
Massivs pt;
argc=0;
pt.x=0;pt.y=0;
do{
clrscr();
//вывод меню
cout
cout
cout
cin>>argc;//выбор опции меню
//запуск функции класса
switch(argc){
case 1:
pt.Vvod();
break;
case 2:
pt.Vuvod(pt.x,pt.y);
break;
case 3:
pt.VuvodMassiv(0);
break;
case 4:
pt.VuvodElem(0,0);
break;
}
}while(argc!=5);
return 0;
|