Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2011, 17:24   #1
vladxxl
Пользователь
 
Регистрация: 27.11.2010
Сообщений: 16
По умолчанию Классы

Код:
/*программа динамически инициализирует матрицу 3 на 3. Считает сумму соответствующих элементов первых двух столбцов(1 производный класс). Подсчитывает количество отрицательных и положительных елементов(2 производный класс) */
#include <iostream>

using namespace std;

class First{
  protected:
     int** mas;
  public:
     //Конструктор
     Ашкые(){
      //Выделим память под 3 столбца и 3 строчки 
       mas = new int*[3]; // 3 строки
for (int i=0; i <3; i++){
mas[i] = new int[3]; }// 3 стлб
       //Считываем массив
       cout<<"Vvedit matrix: \n";
       for(int i=0; i<3; i++){
         for(int j=0; j<3; j++){
            cin>>mas[i][j];
         }
       }
     }
     biba (const biba& obj) {//конструктор копирования

mas = new int*[3];   // новая копия
for (int i=0; i <3; i++)
mas[i] = new int[3];

       for(int i=0; i<3; i++){
         for(int j=0; j<3; j++){
            mas[i][j]=obj.mas[i][j];}}
            }
            
     
     ~biba(){//деструктор
       for (int i=0; i<3; i++){ delete[] mas[i];
       delete[] mas;
     }
     }
     };
     class Second:public First{
           public:
     void funct1(){
          for(int i=0; i<3; i++){
             cout<<mas[i][0]<<" + "<<mas[i][1]<<" = "<<mas[i][0]+mas[i][1]<<"\n";
          }
     }
     };
     class third:public Second{
           public:
     
     void funct2(){
          int dod=0, vid=0;
          for(int i=0; i<3; i++){
             for(int j=0; j<3; j++){
                if(mas[i][j]<0){
                    vid++;
                }else
                if(mas[i][j]>0){
                    dod++;
                }
             }
          }
          
          cout<<"Dodatni: "<<dod<<"\n";
          cout<<"Videmni: "<<vid<<"\n";
     }
};


int main(){    
    
    third mas;
    mas.funct1();
    mas.funct2();
    
    system("PAUSE");
    return 0;    
}
Помогите переделать под программку с динамическими классами, переопределяющимеся функциями, виртуальными функциями, дружественными функциями, перегрузкой конструкторов базового класса. Спасибо)) Если действий для использования всего вышесказанного не хватит можно одни и те же действия делать понескольку раз. Спасибо за потраченное время. +1 каждому))
vladxxl вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Классы ymanety Общие вопросы C/C++ 2 09.11.2010 22:13
Классы Lotles Общие вопросы C/C++ 8 15.10.2010 19:48
Классы. MAKEDON Общие вопросы C/C++ 1 24.07.2009 18:35
классы Ferghost Помощь студентам 3 05.06.2009 03:20