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

Заполнить нулями заданную область матрицы - C++

Восстановить пароль Регистрация
 
Cyber1234
0 / 0 / 0
Регистрация: 06.03.2014
Сообщений: 2
06.03.2014, 09:29     Заполнить нулями заданную область матрицы #1
Задана квадратная матрица, все элементы которой равны единице. Написать функцию void func (int ** arr, int n), которая заполняет заштрихованную область матрицы (согласно варианту) нулями. Размер массива вводится с клавиатуры. В данном случае верхнюю часть побочной диагонали....

Вложение 373176

 Комментарий администратора 
Вставьте нормальное изображение. без белой портянки по краям.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.03.2014, 09:29     Заполнить нулями заданную область матрицы
Посмотрите здесь:

Написать функцию, которая заполняет заштрихованную область матрицы нулями C++
C++ Заполнить нулями элементы квадратной матрицы, расположенными по её периметру
C++ Заполнить нулями элементы квадратной матрицы, расположенными по её периметру
Работа с матрицей. Написать фунцию которая заполняет заштрихованную область матрицы нулями C++
Заполнить заштрихованную область матрицы нулями C++
Заполнить первую половину матрицы размером n*n единицами, а вторую - нулями C++
C++ Заполнить элементы главной диагонали матрицы нулями остальные единицами
Создать новую матрицу, скопировав её из исходной; заполнить 30% новой матрицы нулями в случайном порядке C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
06.03.2014, 11:07     Заполнить нулями заданную область матрицы #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
#include <iostream>
#include <iomanip>
 
int main()
{
    int n;
    std::cout << "Enter n: "; std::cin >> n;
    std::cout << "\n";
    int** arr = new int*[n];
    for(int i = 0; i < n; i++)
        arr[i] = new int[n];
    
    for(int i = 0; i < n; i++)
    {
        for(int j = 0; j < n; j++)
            arr[i][j] = 1;
        for(int j = 0; j < n - i - 1; j++) // Если включая диагональ for(int j = 0; j < n - i; j++)
            arr[i][j] = 0;
        for(int j = 0; j < n; j++)
            std::cout << std::setw(4) << arr[i][j];
        std::cout << "\n\n";
    }
    
    for(int i = 0; i < n; i++)
        delete [] arr[i];
    delete [] arr;
    
    system("pause");
    return 0;
}


Добавлено через 7 минут
Cyber1234, про функцию забыл
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <iomanip>
 
void func(int** arr, int n)
{
    for(int i = 0; i < n; i++)
    {
        for(int j = 0; j < n; j++)
            arr[i][j] = 1;
        for(int j = 0; j < n - i - 1; j++) // Если включая диагональ for(int j = 0; j < n - i; j++)
            arr[i][j] = 0;
        for(int j = 0; j < n; j++)
            std::cout << std::setw(4) << arr[i][j];
        std::cout << "\n\n";
    }
}
 
int main()
{
    int n;
    std::cout << "Enter n: "; std::cin >> n;
    std::cout << "\n";
    int** arr = new int*[n];
    for(int i = 0; i < n; i++)
        arr[i] = new int[n];
    
    func(arr, n);
    
    for(int i = 0; i < n; i++)
        delete [] arr[i];
    delete [] arr;
    
    system("pause");
    return 0;
}
Yandex
Объявления
06.03.2014, 11:07     Заполнить нулями заданную область матрицы
Ответ Создать тему
Опции темы

Текущее время: 09:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru