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

Необходимо вывести суммы главных диагоналей матрицы. Как?! - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Разработка алгоритма 2 http://www.cyberforum.ru/cpp-beginners/thread408041.html
РАзработать алгоритм,определяющий принадлежит ли точка плоскости.Точку и плоскость задать в виде структур.Необходимые координаты взять из файла.Результаты записать в другой файл.
C++ Пробел в старшем и младшем байте массива. Каким образом?! Здравствуйте форумчане! Решил сделать задачку по с++, но столкнулся с проблемой: Нужно заполнить двумерный массив символами и написать функцию, которая ставит символ пробела в старшем и младшем байте каждого значения массива. Застопорился на проблеме. Ввод массива желательно осуществить через рандомайз...Буду благодарен за отзыв. Код мой прилагается. #include<iostream.h> #include<math.h>... http://www.cyberforum.ru/cpp-beginners/thread408037.html
C++ Заменить всюду один заданный символ на последовательность из пяти таких символов
разработать алгоритм обработки строки символов,которая может содержать буквы английского алфавита,цифры,знаки препинания,пробелы,знаки арифметических операций и скобки.Строку ввести с клавиатуры.НЕобходимо заменить всюду один заданный символ на последовательность из пяти таких символов.Результат вывести на экран
Связать Matlab и visual studio C++
Пробую создать dll'ку в visual(с++) и подключить ее потом к matlab. Выдает сделующую ошибку: 1>------ Построение начато: проект: mydll_1, Конфигурация: Debug Win32 ------ 1>Построение начато 15.12.2011 11:59:24. 1>PrepareForBuild: 1> Создание каталога "C:\Documents and Settings\krasnikovaiv\Рабочий стол\mydll_1\Debug\". 1>InitializeBuildStatus: 1> Создание...
C++ создать программу 3. http://www.cyberforum.ru/cpp-beginners/thread408032.html
разработать алгоритм,вычисляющий перекаются ли две окружности. точки и окружности задать с помощью структур. результат вывести на экран.
C++ Разработка двумерного массива разработать алгоритм обработки двумерного массива размера nxm.числа n и m,а так же элементы массива взять из файла.Необходимо выбрать в каждом столбце максимальный элемент.Результаты (все максимумы с индексами)вывести на экран. помогите пожалуйста решить) подробнее

Показать сообщение отдельно
Heidel
 Аватар для Heidel
110 / 110 / 7
Регистрация: 11.10.2011
Сообщений: 647
15.12.2011, 14:32     Необходимо вывести суммы главных диагоналей матрицы. Как?!
Индексация элементов массива начинается с 0, соответственно в циклах, пробегая по элементам двумерного массива, должно быть
C++
1
2
for ( i = 0; i < х; i++)
    for ( j = 0; j < y; j++)
где х - число строк, у - число столбцов прямоугольной матрицы.

Главная и побочная диагональ есть только в квадратной матрице, в которой число строк = числу столбцов.

Не совсем поняла, что должна находить программа. Если она должна вычислять сумму элементов главной и побочной диагонали квадратной матрицы, то код программы может выглядеть например таким образом
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
#include <iostream.h>
#include <math.h>
#include <time.h>
#include <stdlib.h>
 
#define n 10 //размерность матрицы
 
//Функция для нахождения суммы элементов главной и побочной диагонали квадратной матрицы
int sum (int massiv[][n])
{
    int s = 0;
    for (int i=0; i < n; i++)
    {
        s = s + massiv[i][i]; // нахождение суммы элементов главной диагонали
    }
 
    for (i=0; i < n; i++)
    {
        s = s + massiv[i][n-i-1]; // к сумме элементов главной диагонали добавляются элементы побочной диагонали
    }
 
    return s;
}
 
int main ()
{ 
    srand(time(NULL));
 
    int mas[n][n];
 
    cout << "Massiv (" << n << ", " << n << ")" << "\n\n";
    
    for (int i=0; i < n; i++)
    {
        for (int j=0; j < n; j++)
        {
            mas[i][j] = rand()%11; // заполнение массива случайными числами от 0 до 10
            cout << mas[i][j] << " ";
        }
        cout << "\n";
    }
 
    int summa = sum(mas);
    
    cout << "\nSumma elementov glavnoi i pobochnoi diagonaley massiva\n";
    cout << "S = " << summa << "\n";
 
    return 0;
}
 
Текущее время: 14:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru