|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.05.2017, 14:59 | #1 |
Пользователь
Регистрация: 18.03.2017
Сообщений: 35
|
содержимое массива наоборот.
Здравствуйте. Написала программу для такой задачи, а она до середины переворачивает содержимое массива, а потом идет не до конца, а в обратную сторону, почему-то
Входными данными является массив из 10 элементов, заполненный пользователем с клавиатуры. Код:
|
10.05.2017, 15:07 | #2 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Вы изменяете массив во время цикла, а не просто выводите.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
10.05.2017, 15:08 | #3 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,330
|
Зайдем издалека - напишите код, который меняет две переменные местами.
int a = 10; int b = 20; |
10.05.2017, 17:29 | #4 |
Форумчанин
Регистрация: 09.05.2017
Сообщений: 735
|
Есть множество способов как сделать это:
1) В современных языках C++ есть функция reverse; 2) В Вашем коде. Нужно сначала поменять все элементы, используя функцию swap, нужно доходить до середины массива, а не идти через весь массив; 3) Ну да, и эта ошибка тоже здесь есть. Этот 2-й for нужно разделить на 2 fora: 1-й for: моддификация массива и 2-й for: вывод на экран этого массива.
Напишу программу на C++ и Asm для AVR. Черчение: sergeisky@yahoo.com.
|
10.05.2017, 17:40 | #5 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,330
|
|
10.05.2017, 18:24 | #6 |
Вредный кошак
Участник клуба
Регистрация: 14.10.2012
Сообщений: 1,159
|
|
10.05.2017, 18:27 | #7 |
Форумчанин
Регистрация: 09.04.2017
Сообщений: 598
|
Это потому, что когда вы доходите до середины, у вас в массиве от начала до середины уже поменяются значения на те, которые после середины. Там уже нет 1,2,3,4,5.
|
10.05.2017, 19:43 | #8 | |
Форумчанин
Регистрация: 09.05.2017
Сообщений: 735
|
Цитата:
Код:
Напишу программу на C++ и Asm для AVR. Черчение: sergeisky@yahoo.com.
|
|
10.05.2017, 22:42 | #9 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,330
|
|
11.05.2017, 09:53 | #10 |
Форумчанин
Регистрация: 09.05.2017
Сообщений: 735
|
Я и не Вам написал, а автору темы. Какой смысл проходить весь массив, если достаточно только до половины?
Напишу программу на C++ и Asm для AVR. Черчение: sergeisky@yahoo.com.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Переслать содержимое регистра AX в восьмой элемент третьей строки двумерного массива. | aanaaa | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 8 | 20.06.2013 08:50 |
Не получается перевернуть наоборот строку символьного массива. | Zaza7 | Общие вопросы C/C++ | 8 | 30.10.2012 13:40 |
Вывести содержимое массива в форму | volodya21082012 | Общие вопросы Delphi | 1 | 21.08.2012 20:04 |
For Each наоборот | Вождь | Microsoft Office Word | 26 | 13.04.2011 22:09 |
Делфи. Как очистить содержимое массива? | S_Yevgeniy | Помощь студентам | 12 | 12.08.2009 17:54 |