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

Найти сумму всех диагоналей и сравнить между с собой

22.01.2020, 23:48. Показов 6261. Ответов 4

Студворк — интернет-сервис помощи студентам
Вводится прямоугольный массив. Рассмотрим в нем линии, параллельные главной диагонали. На
каждой такой линии вычислим сумму элементов. Найти максимум среди данных сумм.
Например, в массиве
1 3 4 5
2 3 4 5
2 6 3 2
4 2 4 1
данные суммы равны 4, 4, 12, 8, 9, 9, 5, а максимум равен 12. Динамическими массивами не
пользоваться.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.01.2020, 23:48
Ответы с готовыми решениями:

Массив: Найти их сумму и сумму чисел, разделенных на 2, сравнить эти суммы между собой.
Нужно написать программу используя одномерные массивы. Буду благодарен. Есть действительные числа X1, ..., X15. Найти их сумму и сумму...

Есть действительные числа X1, ., X15. Найти их сумму и сумму их квадратов, сравнить эти суммы между собой
Есть действительные числа X1, ..., X15. Найти их сумму и сумму их квадратов, сравнить эти суммы между собой.

Надо сравнить значение одного поля всех объектов между собой и выбрать самое большое значение. C++ ООП
Надо сравнить значение одного поля всех объектов между собой и выбрать самое большое значение. C++ ООП

4
Модератор
 Аватар для long399
2874 / 1820 / 932
Регистрация: 16.10.2013
Сообщений: 5,217
Записей в блоге: 15
23.01.2020, 09:35
Цитата Сообщение от Kanatbekov_24 Посмотреть сообщение
Вводится прямоугольный массив. Рассмотрим в нем линии, параллельные главной диагонали.
раз есть главная диагональ, значит это квадратный массив, все же.
0
0 / 0 / 0
Регистрация: 30.12.2019
Сообщений: 5
23.01.2020, 10:38  [ТС]
да, думай что тебе дан квадратная матрица и ты должен найти сумму *всех диагоналей этой матрицы и найти самую большую из этих сумм.
0
Модератор
 Аватар для long399
2874 / 1820 / 932
Регистрация: 16.10.2013
Сообщений: 5,217
Записей в блоге: 15
23.01.2020, 11:14
Kanatbekov_24, это вы должны думать, а не я

Добавлено через 31 минуту
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
#include <iostream>
#include <ctime>
#include <limits>
using namespace std;
#define SIZE 4
int main(){
    srand(time(NULL));
    int a[SIZE][SIZE];
    
    for(int i = 0; i < SIZE; i++) {
        for(int j = 0; j < SIZE; j++) {
            a[i][j] = rand() % 100;
            cout << a[i][j] << "\t";
        }
        cout << endl;
    }
    
    int sumDiags[2 * SIZE - 1] = {};
    int k = 0;
    
    // с левого нижнего края до главной диагонали
    for(int i = 0; i < SIZE; i++) {
        for(int j = i; j >= 0; j--) {
            sumDiags[k] += a[SIZE - i - 1 + j][j];
        }
        ++k;
    }
    
    // после главной диагонали
    for(int i = 0; i < SIZE - 1; i++) {
        for(int j = SIZE - 1; j >= i + 1; j--) {
            sumDiags[k] += a[j - i - 1][j];
        }
        ++k;
    }
    
    int max = std::numeric_limits<int>::min();
    cout << endl << "суммы диагоналей : ";
    for(int i = 0; i < k; i++) {
        if(max < sumDiags[i]) max = sumDiags[i];
        cout << sumDiags[i] << " ";
    }
    cout << endl << "максимум: " << max;
    
    return 0;
}
0
 Аватар для analogov net
2520 / 1120 / 492
Регистрация: 17.11.2018
Сообщений: 2,823
23.01.2020, 22:51
Цитата Сообщение от long399 Посмотреть сообщение
раз есть главная диагональ, значит это квадратный массив
Это не обязательно. Главная диагональ не потому главная, что массив квадратный, а потому, что начинается в левом верхнем углу и продолжается вправо-вниз до "пересечения" либо с последней строкой, либо с последним столбцом, либо с обоими сразу. Индексы элементов, которые находятся на ней равны ( i == 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
#define N 4
#define M 4
 
int main()
{
    int matr[N][M] = {
       {1, 3, 4, 5},
       {2, 3, 4, 5},
       {2, 6, 3, 2},
       {4, 2, 4, 1}
    };
    int diagonals[N + M - 1] = {0}, maxDiag = 0;
 
    for( int i = N - 1; i > -1; i-- )
        for( int j = 0; j < M; j++)
            diagonals[N - 1 - i + j] += matr[i][j];
 
    for( int i = 0; i < N + M - 1; i++ )
        if( diagonals[i] > diagonals[maxDiag] )
            maxDiag = i;
 
    cout << "max diag: " << maxDiag + 1 << "\nmax sum : " << diagonals[maxDiag] << endl;
 
    return 0;
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.01.2020, 22:51
Помогаю со студенческими работами здесь

Найти среднее значение массивов А[1..5], B[1..5] и сравнить их между собой. Вывести на экран большие из них
при составлении программы использовать подпрограммы :wall:

Найти среднее значение массивов и сравнить их между собой. Вывести на экран большее из них
Найти среднее значение массивов А, B и сравнить их между собой. Вывести на экран большие из них при составлении программы использовать...

Найти среднее значение массивов А[1..5], B[1..5] и сравнить их между собой. Вывести на экран большие из них
В программе использивать подпрограмму-функцию)

Смена значений диагоналей в матрице между собой
У меня есть вот такая программа, которая меняет значения диагоналей матрицы относительно вертикальной оси.Но она работает корректно только...

Найти сумму элементов всех диагоналей квадратной матрицы
Требуется найти сумму ВСЕХ диагоналей в квадратной матрице, то есть не только сумму элементов главной и побочной диагоналей, но и так же...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Проблемы с Kotlin и Wasm при создании игры
GameUnited 03.07.2025
В современном мире разработки игр выбор технологии - это зачастую балансирование между удобством разработки, переносимостью и производительностью. Когда я решил создать свою первую веб-игру, мой. . .
Создаем микросервисы с Go и Kubernetes
golander 02.07.2025
Когда я только начинал с микросервисами, все спорили о том, какой язык юзать. Сейчас Go (или Golang) фактически захватил эту нишу. И вот почему этот язык настолько заходит для этих задач: . . .
C++23, квантовые вычисления и взаимодействие с Q#
bytestream 02.07.2025
Я всегда с некоторым скептицизмом относился к громким заявлениям о революциях в IT, но квантовые вычисления - это тот случай, когда революция действительно происходит прямо у нас на глазах. Последние. . .
Вот в чем сила LM.
Hrethgir 02.07.2025
как на английском будет “обслуживание“ Слово «обслуживание» на английском языке может переводиться несколькими способами в зависимости от контекста: * **Service** — самый распространённый. . .
Использование Keycloak со Spring Boot и интеграция Identity Provider
Javaican 01.07.2025
Два года назад я получил задачу, которая сначала показалась тривиальной: интегрировать корпоративную аутентификацию в микросервисную архитектуру. На тот момент у нас было семь Spring Boot приложений,. . .
Содержание темы с примерами на WebGL
8Observer8 01.07.2025
Все примеры из книги Мацуды и Ли в песочнице JSFiddle Пример выводит точку красного цвета размером 10 пикселей на WebGL 1. 0 и 2. 0 WebGL 1. 0. Передача координаты точки из главной программы в. . .
Основы WebGL. Простой треугольник
8Observer8 01.07.2025
Простой треугольник без трансформаций. Для трансформаций можно использовать glMatrix, как в примере: https:/ / plnkr. co/ edit/ qT6ZTwvncLPRamK5?preview На русском: . . .
Полиглотные микросервисы на C# и .NET
ArchitectMsa 30.06.2025
Полиглотная архитектура появилась не из желания усложнить жизнь разработчикам. Она родилась из практической необходимости решать разные задачи наиболее эффективным способом. В одном из проектов. . .
Стратегии кеширования
Javaican 29.06.2025
Кеширование — это хранение часто запрашиваемых данных в быстром хранилище (обычно в памяти), чтобы не обращаться к более медленному первоисточнику. Казалось бы, все просто. Но за этой простотой. . .
Наблюдаемость приложений ASP.NET Core с OpenTelemetry, Prometheus и Grafana
ArchitectMsa 29.06.2025
Наблюдаемость (observability) – это ключевое свойство современной системы, позволяющее понимать её внутреннее состояние на основе внешних данных. Если мониторинг отвечает на вопрос "что случилось?",. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru