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

Поместить элементы из первого массива выше и на побочной диагонали матрицы, а из второго массива ниже побочной

20.02.2018, 19:17. Показов 1396. Ответов 3

Author24 — интернет-сервис помощи студентам
Сгенерировать две последовательности А и В из 15 и 10 случайных целых чисел соответственно. Сформировать из этих последовательностей квадратную матрицу С размера 5 х 5 так, чтобы элементы из А размещались выше и на побочной диагонали, а из В-ниже побочной диагонали.
Microsoft Visual Studio 2010
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.02.2018, 19:17
Ответы с готовыми решениями:

Обнулить элементы матрицы, лежащие одновременно выше главной диагонали и ниже побочной диагонали
Дана квадратная матрица порядка M. Обнулить элементы матрицы, лежащие одновременно выше главной...

Обнулить элементы матрицы, лежащие одновременно выше главной диагонали и ниже побочной диагонали
Что нужно переделать в программе?Задача:14. Дана квадратная матрица порядка M. Обнулить элементы...

Обнулить элементы матрицы, лежащие одновременно ниже главной диагонали и выше побочной диагонали
Дана квадратная матрица порядка М. Обнулить элементы матрицы, лежащие одновременно ниже главной...

Обнулить элементы матрицы, лежащие одновременно выше главной диагонали и ниже побочной диагонали
Помогите решить задачку на двумерный массив. "Дана квадратная матица порядка M. Обнулить элементы...

3
1505 / 968 / 812
Регистрация: 30.04.2016
Сообщений: 3,334
23.02.2018, 18:39 2
Лучший ответ Сообщение было отмечено aleksandr685756 как решение

Решение

aleksandr685756, здравствуйте! Вот решение. Надеюсь, что перенести его в Visual Studio не составит труда. Пишите, если нужна дальнейшая помощь.

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
#include <bits/stdc++.h>
 
using namespace std;
 
int main()
{
    srand(time(NULL));
    int k;
    int a[15], b[10], mat[5][5];
    //Формируем массив из 15 случайных чисел
    cout << "Random array a[15]: ";
    for (int i = 0; i < 15; i++)
    {
        a[i] = -10 + rand() % 16; //Числа из диапазона [-10; 5];
        cout << a[i] << " ";
    }
    //Формируем массив из 10 случайных чисел
    cout << "\nRandom array b[10]: ";
    for (int i = 0; i < 10; i++)
    {
        b[i] = -5 + rand() % 16; //Числа из диапазона [-5; 10];
        cout << b[i] << " ";
    }
    //На и над побочной диагональю матрицы
    k = 0;
    for (int i = 0; i < 5; i++)
    {
        for (int j = 0; j < 5 - i; j++)
        {
            mat[i][j] = a[k++];
        }
    }
    //Под побочной диагональю матрицы
    k = 0;
    for (int i = 4; i > 0; i--)
    {
        for (int j = 5 - i; j < 5; j++)
        {
            mat[i][j] = b[k++];
        }
    }
    //Искомая матрица
    cout << "\n\nTarget matrix:\n\n";
    for (int i = 0; i < 5; i++)
    {
        for (int j = 0; j < 5; j++)
        {
            cout.width(3);
            cout << mat[i][j] << " ";
        }
        cout << "\n";
    }
    system("pause");
    return 0;
}
Добавлено через 6 минут
aleksandr685756, уточните, также, пожалуйста, нужен ли конкретный порядок заполнения для каждой половины матрицы (нужно ли заполнять слева направо, сверху вниз и т.д. или порядок не важен).
1
0 / 0 / 0
Регистрация: 04.12.2016
Сообщений: 46
19.03.2018, 08:58  [ТС] 3
C++
1
2
3
4
5
6
7
for (int i = 4; i > 0; i--)
    {
        for (int j = 5 - i; j < 5; j++)
        {
            mat[i][j] = b[k++];
        }
    }
А если вместо i-- поставить i++ ?

Добавлено через 9 минут
Fixer_84, А если вместо i-- поставить i++ ?
0
1505 / 968 / 812
Регистрация: 30.04.2016
Сообщений: 3,334
19.03.2018, 17:19 4
Цитата Сообщение от aleksandr685756 Посмотреть сообщение
А если вместо i-- поставить i++ ?
Здравствуйте! Тогда цикл уйдет в бесконечность, так как начальное значение i = 4 станет равным 5, 6, 7 и т.д., а в условии i > 0 - что впрочем и будет выполняться до бесконечности. А почему вы спрашивайте? Там, вроде бы, все правильно.
0
19.03.2018, 17:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.03.2018, 17:19
Помогаю со студенческими работами здесь

Обнулить элементы матрицы, лежащие одновременно выше главной диагонали и ниже побочной диагонали
Дана квадратная матрица порядка М. Обнулить элементы матрицы,лежащие одновременно выше главной...

Обнулить элементы матрицы, лежащие одновременно выше главной диагонали и ниже побочной диагонали
Дана квадратная матрица порядка M. Обнулить элементы матрицы, лежащие одновременно выше главной...

Заменить нулями элементы матрицы, лежащие ниже главной диагонали и выше побочной
Дана квадратная матрица порядка N заполненная не нулевыми эле-ментами. Заменить нулями элементы...

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


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

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