Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2018, 23:32   #1
ImmortalisNox
Пользователь
 
Регистрация: 05.11.2017
Сообщений: 18
По умолчанию C++ Немножко исправить программу. Изменение треугольную области верхней и нижней части квадратной матрицы

Здравствуйте.
Программа заменяет на другое число вот так часть матрицы:
10001
11011
11111
11011
10001
А было бы хорошо если после преборазования было так:
00000
10001
11011
10001
00000

Не вижу, что нужно изменить. Спасибо.
Функция из программы:
Код:
void func(int** arr, int a, int b) {
 
 
    for (int i = 0; i < a; i++) {
        if (i < a / 2) {
            for (int j = i + 1; j < b - i - 1; j++) {
                arr[i][j] = 0;
            }
        }
        else {
            for (int j = a - i; j < i; j++) {
                arr[i][j] = 0;
            }
        }
 
    }
}
ImmortalisNox вне форума Ответить с цитированием
Старый 19.03.2018, 00:37   #2
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Ну вот тут то arr[i][j] = 0; меняли значения ? авось чтото изменится?
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 19.03.2018, 01:00   #3
ImmortalisNox
Пользователь
 
Регистрация: 05.11.2017
Сообщений: 18
По умолчанию

Цитата:
Сообщение от WorldMaster Посмотреть сообщение
Ну вот тут то arr[i][j] = 0; меняли значения ? авось чтото изменится?
Немножко щас туплю... Вообще, хочу, чтобы треугольная область, которую функция изменяет на конкретное число была больше. Пробовал по-разному.
ImmortalisNox вне форума Ответить с цитированием
Старый 19.03.2018, 01:02   #4
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

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

зы.. ""пробовал по разному" - это значит выкладывал на разных форумах но никто не сделал за вас?
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.

Последний раз редактировалось WorldMaster; 19.03.2018 в 01:05.
WorldMaster вне форума Ответить с цитированием
Старый 19.03.2018, 01:11   #5
ImmortalisNox
Пользователь
 
Регистрация: 05.11.2017
Сообщений: 18
По умолчанию

Ах... Кажется, либо я не могу понять, что вы пытаетесь донести, или же наоборот.
Да, а и б, размер, который задается через клавиатуру.
ImmortalisNox вне форума Ответить с цитированием
Старый 19.03.2018, 01:14   #6
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

int** arr это двумерный массив который где то там создается... в С++ дополнительно нужно указывать границы массивов и структур это в вашем случае а и б. Че у вас там в целом в проекте ХЗ ... телепатов нету.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 19.03.2018, 01:19   #7
ImmortalisNox
Пользователь
 
Регистрация: 05.11.2017
Сообщений: 18
По умолчанию

Угу. Просто этот кусочок кода можно подогнать под обычный массив, уже с изначально заданным размером.
ImmortalisNox вне форума Ответить с цитированием
Старый 19.03.2018, 12:51   #8
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

to TC
Код:
j         01234             01234 
         ------------------------
i=1 есть  11011        надо 10001
какой код "заполняет" эту(i=1) строку?
Код:
 for (int j = (i)1 + 1; j < b - (i)1 - 1; j++) {
   arr[(i)1][j] = 0;
что надо поменять чтобы получить больше нулей в нужных местах???
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
составить программу ввода квадратной матрицы и печати в строку всех ее элементов в заданном ниже порядке следования Ben_Franklin Общие вопросы C/C++ 1 29.04.2016 04:38
Прилепить блок к нижней части браузера delik JavaScript, Ajax 1 19.07.2012 12:07
Составить программу для обмена местами максимального и минимального элемента главной диагонали квадратной числовой матрицы. сона Паскаль, Turbo Pascal, PascalABC.NET 3 09.07.2012 00:57
Как макросом определить RC адреса верхней левой и нижней правой ячейки roborrr Microsoft Office Excel 5 23.04.2011 00:24
Разработать проект преобразования квадратной матрицы в треугольную!! KitoPoni Помощь студентам 7 16.12.2010 14:37