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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
gematogenka
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 29
#1

помогите найти ошибку - C++

20.01.2012, 18:05. Просмотров 1666. Ответов 7
Метки нет (Все метки)

описать класс реализующий тип данных<вещественная матрица>. Для данного класса описать конструктор с параметрами,а также с параметрами по умолчанию.Класс должен реализовать метод вычисления четных элементов матрицы
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
#pragma argsused
#include <conio.h>
#include <iostream.h>
#include <math.h>
const float con[3][3]={{1,1,2},{3,4,5},{6,7,8}};
class matrix
{
        private:
         float** a;
         int m,n;
        public:
        matrix (float**a1, int m1=3, int n1=3)
        {
         a=a1;
         m=m1;
         n=n1;
        }
int summ()
{
  float sum=0;
     for(int i=0; i<m; i++)
        {for (int j=0; j<n; j++)
          {
            if ((a[i][j])%2!=0)
            else sum+=a[i][j];
          }
}
return sum;
}
 
int main(int argc, char* argv[])
{
matrix mas;
getch();
return 0;
}
выводит ошибки:
[C++ Error] Unit1.cpp(29): E2060 Illegal use of floating point в 25 строчке
[C++ Error] Unit1.cpp(30): E2054 Misplaced else в 26 строчке
[C++ Error] Unit1.cpp(38): E2285 Could not find a match for 'matrix::matrix()'
[C++ Error] Unit1.cpp(46): E2040 Declaration terminated incorrectly в 38 строчке
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.01.2012, 18:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос помогите найти ошибку (C++):

Помогите найти ошибку: По двум сторонам и углу найти все остальное - C++
Доброго времени суток. В универе дали задание написать программу &quot;По двум сторонам и углу между ними в треугольнике АВС найти два остальных...

Помогите найти ошибку - C++
Помогите, с этим кодом неправильно..(( proizv красным почерком #include &lt;iostream&gt; using namespace std; int main() { int ...

Помогите найти ошибку - C++
Дана точка на плоскости с координатами (х, у). Составить программу, которая выдает одно из сообщений &quot;Да&quot;, &quot;Нет&quot;, &quot;На границе&quot; в...

помогите найти ошибку - C++
#include &quot;../../header.h&quot; int main() { vector &lt;int&gt; nums(0); int num = 0; while (cin&gt;&gt;num, nums.size()&lt;2) ...

Помогите найти ошибку - C++
//Даны три положительных числа а, b, c. Проверить, могут ли они быть длинами сторон треугольника. Если да, то вычислить площадь этого...

Помогите найти ошибку - C++
Программа быстрого возведения в степень.препод сказал, что одна ошибка из-за которой не работает прога.помогите найти #include...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
dimcoder
Полярный
462 / 434 / 68
Регистрация: 11.09.2011
Сообщений: 1,134
20.01.2012, 18:10 #2
Цитата Сообщение от gematogenka Посмотреть сообщение
((a[i][j])%2!=0)
Хотите узнать, чётное ли вещественное число? Не так быстро...

Цитата Сообщение от gematogenka Посмотреть сообщение
Misplaced else в 26 строчке
Ваш код:
если (что-то) то иначе
Цитата Сообщение от gematogenka Посмотреть сообщение
Could not find a match for 'matrix::matrix()'
У вас не описан конструктор без параметров
0
gematogenka
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 29
20.01.2012, 18:51  [ТС] #3
как это исправить?
0
dimcoder
Полярный
462 / 434 / 68
Регистрация: 11.09.2011
Сообщений: 1,134
20.01.2012, 18:58 #4
1) Ответьте мне как определить является ли вещественное число четным, и я вам напишу код.
2) Убрать else. Это исправит синтаксическую ошибку, но я не стал вникать чего вы хотите.
3) Описать конструктор без параметров
0
gematogenka
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 29
20.01.2012, 20:16  [ТС] #5
1)проверить как оно делится на 2
если без остатка-четное
иначе-нечет
вот исправила все
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
#pragma argsused
#include <conio.h>
#include <iostream.h>
#include <math.h>
const float con[3][3]={{1,1,2},{3,4,5},{6,7,8}};
class matrix
{
        private:
         float** a;
         int m,n;
        public:
        matrix ( )
 
int summ()
{
  float sum=0;
     for(int i=0; i<m; i++)
        {for (int j=0; j<n; j++)
 
           if (a[i][j]%2=0)
           sum+=a[i][j];
             cout<<sum;
        }
return sum;
}
 
int main(int argc, char* argv[])
{
matrix mas;
getch();
return 0;
}
теперь выдает Declaration terminated incorrectly в int summ() и после всей проги
0
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
20.01.2012, 20:22 #6
Цитата Сообщение от gematogenka Посмотреть сообщение
1)проверить как оно делится на 2
если без остатка-четное
иначе-нечет
Ага. Разделите 1. на 2. И получите 0.5. Как видите, остатка нет. Значит 1 - четное. Значит все вещественные числа - четные. Шикарно, да?

Может вы хотели сказать целая часть вещественного числа?

Добавлено через 2 минуты
Цитата Сообщение от gematogenka Посмотреть сообщение
вот исправила все
Неа.
После конструктора нет ;
После класса нет };
И для вещественных чисел не работает %
0
gematogenka
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 29
20.01.2012, 20:28  [ТС] #7
Цитата Сообщение от soon Посмотреть сообщение
Ага. Разделите 1. на 2. И получите 0.5. Как видите, остатка нет. Значит 1 - четное. Значит все вещественные числа - четные. Шикарно, да?

Может вы хотели сказать целая часть вещественного числа?

Добавлено через 2 минуты

Неа.
После конструктора нет ;
После класса нет };
И для вещественных чисел не работает %
ох черт
точно.
а как тогда быть
0
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
20.01.2012, 20:37 #8
Я вижу 3 варианта.
1) Забить и сделать с int
2) Сделать с вещественным типом и сказать, что там все четные, т.к. делятся без остатка.
3) Выделять целую часть.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.01.2012, 20:37
Привет! Вот еще темы с ответами:

Помогите найти ошибку - C++
в чём здесь ошибка #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; int main() { clrscr(); ...

Помогите найти ошибку - C++
#include&lt;iostream.h&gt; #include&lt;conio.h&gt; #include&lt;fstream.h&gt; void main() {clrscr(); struct podrozd {char naimenovanie; int...

Помогите найти ошибку. - C++
Дана целочисленная прямоугольная матрица. Определить: 1. Максимум среди сумм элементов диагоналей, параллельных главной диагонали...

Помогите найти ошибку - C++
Здравствуйте! Я написал код, скомпилировал без ошибок, запустил и у меня ничего не вывелось в консоле, подскажите в чем проблема. Вот код: ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
20.01.2012, 20:37
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru