Форум программистов, компьютерный форум CyberForum.ru

Массивы: осуществить циклический сдвиг элементов массива - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.89
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 86
19.05.2012, 20:51     Массивы: осуществить циклический сдвиг элементов массива #1
Подскажите пожалуйста,правильно ли написала код к задаче:дан массив размера N.Осуществить циклический сдвиг элементов массива вправо на одну позицию(при этом А1 перейдёт в А22-в А3,...АN в А1.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
void main()
{
int N,i,k;
int A;
clrscr();
cout <<"Vvedite N=";
cin >> N;
float a[10];
for(i=0;i<N;i++)
{
cout <<" Vvedite element massiva=";
cin >> a[i];
}
k=a[0];
for(i=0;i<N+1;i++)
  {
  a[i]=a[i+1];
  cout <<"\n Novui element massiva="<<a[i];
  }
  cout <<"\n Novui element massiva="<<k;
getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2012, 20:51     Массивы: осуществить циклический сдвиг элементов массива
Посмотрите здесь:

C++ Дан массив размера N. Осуществить циклический сдвиг элементов массива вправо на k позиций, где k- индекс максимального элемента.
C++ Осуществить циклический сдвиг элементов массива влево на одну позицию
Одномерные массивы (циклический сдвиг всех элементов массива на одну позицию влево) C++
C++ Осуществить циклический сдвиг элементов квадратной
Осуществить циклический сдвиг элементов C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
daslex
1084 / 494 / 101
Регистрация: 02.08.2011
Сообщений: 2,408
22.05.2012, 19:42     Массивы: осуществить циклический сдвиг элементов массива #21
замените его на temp или bufMustDie
Это ж переменная и имя ей выбираете вы. Главное везде поменять на удобное вам

еще delete []A; поставьить перед getch не забудьте. в скопированном коде он не на своем месте и это может дать непредвиденный результат. Нехорошо при сдаче-то будет.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
22.05.2012, 20:04     Массивы: осуществить циклический сдвиг элементов массива #22
Ri, менять элементарные вещи за Вас будут не всегда. Вас учат тому, как научиться программировать, а не как получить галочку.
Нужен динамический массив, размерностью, введенной с клавиатуры - скопируйте с рядом находящегося кода кусок, отвечающий за это и вставьте себе. Уж настолько тривиальные вещи за Вас делать - неблагородно.

rand выдает рандомное значение и с помощью этой функции я заполняю массив, т.к. жутко ленив и не хочу ничего вбивать ручками.
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 86
22.05.2012, 21:31  [ТС]     Массивы: осуществить циклический сдвиг элементов массива #23
я не просила делать за меня элементарное)И поверьте,я не такая уж и глупая...Я просто спросила и элементарное уж поверьте я знаю и даже более того...я просто пишу несколько в других видах программы,поэтому некоторое и спрашиваю если не разгляжу сразу..
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
22.05.2012, 21:50     Массивы: осуществить циклический сдвиг элементов массива #24
Цитата Сообщение от Ri Посмотреть сообщение
я просто пишу несколько в других видах программы

Не по теме:

в транслите что ли?



Цитата Сообщение от Ri Посмотреть сообщение
я не просила делать за меня элементарное)
а сделать ввод массива через клаву вместо рандомных значений не тривиально?
Просто надоело слушать демагогию о ваших прихотях, вам предоставляют варианты, а вы нос воротите.
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 86
22.05.2012, 22:01  [ТС]     Массивы: осуществить циклический сдвиг элементов массива #25
Я не ворочу нос...и насчет тривиальности попрошу все таки умолчать...я просила помощи всего лишь!Насчет рандомных значений я знаю сама что там должно быть,я всего лиш указала что эт не то,но не просила исправлять,т.к.знаю сама как исправить..А написание программ в другом формате я имела в виду другие операторы,слова и тому подобное..

Добавлено через 2 минуты
Когда меня просят помощи я помогаю до тех пор,пока человек не будет удовлетворен и не получит требуемое..Я этого от вас не требовала..Просто попросила расшифровать в терминах программы которую написала я...именно в тех же операциях и словах
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.05.2012, 22:25     Массивы: осуществить циклический сдвиг элементов массива
Еще ссылки по теме:

Дан массив размера N. Осуществить циклический сдвиг элементов массива вправо на k позиций, где k – индекс максимального элемента C++
Осуществить циклический сдвиг массива вправо на m позиций C++
C++ Осуществить циклический сдвиг массива на N элементов

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
22.05.2012, 22:25     Массивы: осуществить циклический сдвиг элементов массива #26
Цитата Сообщение от Ri Посмотреть сообщение
Когда меня просят помощи я помогаю до тех пор,пока человек не будет удовлетворен


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream> 
 
int main() 
{   
    int size, *arr;
    std::cout<< "Введите размер массива: ";
    std::cin>> size;
    arr = new int[size]; // выдяляем память
    for (int i=0; i < size; i++)
        std::cin>> arr[i]; // заполняем масси
    int tmp = arr[size-1]; // запоминаем значение последнего элемента массива
    for (int i = size - 1; i >=0; i--) // осуществляем сдвиг
        arr[i+1] = arr[i];
    arr[0] = tmp;
    std::cout<< std::endl;
    for (int i=0; i < size; i++) // выводим получившийся массив
        std::cout << arr[i] << " ";
    delete []arr; // освобождаем память
    return 0; 
}
Yandex
Объявления
22.05.2012, 22:25     Массивы: осуществить циклический сдвиг элементов массива
Ответ Создать тему
Опции темы

Текущее время: 23:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru