|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
11.08.2011, 21:29 | #1 |
Пользователь
Регистрация: 31.07.2011
Сообщений: 55
|
Массивы!!!
Здравствуйте!
Пожалуйста, объясните новичку, как можно реализовать задачу. Дана матрица с 4 элементами размер 2х2. - - + + Нужно в одну матрицу размером 4х4 записать эту же матрицу, но 4 раза. Что бы в результате получилась матрица (массив) следующего вида: - - - - + + + + - - - - + + + + Код исходной программы (написанной при помощи Форумчанинов ): Код:
Буду благодарен за помощь!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! PS: Я написал код , реализации очень простой похожей задачки. Дан исходный массив с элементами +-+. А потом в один массив записываться два раза символы из исходного массива. И в результате получается массив с элементами + - + + - + Код:
Последний раз редактировалось pproger; 11.08.2011 в 22:05. |
11.08.2011, 22:02 | #2 |
C++ hater
СтарожилДжуниор
Регистрация: 19.07.2009
Сообщений: 3,333
|
Код:
пс. вообще правильней написать функцию, которая создаст новую матрицу, увеличенную в n раз. но мне влом
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance Последний раз редактировалось pproger; 11.08.2011 в 22:09. |
11.08.2011, 22:36 | #3 |
Пользователь
Регистрация: 31.07.2011
Сообщений: 55
|
Спасибо огромное!!!
Если Вам не трудно объясните пожалуйста как работает следующий фрагмент программы. Я только учу С, не все еще к сожалению понимаю. Код:
Про memcpy я прочитал что char memcpy (dest, src, cnt); char *dest; указатель на результат char *src; указатель на исходный буфер unsigned cnt; количество символов |
11.08.2011, 23:04 | #4 |
В стагнации
Участник клуба
Регистрация: 29.07.2011
Сообщений: 1,303
|
Снова вы, Corvette Что ж у вас за проблемы с массивами
memcpy - копирует блок памяти размером sizeof(arr[j]) в массив new_arr. Т.е. как бы переносит j-ю строку массива arr в массив new_arr. memcpy вызывается 2 раза, т.к. 1-я строка массива arr должна быть скопирована 2 раза в первую строку массива new_arr. j = i % 2 - здесь работает примерно так: мы копируем в 0-ю строку массива new_arr 2 раза 0 % 2 = 0-ю строку массива arr. Потом в 1-ю строку new_arr копируем 2 раза 1 % 2 = 1-ю строку массива arr... Потом во 2-ю строку new_arr копируем 2 раза 2%2 = 0-ю строку массива arr... и т.д.
E-mail: pashaworking@gmail.com | ICQ: 479914426 | Skype: moondearr
Понять, чего от тебя требует заказчик – это уже половина всей работы, а иногда и полностью выполненное задание. |
11.08.2011, 23:13 | #5 |
C++ hater
СтарожилДжуниор
Регистрация: 19.07.2009
Сообщений: 3,333
|
2Corvette
копирование можно переписать тк Код:
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance Последний раз редактировалось pproger; 11.08.2011 в 23:16. |
12.08.2011, 00:38 | #6 |
Пользователь
Регистрация: 31.07.2011
Сообщений: 55
|
Спасибо большое за объяснение Pproger и MooNDeaR!!!!! :-)
Код: Код:
|
12.08.2011, 00:45 | #7 |
C++ hater
СтарожилДжуниор
Регистрация: 19.07.2009
Сообщений: 3,333
|
2Corvette
да, инициализируем нулями
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance |
12.08.2011, 00:49 | #8 |
Пользователь
Регистрация: 31.07.2011
Сообщений: 55
|
Еще раз спасибо за помощь и ответы на вопросы!!!
|
12.08.2011, 17:36 | #9 |
Форумчанин
Регистрация: 01.07.2011
Сообщений: 423
|
Мне представляется, что вам дали совершенно неверные советы. Как я понимаю, от вас требовалось, используя циклы, именнно циклы, а не функции, переписать одну матрицу четыре раза в другую матрицу.
Поэтому правильное решение следующе. Сначала вы исходную матрицу переписываете два раза в первые две строки результирующей матрицы. А затем тоже самое делаете для двух последних строк результирующей матрицы. То есть у вас будет внешний цикл, где счетчик будет меняться от 0 до 1 включительно, и внутренний цикл, где счетчик будет меняться также от 0 до 1 включительно. Примерный код на С будет выглядеть так Код:
Со мной можно встретиться на www.clipper.borda.ru
|
12.08.2011, 18:49 | #10 |
В стагнации
Участник клуба
Регистрация: 29.07.2011
Сообщений: 1,303
|
Боже мой Что ж тут понаписано
Идею с функциями можно переписать и под циклы намного проще: Код:
Абсолютно рабочий код. Без лишних функций.
E-mail: pashaworking@gmail.com | ICQ: 479914426 | Skype: moondearr
Понять, чего от тебя требует заказчик – это уже половина всей работы, а иногда и полностью выполненное задание. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
указатели на массивы и массивы указателей | blacktener | Общие вопросы C/C++ | 16 | 13.06.2011 20:45 |
Динамические массивы и массивы варианты | N@stya | Помощь студентам | 0 | 11.06.2010 21:09 |
С++, Массивы, динамические массивы. | -Sunshine- | Помощь студентам | 1 | 19.04.2010 02:17 |
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент | LyaLya | Помощь студентам | 15 | 20.12.2009 14:12 |
C++ и массивы | StartMis | Помощь студентам | 4 | 19.12.2008 22:45 |