Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Помогите плис с программой

35K
22 декабря 2008 года
RussianManiac
6 / / 07.05.2008
Пишу программу -
Составить описание класса для определения одномерных массивов целых чисел. Предусмотреть возможность обращения к отдельному элементу массива с контролем выхода за пределы массива , возможность задания произвольных границ , индексов при создании объекта и выполнения операций поэлементного сложения и вычитания массивов с одинаковыми границами индексов , умножения и деления , всех элементов массива на скаляр , вывода на экран элементов массива по заданному индексу и всего массива . Написать программу , демонстрирующую работу с этим классом . программа должны содержать меню, позволяющее осуществить проверку всех функций класса.

Помогите пожалуйсто дописать функции - операций поэлементного сложения и вычитания массивов с одинаковыми границами индексов , умножения и деления , всех элементов массива на скаляр

ВОт что напчиал на сегодняшний день, на консоль в билдере.


:)
Код:
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
#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<<"Vvedite massivbi\n";
 cout<<"Kol-vo massivov: ";
 cin>>x;
 cout<<"Dlina massiva: ";
 cin>>y;
ptr=new int*[x];
for(int i=0;i<x;i++){
ptr=new(int[y]);
for(int j=0;j<y;j++)
ptr[j]=rand()%9;        //рандом
}
}
//------------------------------------------------------------   -
void Massivs::Vuvod(int x1,int y1){
for(int i=0;i<x1;i++){
for(int j=0;j<y1;j++)
cout<<ptr[j]<<" ";
cout<<endl;
}
getch();
}
 //------------------------------------------------------------------------
void Massivs::VuvodMassiv(int x1){
cout<<"Vvedite nomer massiv: ";
cin>>x1;
if(x1<x){
for(int j=0;j<y;j++)
cout<<ptr[x1][j]<<" ";
cout<<endl;
}
else
cout<<"Max massiv = "<<x-1;          //контролm выхода за пределы массива
getch();
}
//-------------------------------------------------------------
void Massivs::VuvodElem(int x1,int y1){
cout<<"Vvedite nomer massiva: ";
cin>>x1;
cout<<"Vvedite nomer elementa massiva: ";
cin>>y1;
if(x1<x && y1<y)
cout<<"Element= "<<ptr[x1][y1]<<endl<<"Massive ";
else
cout<<"Net takogo elementa"<<endl;
//for(int j=0;j<y;j++)
//cout<<ptr[x1][j];
getch();
}

//Главная функция
int main(int argc, char* argv[])
{
Massivs pt;
argc=0;
pt.x=0;pt.y=0;
do{
clrscr();
//вывод меню
cout<<"1- Size massivs and vvod\n2- Vuvod all massivs\n";
cout<<"3- Vuvod massiv\n4- Vuvod element massiv\n";
cout<<"5 - Exit\n";
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;
}
//---------------------------------------------------------------------------
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог