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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
z1odey
0 / 0 / 0
Регистрация: 19.11.2010
Сообщений: 11
#1

Если К меньше N, изменить порядок следования элементов в исходном массиве на обратный - C++

20.11.2010, 16:56. Просмотров 653. Ответов 9
Метки нет (Все метки)

Помогите решить эту задачу.

Дан массив действительных чисел размером N и целое число К. Если К меньше N, изменить порядок следования элементов в исходном массиве на обратный порядок отдельно до и отдельно после К-го элемента массива. Если K больше или равно N, то создать новый массив, не включив в него из исходного массива первый и последний элемент.

Заранее спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2010, 16:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Если К меньше N, изменить порядок следования элементов в исходном массиве на обратный (C++):

Изменить порядок следования элементов в массиве на обратный - C++
Здравствуйте. Надо написать функцию, но почему-то он у меня вылетает. Что я неправильно сделал? Вот код функции(сразу хочу извиниться за...

Изменить порядок следования элементов в массиве на обратный, используя массив указателей - C++
Изменить порядок следования элементов в массиве на обратный, используя массив указателей #include <iostream> #include <iomanip> ...

Изменить порядок следования элементов массива на обратный - C++
Привет всем! Нужна помощь по решению задачи на языке С++. Принципиально я знаю как решать, но не могу никак именно чтобы результат был...

Составить программу, которая меняет порядок следования элементов в массиве на обратный для линейных таблиц Х[12] и Y[10] - C++
Составить программу, которая меняет порядок следования элементов в массиве на обратный для линейных таблиц Х и Y. Инициализацию, вывод...

Изменить порядок следования элементов в массиве - C++
изменить порядок следования элементов в массиве так чтобы сначало располагались все отрицательные элементы за тем положительные а потом...

Изменить порядок следования элементов в массиве используя указатели - C++
Вот что есть, почему не работает правильно не понимаю, подскажите плиз) # include <iostream> using namespace std; //7.Пользуясь ...

9
go
Эксперт С++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
20.11.2010, 18:52 #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int ms[n],ms2[n-2],i,j,k;
 
if (k<n)
{ for (i=0, j=k; i<j; i++,j--)
     // zamena ms[i] - ms[j]
 
   for (i=k, j=n-1; i<j; i++, j--)
      // zamena ms[i] - ms[j]
 
}
 
else 
{  for (i=1;i<n-1;i++)
      ms2[i-1]=ms[i];
}
1
z1odey
0 / 0 / 0
Регистрация: 19.11.2010
Сообщений: 11
20.11.2010, 19:11  [ТС] #3
Не работает кусок из-за не правильно составленного цикла.
0
go
Эксперт С++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
20.11.2010, 19:38 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int ms[n],ms2[n-2],i,j,k;
 
if (k<n)
{ for (i=0, j=k-1; i<j; i++,j--)
     // zamena ms[i] - ms[j]
 
   for (i=k, j=n-1; i<j; i++, j--)
      // zamena ms[i] - ms[j]
 
}
 
else 
{  for (i=1;i<n-1;i++)
      ms2[i-1]=ms[i];
}
попробуй так
0
z1odey
0 / 0 / 0
Регистрация: 19.11.2010
Сообщений: 11
20.11.2010, 19:42  [ТС] #5
Он не пропускает два for в одних {}
0
go
Эксперт С++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
20.11.2010, 20:02 #6
z1odey, выложи свой полный код
ты где-то допустил ошибку!!!
0
z1odey
0 / 0 / 0
Регистрация: 19.11.2010
Сообщений: 11
20.11.2010, 20:07  [ТС] #7
копировал, он подчеркивает второй for
0
almazsr
232 / 169 / 7
Регистрация: 13.11.2010
Сообщений: 425
20.11.2010, 20:15 #8
; после операторов. После fora
0
go
Эксперт С++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
20.11.2010, 20:19 #9
almazsr, ты о чем вообще
я не дописал код (в комментариях указал что надо дописать)

z1odey, выложить свой полный код (с библиотеками) чтобы я проверил слабо??? Вы что-то не правильно доделали
0
Unforgiven_00
60 / 60 / 2
Регистрация: 12.10.2010
Сообщений: 129
20.11.2010, 20:29 #10
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
26
27
#include <iostream>
#include <algorithm>
using namespace std;
 
void main()
{
    const int n = 10;
    int a[n] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    cout << "Enter K: " ;
    int k;
    cin >> k;
    if(k<n)
    {
        reverse(a, a+k);
        reverse(a+k, a+n);
        for(int i=0; i<n; i++)
            cout << a[i] << ' ';
    }
    else
    {
        int b[n-2];
        copy(a+1, a+n-1, b);
        for(int i=0; i<n-2; i++)
            cout << b[i] << ' ';
    }
    system("pause");
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.11.2010, 20:29
Привет! Вот еще темы с ответами:

Изменить порядок следования слов в строке на обратный - C++
Помогите, пожалуйста, написать функцию, которая изменяет порядок следования слов в строке на обратный

Изменить порядок следования цифр на обратный между 1-й и последней цифрой - C++
Здравствуйте! На начале обучения ломаю голову как решить следующие задачи с маленькими знаниями в С++ : 2. Изменить порядок следования...

Задана строка. Изменить порядок следования символов в 1 и 2 половине строки на обратный - C++
Всем доброго времени суток! Работать со строками крайне не умею, а сдать нужно. Надеюсь, что поможете. То есть, я понимаю это как...

Составить программу, которая меняет порядок следования элементов на обратный - C++
Дан одномерный массив А, состоящий из N целых чисел. Составить программу, которая меняет порядок следования элементов на обратный. ...


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

Или воспользуйтесь поиском по форуму:
10
Yandex
Объявления
20.11.2010, 20:29
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru