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

Динамический массив: вычислить сумму элементов главной и побочной диагоналей (Исправление кода) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Очередь: Напишите программу сложения и умножения многочленов, представленных описанным образом http://www.cyberforum.ru/cpp-beginners/thread871435.html
Всем Здрасти Многочлены вида , где можно представить в виде очереди, где каждый элемент имеет три поля: одно – для коэффициента ci, второе – для показателя степени ei, третье – для указателя на следующую ячейку. Напишите программу сложения и умножения многочленов, представленных описанным образом (реализация 6). Реализация 6. Разработайте класс, реализующий очередь с помощью указателей....
C++ Написать программу, которая предлагает пользователю ввести целую матрицу размером 4 на 4 и заменяет все четные элементы их квадратами Здравствуйте, меня Зовут Алина, прошу помощи для решения задач на С++ очень нужно для экзамена! буду очень признательна! ПОМОГИТЕ ПОЖАЛУЙСТА!!! 1. Написать программу, которая предлагает пользователю ввести целую матрицу размером 4 на 4 и заменяет все четные элементы их квадратами Алина, оформите темы в соответствии с правилами форума, а именно: 1) для каждой задачи создайте по одной... http://www.cyberforum.ru/cpp-beginners/thread871427.html
Написать программу, которая вычисляет целую степень, в которую необходимо возвести число 2, чтобы получить число, ближайшее меньшее либо равное числу, C++
Написать программу, которая вычисляет целую степень, в которую необходимо возвести число 2, чтобы получить число, ближайшее меньшее либо равное числу, заданному в начале программы. Спасибо.
C++ Переписать символы с входящего рядка в выходящий, меняя операторы языка паскаль на операторы языка С++ := на =, = на ==, # на !=
Переписать символы с входящего рядка в выходящий, меняя операторы языка паскаль на операторы языка С++ := на =, = на ==, # на != Спасибо.
C++ Оформить в виде функции http://www.cyberforum.ru/cpp-beginners/thread871406.html
Оформить в виде функции на C/C++ решение задачи: b_i = a_i \,- \,(\min_{1\leq j\leq n}a_j) \\i = 1, 2 .. n #include <ctime> #include <iostream> #include <conio.h> const int N=10; const int M=10; int i,j; using namespace std;
C++ С++ Builder Циклы с условием (при вводе адреса цвета (например, 0 255 0) выдавать имя цвета) Help, не могу решить задачку ЛБ: нужно написать программу, при вводе адреса цвета (на пример 0 255 0 выдавал имя цвета). //--------------------------------------------------------------------------- #include <vcl.h> #include <conio.h> #include <stdio.h> #pragma hdrstop //--------------------------------------------------------------------------- подробнее

Показать сообщение отдельно
Byloshnik
2 / 0 / 0
Регистрация: 20.05.2013
Сообщений: 3

Динамический массив: вычислить сумму элементов главной и побочной диагоналей (Исправление кода) - C++

20.05.2013, 11:43. Просмотров 1453. Ответов 3
Метки (Все метки)

я скатал у друга готовую задачу и преподаватель решил на защиту изменить мне условие
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;
/*Практическая работа №11
Двумерные массивы 1
Написать программу работы с двумерным динамическим вещественным массивом. 
Предусмотреть динамическое распределение памяти под массив перед работой с масси-вом (использовать оператор new)
и удаление массива в конце работы программы (исполь-зовать оператор delete). Количество строк N равно количеству
столбцов, т.е. массив пред-ставляет собой квадратную матрицу. N задается пользователем. Массив заполняется слу-чайными 
вещественными числами в диапазоне -10…10. Результаты работы программы вывести на экран.
Вариант 1
1) вычислить сумму элементов главной и побочной диагоналей; 
2) найти номер строки с максимальной суммой положительных элементов*/
 
int main()  {
    //Задаем стартовое значение для ГПСЧ
    srand((unsigned)time(NULL));
    //Русский язык в консоле
    setlocale(LC_ALL, "Russian");
    //Переменные для сумм
    int sum_main_diag = 0, sum_collateral_diag = 0;
    //Максимальная сумма в строке
    int max_sum;
    //Временная переменная
    int temp;
    //Номер строки с максимальной суммой
    int index;
    //Размер матрицы (двумерный массив)
    int N;
    //Указатель на указатель
    int **matrix;
    //Задаем размерность матрицы
    cout << "Введите размерность матрицы N = ";
    //Вводим как строку
    cin >> N;
    //Если размерность задана не верно - выход
    if(N <= 0)  {
        cout << "Ошибочная размерность \n";
        //Задержка программы
        system("pause");
        return 1;
    }
    //Выделяем память под массив, каждый элемент которого будет в свою очередь тоже массивом
    matrix = new int*[N];
    //Каждой строке выделяем массив размерности N
    for(int i = 0; i < N; i++)
        matrix[i] = new int[N];
    //Заполнение матрицы, вывод и подсчет сумм
    //Сразу будем считать первую строку с максимальной суммой
    index = 0;
    max_sum = 0;
    cout << "Сформированная матрица: \n";
    for(int i = 0; i < N; i++)  {
        temp = 0;
        for(int j = 0; j < N; j++)  {
            //Заполняем числами от -10 до +10
            matrix[i][j] = rand() % 21 - 10;
            //Выводим
            cout << matrix[i][j] << "\t";
            //Если главная диагональ
            if(i == j)
                sum_main_diag += matrix[i][j];
            //Если побочная диагональ
            if(i == (N - 1) - j)  {
                //cout << "|" << matrix[i][j] << "|";
                sum_collateral_diag += matrix[i][j];
            }
            //Собираем сумму строки
            temp += matrix[i][j];
        }
        //Выводим сумму текущей строки
        cout << "сумма строки: " << temp;
        //Разделитель между строками
        cout << endl << endl;
        //Если строка первая, запишем начальное значение для максимума
        if(i == 0)
            max_sum = temp;
        else if(max_sum < temp)  {
            max_sum = temp;
            index = i;
        }
    }
 
    cout << "Сумма главной диагонали: " << sum_main_diag << endl;
    cout << "Сумма побочной: " << sum_collateral_diag << endl;
 
 
 
    //Очистка памяти
    for(int i = 0; i < N; i++)
        delete []matrix[i];
    delete []matrix;
    //Задержка программы
    system("pause");
    return 0;
}
теперь нужно:
1) вычислить сумму отрицательных элементов главной и побочной диагоналей;
2) найти номер строки с минимальным произведением положительных четных элементов.
Буду благодарен отдельным кусочкам с полезными советами @__@
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 10:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru