![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| exo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 19.2.2007 Репутация: нет Всего: нет |
Помогите найти решение программы.
сам запутался не знаю что делать задание: ---------------------------------------------------------------------------------- Даны целочисленная прямоугольная матрица [n*m] и массив целых чисел из m элементов. Вставить массив в матрицу после строки с заданным номером (i). ---------------------------------------------------------------------------------- ЗАДАЕТСЯ i-тоя строка. ниже стоящие строки опускаются вниз на одну. в получившуюся строку (пустую) вставляется одномерный массив. НЕЗНАЮ КАК В МАТРИЦЕ ОПУСТИТЬ ВНИЗ СТРОКИ. (буфер не задействовать) пример: массив ===> 3 32 43 7 82 74 71 матрица (6*7) : 2 0 5 6 3 3 2 (1 строка) 0 7 1 3 4 5 4 (2 строка) 1 5 3 6 8 3 2 (3 строка) 4 3 4 0 0 7 9 (4 строка) 3 0 1 4 5 2 2 (5 строка) 5 3 5 2 0 6 9 (6 строка) . . . . . . . . (7 строка) (7-ая строка пустая не заполненая, она для строк которые будут опускатся) задается i-тоя строка = 4 (ответ должен выглядеть примерно так) матрица (7*7) : 2 0 5 6 3 3 2 (1 строка) 0 7 1 3 4 5 4 (2 строка) 1 5 3 6 8 3 2 (3 строка) 4 3 4 0 0 7 9 (4 строка) 3 32 43 7 82 74 71 (5 строка) - массив 3 0 1 4 5 2 2 (6 строка) 5 3 5 2 0 6 9 (7 строка) как опустить строку ? |
|||
|
||||
| Dray |
|
|||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: 2 Всего: 6 |
|
|||
|
||||
| exo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 19.2.2007 Репутация: нет Всего: нет |
должно работать ?
|
|||
|
||||
| Dray |
|
|||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: 2 Всего: 6 |
Ну я не стал писать программу целеком, только алгоритм опускания строки.
Смотри: Начинаешь с самой нижней строки, - она у тебя пустая. Последовательно, слева на право, переносишь значения из каждой ячейки предыдущей строки в твою текущую строку. И так поднимаешься снизу вверх, до iтой строки значения из строки i попадут в строку i+1. Остается только засунуть массив в итую строку. Это сообщение отредактировал(а) Dray - 20.2.2007, 00:41 |
|||
|
||||
| exo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 19.2.2007 Репутация: нет Всего: нет |
за текст спачибо!
все работает ! толко теперь новая проблема : я вставляю массив после i-той строки ---> а как вывести на экран получившийся массив ? Это сообщение отредактировал(а) exo - 20.2.2007, 01:11 |
|||
|
||||
| Dray |
|
|||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: 2 Всего: 6 |
Всмысле? Получившуюся матрицу? Тогда так:
|
|||
|
||||
| exo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 19.2.2007 Репутация: нет Всего: нет |
нет не то..
тогда как вставить сам массив и эту получившуюся матрицу вывести на экран ? Добавлено @ 01:33 у меня токой бред написан : //k -это i-тоя строка //------------------------------//опускание строк int z,m2,buf; for (z=7; z>=(k+1); z--) { for (m2=0; m2<m; m2++) { a[z][m2] = a[z-1][m2]; } } // a[k+1][m2]=x[j]; // a[z][m2]=a[k+1][m2]; {buf=x[j]; x[j]=a[k+1]; a[k+1]=buf;} for (z=0;z<8;z++) { for (m=0;m<7;m++) printf("%5d",a[z][m]); printf("\n");} не могу понять как вставить массив что то попробовал через buf может и правильно но как вывести результат ? |
|||
|
||||
| Dray |
|
||||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: 2 Всего: 6 |
Стоп. Я тут ща не то написал.
Так не верно, верно вот так:
Это сообщение отредактировал(а) Dray - 20.2.2007, 02:08 |
||||
|
|||||
| exo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 19.2.2007 Репутация: нет Всего: нет |
че не то написал?
|
|||
|
||||
| Dray |
|
|||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: 2 Всего: 6 |
Короче вот:
Что не понятно спрашивай. Но отвечу завтра, я пошел спать. |
|||
|
||||
| exo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 19.2.2007 Репутация: нет Всего: нет |
все нормально
все работает все получилось ! правда я твою прогу не смог запустить ! Добавлено @ 02:47 а не знаешь как нарисовать таблицу и можно ли ее нарисовать? |
|||
|
||||
| Dray |
|
|||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: 2 Всего: 6 |
А у тебя какой компилятор?
Таблицу можно рисовать спец. символами, в цикле. Что-то типа вот этого: ╔════════════════════════════════════════╗ Только программно. Тут тогда уж по-подрбнее. Какие сообщения? rand - может иногда не работать, вместо него можно использовать random (...) Это сообщение отредактировал(а) Dray - 20.2.2007, 10:53 |
|||
|
||||
| Dov |
|
|||
![]() аСинизатор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1721 Регистрация: 10.5.2003 Где: Эрец-Исраэль Репутация: 15 Всего: 88 |
Ребята, опускают в другом месте и по другому поводу. В матрице строки сдвигают вверх/вниз, а колонки - влево/вправо. В нерусской терминологии есть даже специальное слово для этого - shift, что значит сдвиг. -------------------- Тут вечности запах томительный, И свежие фрукты дешевые, А климат у нас – изумительный, И только соседи – #уевые. Игорь Губерман. |
|||
|
||||
| Rockie |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 23.4.2006 Репутация: 8 Всего: 31 |
главное хорошо что все хорошо =) -------------------- Чтобы иметь большой гардероб - надо иметь большой гардероб. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |