Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.81/21: Рейтинг темы: голосов - 21, средняя оценка - 4.81
0 / 0 / 0
Регистрация: 16.02.2010
Сообщений: 14

уравнение нахождения произведения главной диагонали в матрице

15.03.2010, 19:08. Показов 4285. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите плизз написать уравнение нахождения произведения главной диагонали в матрице (нужна общяя формула для лубого вида матриц (NxM && NxN)) для си++.



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

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <conio.h>
#define n 3      // а если н 4
#define k 3     //  а к 5
using namespace std;
int main()
{
        int a[n][k];
        int p, i, j;
        srand(time(0));
        for(int i = 0; i < n; i++){
                for(int j = 0; j < k; j++){
                       a[n][k] = rand()%20;
                       cout << a[n][k] << "  ";
                }
                cout << endl;
        }
        ????????? p = a[1][1]*a[2][2]*a[3][3];    ?????????
        cout <<"\nProizvedenie v glavnoy diagonali: " << p << endl;
        getch();
        return 0;
}


нужно найти Р


За ранее спосибо)))
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.03.2010, 19:08
Ответы с готовыми решениями:

Массив: в матрице элементы, стоящие на главной диагонали, замените минимальным элементом, лежащим ниже главной диагонали.
помогите пожалуйста. в матрице a(5x5) элементы стоящие на главной диагонали,замените минимальным элементом,лежащим ниже главной...

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

Записать в матрице нули ниже главной диагонали и единицы выше главной диагонали
3. Матрицу A(n,n) преобразовать к следующему виду: записать нули ниже главной диагонали и единицы выше главной диагонали.

13
Day
 Аватар для Day
1180 / 990 / 83
Регистрация: 29.10.2009
Сообщений: 1,385
15.03.2010, 19:15
tra, ИМХО у матрицы N x M (N != M) нет главной диагонали. Или ее надо придумывать.
для N x N
C
1
2
  p = 1;
  for(i=0;i<N;i++) p *= a[i][i];
1
1261 / 799 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
15.03.2010, 19:20
tra, ИМХО у матрицы N x M (N != M) нет главной диагонали. Или ее надо придумывать.
для N x N
Я не въехал...
Что существует диагональ и не у квадратных матриц?...
Если существует можно ссыль в студию, мне тоже интересно.
1
0 / 0 / 0
Регистрация: 16.02.2010
Сообщений: 14
15.03.2010, 19:24  [ТС]
Цитата Сообщение от Day Посмотреть сообщение
tra, ИМХО у матрицы N x M (N != M) нет главной диагонали. Или ее надо придумывать.
для N x N
C
1
2
  p = 1;
  for(i=0;i<N;i++) p *= a[i][i];
спосибки, но оно не считает(((
0
1261 / 799 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
15.03.2010, 20:01
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <conio.h>
 
#define N 3
int main(){
    int matrix[N][N] = {
        {1,2,3},
        {4,5,6},
        {7,8,9}
 
    };
int p = 1;
int i;
for(i=0;i<N;i++)p*=matrix[i][i];
printf(" pr % d ",p);
printf("\n");
getch();
return 0;
}
1
0 / 0 / 0
Регистрация: 16.02.2010
Сообщений: 14
15.03.2010, 20:12  [ТС]
Цитата Сообщение от Genius Ignat Посмотреть сообщение
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <conio.h>
 
#define N 3
int main(){
    int matrix[N][N] = {
        {1,2,3},
        {4,5,6},
        {7,8,9}
 
    };
int p = 1;
int i;
for(i=0;i<N;i++)p*=matrix[i][i];
printf(" pr % d ",p);
printf("\n");
getch();
return 0;
}

А можно подключить rand??? и как
0
Эксперт С++
 Аватар для CyBOSSeR
2348 / 1721 / 149
Регистрация: 06.03.2009
Сообщений: 3,675
15.03.2010, 20:17
tra, как вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <conio.h>
 
#define N 3
int main(){
        int matrix[N][N] = {
                {rand(),rand(),rand()},
                {rand(),rand(),rand()},
                {rand(),rand(),rand()}
 
        };
int p = 1;
int i;
for(i=0;i<N;i++)p*=matrix[i][i];
printf(" pr % d ",p);
printf("\n");
getch();
return 0;
}
1
0 / 0 / 0
Регистрация: 16.02.2010
Сообщений: 14
15.03.2010, 20:44  [ТС]
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
#include <iostream>
#include <stdlib.h>
#include <conio.h>
#define N 3
#define K 3
using namespace std;
int main()
{
        int a[N][K];
    int p=1, i, j;
        srand(time(0));
        for(int i=0;i<N;i++){
                for(int j=0;j<K;j++){
                       a[N][K] = rand()%20;
                       cout << a[N][K] << "  ";
                }
                cout << endl;
        }
        for(i=0;i<N;i++)
        for(j=0;j<K;j++)p*=a[i][i];
        cout <<"\nProizvedenie v glavnoy diagonali: " << p << endl;
        getch();
        return 0;
}
А во прога и она чет не работает(((( Не знаю че
0
Эксперт С++
 Аватар для CyBOSSeR
2348 / 1721 / 149
Регистрация: 06.03.2009
Сообщений: 3,675
15.03.2010, 21:01
tra, вот, работает как надо:
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
#include <iostream>
#include <ctime>
 
int main()
{
  const int size = 3;
        int arr[size][size];
  const int max  = 20;
 
  srand(time(NULL));
 
  for (int i = 0; i < size; ++i)
    for (int j = 0; j < size; ++j)
      arr[i][j] = rand() % max;
 
  for (int i = 0; i < size; ++i) {
    for (int j = 0; j < size; ++j)
      std::cout << arr[i][j] << "\t";
    std::cout << std::endl;
  }
 
  int product = 1;
 
  for (int i = 0; i < size; ++i)
    for (int j = 0; j < size; ++j)
      product += arr[i][j];
 
  std::cout << "Product: " << product << std::endl;
 
  return 0;
}
1
0 / 0 / 0
Регистрация: 16.02.2010
Сообщений: 14
15.03.2010, 21:14  [ТС]
Цитата Сообщение от CyBOSSeR Посмотреть сообщение
tra, вот, работает как надо:
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
#include <iostream>
#include <ctime>
 
int main()
{
  const int size = 3;
        int arr[size][size];
  const int max  = 20;
 
  srand(time(NULL));
 
  for (int i = 0; i < size; ++i)
    for (int j = 0; j < size; ++j)
      arr[i][j] = rand() % max;
 
  for (int i = 0; i < size; ++i) {
    for (int j = 0; j < size; ++j)
      std::cout << arr[i][j] << "\t";
    std::cout << std::endl;
  }
 
  int product = 1;
 
  for (int i = 0; i < size; ++i)
    for (int j = 0; j < size; ++j)
      product += arr[i][j];
 
  std::cout << "Product: " << product << std::endl;
 
  return 0;
}

3 ошибки)))))))
0
Эксперт С++
 Аватар для CyBOSSeR
2348 / 1721 / 149
Регистрация: 06.03.2009
Сообщений: 3,675
15.03.2010, 21:25
tra, медиумы в отпуске. Ошибки сюда.
1
Day
 Аватар для Day
1180 / 990 / 83
Регистрация: 29.10.2009
Сообщений: 1,385
15.03.2010, 21:41
tra, вот это for(j=0;j<K;j++) убери

Добавлено через 2 минуты
CyBOSSeR,
for (int i = 0; i < size; ++i)
for (int j = 0; j < size; ++j)
product += arr[i][j];
Считается ведь только диагональ
1
0 / 0 / 0
Регистрация: 16.02.2010
Сообщений: 14
15.03.2010, 21:58  [ТС]
Цитата Сообщение от Day Посмотреть сообщение
tra, вот это for(j=0;j<K;j++) убери

Добавлено через 2 минуты
CyBOSSeR,
Считается ведь только диагональ
да вот ответ не сходится
0
...
 Аватар для Liebe
891 / 78 / 6
Регистрация: 21.02.2010
Сообщений: 2,196
Записей в блоге: 1
15.03.2010, 22:16
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
#include <iostream>
#include <stdlib.h>
#include <conio.h>
#define N 3
#define K 3
using namespace std;
int main()
{
                int a[N][K];
        int p=1, i, j;
                srand(time(0));
                for(int i=0;i<N;i++){
                                for(int j=0;j<K;j++){
                                          // a[N][K] = rand()%20; 
                                          a[i][j] = rand()%20; // а то у тебя значения записывались только 
                                                                         //в   последний элемент
                                        //   cout << a[N][K] << "  ";
                                               cout << a[i][j] << "  ";
                                }
                                cout << endl;
                }
                for(i=0;i<N;i++)
                //for(j=0;j<K;j++)
                p*=a[i][i];
                cout <<"\nProizvedenie v glavnoy diagonali: " << p << endl;
                getch();
                return 0;
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.03.2010, 22:16
Помогаю со студенческими работами здесь

Найти произведения элементов главной диагонали и побочной диагонали матрицы
Найдите для массива nxn произведение чисел главной диагонали и боковой диагонали.

Функция: нахождения минимального элемента в диагонали матрицы, параллельной главной диагонали
Ребята ХЭЭЛП! Условие Составить функцию нахождения минимального элемента Мx в диагонали матрицы, параллельной главной диагонали....

Составить функцию нахождения максимального элемента Мх в диагонали матрицы, параллельной главной диагонали
Пожалуйста помогите с решением задачи на С++ Составить функцию нахождения максимального элемента Мх в диагонали матрицы, ...

Составить функцию нахождения максимального элемента в диагонали матрицы, параллельной главной диагонали
Составить функцию нахождения максимального элемента в диагонали матрицы, параллельной главной диагонали. Используя эту функцию в матрице...

Диагонали в матрице выше главной и ниже главной поменять местами
дана матрица . нужно что бы диагонали выше главной и ниже главной поменялись местами .+запись должна происходить в текстовом файле. ...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru