Форум программистов, компьютерный форум CyberForum.ru

Задачка - C++

Восстановить пароль Регистрация
 
ani-ni4ka
 Аватар для ani-ni4ka
0 / 0 / 0
Регистрация: 15.03.2011
Сообщений: 103
10.02.2012, 22:53     Задачка #1
Всем привет)
У меня есть проблема вот в этом задаче:
Реализовать 2 базовых и 1 производный классы. В базовых классах описать целочисленную и вещественную матрицы. Реализовать виртуальные функции просмотра объекта, а также в производном классе перегруженные функции вычисляющие мин. элемент и сумму элементов, находящихся выше главной диагонали каждой матрицы.
Проблемка вот в чем..Я хочу реализовать матрицы с помощью динамических массивов, но мне выдает ошибки..и я как-то теряюсь..не знаю, что неправильно..
помогите пожалста..
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
#include <vcl.h>
#include <iostream>
#include <conio.h>
#pragma hdrstop
 
#include <tchar.h>
using namespace std;
//---------------------------------------------------------------------------
 
 
class Base1
{
    protected:
    int n;
    int **matrix1;
 
public:
 
    Base1()
    {
        matrix1=new int *[n];
        for (int i=0; i < n; i++)
        matrix1[i]=new int [n];
        cout<<"Vvedite razmernost': ";
        cin>>n;
        for (int i=0; i < n; i++)
        {
             for (int j = 0; j< n; j++)
             {
                  matrix1[i][j]=rand()%100;
             }
        }
     }
      ~Base1() ;
      /*{
          delete int** matrix1 ;
      }          */
    virtual void view1()
    {
        cout<<endl;
        cout<<"INT Matrix: "<<endl;
        for (int i = 0; i < n; i++)
        {
            for (int j = 0; j < n; j++)
            {
              cout<<matrix1[i][j];
              cout<<endl;
            }
        }
    }
 
};
class Base2
{
    protected:
    int m;
    double **matrix2;
    public:
    Base2()
    {
      matrix2=new double *[m];
        for (int i=0; i < m; i++)
        matrix2[i]=new double [m];
        cout<<"Vvedite razmernost': ";
        cin>>m;
        for (int i=0; i < m; i++)
        {
             for (int j = 0; j< m; j++)
             {
                  matrix2[i][j]=rand()%100;
             }
        }
    }
    ~Base2();
    /*{
        delete **matrix2;
    }              */
    virtual void view2()
    {
       cout<<endl;
        cout<<"DOUBLE Matrix: "<<endl;
        for (int i = 0; i < m; i++)
        {
            for (int j = 0; j < m; j++)
            {
              cout<<matrix2[i][j];
              cout<<endl;
            }
        }
    }
 
};
  class Derived:public Base1, public Base2
  {
     public:
     int minimal(int l[100][100]);
     double minimal(double w[100][100]);
     int summ(int l[100][100]);
     double summ(double w[100][100]);
  };
 
 int Derived:: minimal(int l[100][100])
 {
   int i,j;
   int min1=matrix1[0][1];
       for(j=i+1;j<n;j++)
       {
           if (min1>matrix1[i][j])
           {
            min1=matrix1[i][j];
 
           }
       }
   }
 
 
 double Derived:: minimal(double w[100][100])
 {
     int i,j;
     double min2=matrix2[0][1];
     for(i=1;i<m-1;i++)
     {
         for(j=i+1;j<m;j++)
         {
             if (min2>matrix2[i][j])
             {
                 min2=matrix2[i][j];
             }
         }
     }
 }
 int Derived:: summ(int l[100][100])
 {
     int i,j;
     int s1=0;
     for (i = 1; i < n-1; i++)
      {
         for (j = i+1; j < n; j++)
          {
              s1+=matrix1[i][j];
         }
     }
 }
 double Derived::  summ(double w[100][100])
 {
     int i,j;
     double s2=0;
     for (i = 1; i < m-1; i++)
      {
 
          for (j = i+1; j < m; i++)
           {
            s2+=matrix2[i][j];
           }
           }
 }
#pragma argsused
int _tmain(int argc, _TCHAR* argv[])
{
 
    Derived a;
 
    a.view1();
    a.view2();
    a.summ(a.matrix1);
    a.summ(a.matrix2);
    a.minimal(a.matrix1);
    a.minimala(a.matrix2);
 
    getch();
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.02.2012, 22:53     Задачка
Посмотрите здесь:

С++задачка C++
C++ задачка
Задачка C++
задачка на с++ C++
Задачка C++
Задачка C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
10.02.2012, 23:17     Задачка #2
в след. раз список ошибок приводи.

у тебя в мейне обращение к закрытым полям (matrix1, matrix2) идёт.
ani-ni4ka
 Аватар для ani-ni4ka
0 / 0 / 0
Регистрация: 15.03.2011
Сообщений: 103
11.02.2012, 21:33  [ТС]     Задачка #3
Пасиб..
Yandex
Объявления
11.02.2012, 21:33     Задачка
Ответ Создать тему
Опции темы

Текущее время: 16:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru