Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 08.03.2013
Сообщений: 9
1

Найти сумму положительных элементов главной диагонали матрицы

07.04.2013, 14:32. Показов 1029. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
квадратная матрица. найти сумму положительных элементов главной диагонали и произведение отрицательных элементов побочной.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "stdio.h";
#include <math.h>
void main() {
        int A[100][100];
    int i,j,N;
    int s2=0, s3=1;
clrscr();
    printf("/nVvedite razmer massiva:");
    scanf("%d", &N);
    if (N>100) {printf("nedopustimii razmer"); return;}
    printf("\nVvedite cherez probel %d znacheniya matrici:\n", N*N);
    for (i=0; i<N; i++) for (j=0; j<N; j++) scanf ("%d", &A[i][j]);
    for (i=0; i<N; i++) if (A[i][i]>0) s2+=A[i][i];
    for (i=0; i<N; i++) {if (A[i][N-1-i]<0) s3*=A[i][N-1-i];
    }
    if (s3==1) printf ("\n summ2=%d;\n proizv = 0", s2)  ;
    else printf("\n Summ=%d;\n proizv=%d\n", s2,s3);
getch();
}
косяк на побочной. если на ней все элементы -1, то в в ответе выводится 0. помогите пожалуйста исправить
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.04.2013, 14:32
Ответы с готовыми решениями:

Найти сумму положительных элементов матрицы на главной диагонали
матрица 4х4 вводится из файла, задачу решать с помощью подпрограммы

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

Найти сумму положительных элеменов на главной диагонали матрицы
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;alloc.h&gt; int xsum(int n, int *x) { int i,s;...

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

1
2 / 2 / 1
Регистрация: 20.12.2011
Сообщений: 40
07.04.2013, 22:39 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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <iostream>
#include <string> 
#include <stdio.h>
#include <windows.h>
using namespace std;
 
void main()
{
    SetConsoleCP(1251); // для того чтобы русские символы адекватно отображались_
    SetConsoleOutputCP(1251); // _а не всякими краказябрами
 
    int i, j, n, k, count1 = 0, count2 = 0; // объявили несколько переменных типа int, которые на понадобятся в данной задаче
    double sum_glavn_diag = 0, proizv_pob_diag = 1;
    cout << "\n  Введите размерность матрицы.\n\n  n = ";  // просим user'а ввести размерность матрицы
        cin >> n; // переменной n присвоим размерность матрицы
    cout << endl;
 
    int **mas = new int*[n]; // объявили двумерный массив, как массив, элементами которого_
    for(k = 0; k < n; k++) mas[k] = new int[n]; // _являются одномерные массивы
 
// заполняем матрицу элементами
for(i = 0; i < n; i++) 
for(j = 0; j < n; j++)
{
    cout <<"  Array["<< i+1 <<"]["<< j+1 <<"] = "; 
    cin >> mas[i][j];
}
// для наглядности выведем саму матрицу на экран
cout << " \n  Ваша матрица\n";
for(i = 0; i < n; i++) 
for(j = 0; j < n; j++)
{
    if (j == 0) cout << "\n        ";
    cout << mas[i][j] << "  ";
}
 
cout << endl;
 
for (i = 0; i < n; i++)
{
    if (mas[i][i] > 0) { 
        sum_glavn_diag += mas[i][i];
        count1++;
    }
    if (mas[i][n - 1 - i] < 0) {
        proizv_pob_diag *= mas[i][n - 1 - i];
        count2++;
    }
}
    if (count1 == 0) cout << "\n  В данной матрице нет положительных элементов на главной диагонали";
    else cout << "\n  Сумма положительных элементов главной диагонали равна " << sum_glavn_diag; // выводим сумму положительных элементов главной диагонали
    if (count2 == 0) cout << "\n  В данной матрице нет отрицательных элементов на побочной диагонали";
    else cout << "\n  Произведение отрицательных элементов побочной диагонали равно " << proizv_pob_diag; // выводим произведение отрицательных элементов побочной диагонали
    cout << endl << endl;
    cin >> i;
}
Добавлено через 6 часов 5 минут
Ну как, помогло?
0
07.04.2013, 22:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.04.2013, 22:39
Помогаю со студенческими работами здесь

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

Найти сумму элементов матрицы, расположенных выше главной диагонали и ниже побочной диагонали
Дана целочисленная квадратная матрица размера n  m (n, m вводятся). Значения элементов матрицы...

Найти сумму элементов матрицы, расположенных выше главной диагонали и ниже побочной диагонали
В строчке int **matrix = malloc(sizeof(int*) * rows); выделяет функцию malloc, а в строчке matrix...

Найти произведение положительных элементов, расположенных ниже главной диагонали матрицы
Проблема в том, что если нет положительных элементов, то выводит присвоенную единицу. Как...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru