0 / 0 / 0
Регистрация: 07.09.2012
Сообщений: 15
|
|||||||||||
1 | |||||||||||
Указатели: сдвинуть элементы циклически на 1 позицию влево04.10.2012, 23:00. Показов 2981. Ответов 20
Метки нет (Все метки)
Условие задачи: Заполните случайным образом одномерный массив из n элементов и здвиньте элементы циклически на 1 позицию влево. (Например для n=8)
Мой код: Вариант без указателей (работает нормально):
Что я делаю неправильно в варианте с указателем? Помогите пожалуйста.
0
|
04.10.2012, 23:00 | |
Ответы с готовыми решениями:
20
Сформировать массив десятичных цифр числа А. Элементы массива цифр сдвинуть циклически влево на 1 позицию Элементы массива циклически сдвинуть на k позиций влево Сдвинуть циклически элементы одномерного массива на k позиций влево Сдвинуть все элементы последовательности циклически на k позиций влево |
19 / 19 / 13
Регистрация: 03.10.2010
Сообщений: 48
|
|||||||||||
04.10.2012, 23:06 | 2 | ||||||||||
попробуй заменить
0
|
2337 / 1824 / 753
Регистрация: 27.07.2012
Сообщений: 5,392
|
|||||||||||
04.10.2012, 23:10 | 3 | ||||||||||
Можно просто сделать вот так:
Просмотрел. В заполнении та же "шляпа". Замени pMas += i на ++pMas.
0
|
Модератор
8950 / 6716 / 921
Регистрация: 14.02.2011
Сообщений: 23,701
|
||||||
04.10.2012, 23:11 | 4 | |||||
Циклически- это значит что самый левый должен стать самым правым( самый младший самым старшим)
посему твой код должен выглядеть так
0
|
0 / 0 / 0
Регистрация: 07.09.2012
Сообщений: 15
|
|
04.10.2012, 23:13 [ТС] | 5 |
не помогло, сейчас сделаю скрины
0
|
2337 / 1824 / 753
Регистрация: 27.07.2012
Сообщений: 5,392
|
|
04.10.2012, 23:13 | 6 |
удалил
0
|
0 / 0 / 0
Регистрация: 07.09.2012
Сообщений: 15
|
||||||
04.10.2012, 23:23 [ТС] | 7 | |||||
при коде
0
|
2337 / 1824 / 753
Регистрация: 27.07.2012
Сообщений: 5,392
|
||||||
04.10.2012, 23:26 | 8 | |||||
Указатель на масси можно использовать также, как и имя массива (так как по сути это одно и тоже).
Вот окончательный вариант:
1
|
0 / 0 / 0
Регистрация: 07.09.2012
Сообщений: 15
|
|
04.10.2012, 23:28 [ТС] | 9 |
Спасибо большое,все работает.
p.s. сори что долго отвечаю
0
|
Модератор
8950 / 6716 / 921
Регистрация: 14.02.2011
Сообщений: 23,701
|
||||||
04.10.2012, 23:30 | 10 | |||||
сам то понял почему?
PS теги кода ставь, а то читать неудобно(над окошком в котором пишешь есть кнопочки "С++" "С")
0
|
2337 / 1824 / 753
Регистрация: 27.07.2012
Сообщений: 5,392
|
||||||
04.10.2012, 23:39 | 12 | |||||
7 раз сдвинуть вправо - получится 1 раз влево.
Если влево, то так:
0
|
04.10.2012, 23:39 | 13 | |||||
1
|
2337 / 1824 / 753
Регистрация: 27.07.2012
Сообщений: 5,392
|
|
04.10.2012, 23:42 | 14 |
yuron_477, это С++11 ?
0
|
2337 / 1824 / 753
Регистрация: 27.07.2012
Сообщений: 5,392
|
|
04.10.2012, 23:55 | 17 |
Ну это уж сами. Не маленькие.
Добавлено через 2 минуты yuron_477, а вот это разве есть в старом стандарте?
0
|
0 / 0 / 0
Регистрация: 07.09.2012
Сообщений: 15
|
|
05.10.2012, 00:09 [ТС] | 19 |
0
|
05.10.2012, 00:15 | 20 | |||||
Ваш компилятор, видимо этого не поддерживает. Попробуйте заменить цикл вывода
1
|
05.10.2012, 00:15 | |
05.10.2012, 00:15 | |
Помогаю со студенческими работами здесь
20
Одномерный массив. Сдвинуть элементы циклически на n позиций влево Все элементы массива X(30) циклически сдвинуть на n позиций влево Элементы линейного массива сдвинуть циклически на две позиции влево Массив: Циклически сдвинуть элементы массива на одну позицию вправо... Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |