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

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

Войти
Регистрация
Восстановить пароль
 
Bald_shima
0 / 0 / 0
Регистрация: 01.12.2011
Сообщений: 8
#1

Произведение положительных элементов, ниже главной диагонали матрицы. - C++

29.12.2011, 17:59. Просмотров 1066. Ответов 4
Метки нет (Все метки)

Проверьте плиз, что не так в программе:

Ввести матрицу размером NxM. Память для массива выделить динамически. Определить произведение положительных элементов, расположенных ниже главной диагонали матрицы и вывести на экран исходные данные и полученный результат.

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
#include <iostream.h>
#include <iomanip.h>
#include <math.h>
int main()
{
int **a, i, j, n, m, x=1;
cout << "Vvedite razmer: n, m" << endl;
cin >> n >> m;
a = new int*[n]; 
for(i=0; i<n; i++) 
a[i] = new int[m]; 
for (i=0; i<n; i++) 
for (j=0; j<m; j++)
{
cout << "Vvedite a[" << i << "][" << j << "]: " ;
cin >> a[i][j];
  
}
cout << "Мassiv A:" << endl;  
  for (i=0; i<n; i++)  
   { 
     for (j=0; j<m; j++)  
     cout << setw (9) << a[i][j] << "  ";  
    cout << endl; 
   }   
for (i=0; i<n; i++)
 {for (j=1; j<m; j++) 
         if (a[i][j+i]>0)
         x*=a[i][j+i];
         }
    cout << "proizvedenie = " << x;
 cout << endl; 
        
     for(i=0; i<n; i++)           
            delete [] a[i]; 
     delete []a; 
     a = NULL; 
 
     return 0; 
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.12.2011, 17:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Произведение положительных элементов, ниже главной диагонали матрицы. (C++):

Найти произведение положительных элементов, расположенных ниже главной диагонали матрицы - C++
#include &quot;stdafx.h&quot; #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;cstdlib&gt; int main() { ...

Найти произведение элементов матрицы, лежащих ниже главной диагонали - C++
Дана целочисленная квадратная матрица. Найти произведение элементов матрицы, лежащих ниже главной диагонали. Матрицу задать рандом. Размер...

Найти произведение элементов матрицы, лежащих ниже главной диагонали - C++
Дана целочисленная матрица. найти произведение элементов матрицы, лежащий ниже главной диагонали.

Найти количество положительных элементов расположенных ниже главной диагонали матрицы - C++
Найти количество положительных элементов расположенных ниже главной диагонали матрицы, с++

Вычислить произведение отрицательных элементов матрицы А(5,5), расположенных ниже главной диагонали - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;cstdlib&gt; #include &lt;ctime&gt; #include &lt;conio.h&gt; int...

Подсчитать произведение всех элементов, находящихся ниже главной диагонали матрицы - C++
я делала так. но ничего не получаеться private void button1_Click(object sender, EventArgs e) { int n = 10; int i, j; int a = new...

4
valeriikozlov
Эксперт С++
4673 / 2499 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
29.12.2011, 18:04 #2
Цитата Сообщение от Bald_shima Посмотреть сообщение
for (i=0; i<n; i++)
{for (j=1; j<m; j++)
if (a[i][j+i]>0)
x*=a[i][j+i];
}
заменить на:
C++
1
2
3
4
for (i=1; i<n; i++)
 {for (j=0; j<i && j<m; j++)                
                 x*=a[i][j];
                 }
1
Bald_shima
0 / 0 / 0
Регистрация: 01.12.2011
Сообщений: 8
29.12.2011, 20:23  [ТС] #3
Цитата Сообщение от valeriikozlov Посмотреть сообщение
заменить на:

for (i=1; i<n; i++)
{for (j=0; j<i && j<m; j++)
x*=a[i][j];
}
А вот здесь не меньше либо равно??
0
valeriikozlov
Эксперт С++
4673 / 2499 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
30.12.2011, 04:52 #4
Цитата Сообщение от Bald_shima Посмотреть сообщение
А вот здесь не меньше либо равно??
Итак:
Если нужно произведение положительных элементов, ниже главной диагонали матрицы, то пишите так:
C++
1
2
3
4
for (i=1; i<n; i++)
 {for (j=0; j<i && j<m; j++)  
        if(a[i][j]>0) x*=a[i][j];
                 }
Если нужно: произведение положительных элементов, ниже главной диагонали матрицы и на самой главной диагонали, то пишите так:
C++
1
2
3
4
for (i=0; i<n; i++)
 {for (j=0; j<=i && j<m; j++)  
        if(a[i][j]>0) x*=a[i][j];
                 }
1
Bald_shima
0 / 0 / 0
Регистрация: 01.12.2011
Сообщений: 8
31.12.2011, 01:46  [ТС] #5
valeriikozlov, ясно! Спасибо.
0
31.12.2011, 01:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.12.2011, 01:46
Привет! Вот еще темы с ответами:

Найти сумму элементов матрицы ниже главной диагонали, и произведение элементов выше нее - C++
Добрый день, помогите найти ошибку в коде, вот задание: В матрице размером n х n найти сумму элементов, лежащих ниже главной...

Вычислить произведение элементов, лежащих ниже главной диагонали матрицы и отобразить его на экране - C++
Ввести двумерный массив K. Вычислить произведение элементов, лежащих ниже главной диагонали матрицы и отобразить его на экране.

Определить минимальный элемент каждой строки матрицы и найти произведение положительных элементов, расположенных на ее главной диагонали. - C++
1. Определить минимальный элемент каждой строки матрицы. Напечатать его значение и индексы. 2. Найти произведение положительных элементов...

Отсортировать диагонали матрицы,расположенные выше главной, по убыванию элементов, а диагонали матрицы, расположенные ниже главной, по возрастанию - C++
дана матрица размерностью nxn, содержащая целые числа. Отсортировать диагонали матрицы,расположенные выше главной, по убыванию элементов, а...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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