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

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

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

Последовательность, упорядочить и удалить члены - C++

03.06.2012, 20:03. Просмотров 388. Ответов 4
Метки нет (Все метки)

Доброго времени суток.
Прошу помочь с задачей:

Дана последовательность из n членов. Оставить без изменения последовательность, если она упорядочена по неубыванию или по невозрастанию, в противном случае удалить из последовательности те челны, порядковые номера которых кратны четырем, сохранив прежним порядок оставленных членов.

Заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2012, 20:03     Последовательность, упорядочить и удалить члены
Посмотрите здесь:

Получить новую последовательность, выбросив из исходной все члены со значением max(a1, …, a99). C++
Упорядочить массив так, чтобы сначала иши упорядоченные положительные члены а потом упорядоченные отрицательные члены C++
C++ Дана последовательность, элементы которой есть целые двузначные числа. Упорядочить последовательность по убыванию произведений цифр
C++ Массив: получить новую последовательность, выбросив из исходной все члены со значением max(a1,...,a99)
Образовать новую последовательность выбросив из исходной те члены, которые равны min C++
Удалить из последовательности все члены с максимальным значением C++
C++ Даны целые числа а 1,а 2,. ,а N .Удалить из последовательности все члены со значением max(a1,.,aN)?
C++ Дана последовательность действительных чисел, в которой заменить все ее члены, большие данного Z, этим числом
C++ Упорядочить последовательность целых чисел
C++ Упорядочить заданную последовательность по убыванию, изменяя элементы последовательности

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
03.06.2012, 20:15     Последовательность, упорядочить и удалить члены #2
Если последовательность из n членов записана в массиве a[] , то можно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
bool fl1=true, fl2=true;
int i,j;
for(i=1; i<n; i++)
{
    if(a[i]>a[i-1]) fl1=false;
    if(a[i]<a[i-1]) fl2=false;
}
if(!fl1 && !fl2)
{
    for(i=0; i<n; i++)
        if(a[i]%4==0)
        {           
            for(j=i; j<n-1; j++)
                a[i]=a[i+1];
            n--;
            i--;
        }       
}
sajik
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 3
03.06.2012, 20:53  [ТС]     Последовательность, упорядочить и удалить члены #3
Спасибо, но это по моему слишком углубленно, мы более поверхностно изучаем.
У нас Borlan C++.
Если не затруднит, разжевать.
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
03.06.2012, 21:04     Последовательность, упорядочить и удалить члены #4
Цитата Сообщение от sajik Посмотреть сообщение
Если не затруднит, разжевать.
см. комментарии:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
bool fl1=true, fl2=true;
int i,j;
for(i=1; i<n; i++)
{
    if(a[i]>a[i-1]) fl1=false;// присваиваем fl1 false когда последовательность точно не невозрастающая
    if(a[i]<a[i-1]) fl2=false;// присваиваем fl2 false когда последовательность точно не неубывающая
}
if(!fl1 && !fl2)// если последовательность не неубывающая и не невозрастающая
{
    for(i=0; i<n; i++)
        if(a[i]%4==0)// если встречаем элемент кратный 4
        {           
            for(j=i; j<n-1; j++)// сдвигаем все элементы на одну позицию влево
                a[i]=a[i+1];
            n--;// уменьшаем количество элементов м массиве
            i--;// еще раз проверим элемент, который поставили на место кратного 4 (он тоже может быть кратный 4)
        }       
}
sajik
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 3
03.06.2012, 21:22  [ТС]     Последовательность, упорядочить и удалить члены #5
Огромное спасибо!
Yandex
Объявления
03.06.2012, 21:22     Последовательность, упорядочить и удалить члены
Ответ Создать тему
Опции темы

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