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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
beregok
0 / 0 / 0
Регистрация: 08.01.2009
Сообщений: 9
#1

Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию - C++

08.01.2009, 14:28. Просмотров 1553. Ответов 11
Метки нет (Все метки)

Всем добрый день
Задача
Дан массив чисел, необходимо удалить из данного массива минимальное количество элементов, чтобы массив стал упорядочен по-возрастанию.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2009, 14:28     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию
Посмотрите здесь:

Из массива удалить минимальное число элементов так, чтобы оставшиеся шли по возрастанию - C++
Объясните пожалуйста как можно подробнее,как работает эта программа?(желательно все циклы и строки) #include <iostream> using...

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

Упорядочен-ли массив по возрастанию? - C++
Добрый вечер, господа. Взываю к вашей помощи, яко сам столкнулся с непреодолимой трудностью. Вот собсна задача: Написать программу,...

Динамический массив - удалить указанное количество элементов с хвоста массива - C++
Доброе время суток Подскажите, как быть тут? Только на динамический массив перешел Первое задание было: Удалить указанное количество...

Динамический массив - удалить указанное количество элементов с хвоста массива - C++
Доброе время суток! Ребята, подскажите как реализовать это задание Описать массив указанного пользователем количества элементов. ...

Рекурсивная функция, логически проверяющая, что массив упорядочен по возрастанию - C++
Здравствуйте) Помогите, пожалуйста) Написать рекурсивную логическую функцию, которая проверяет что массив который передается в функцию...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6477 / 2252 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
08.01.2009, 14:37     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию #2
Минимальное количество элементов, это 0?
beregok
0 / 0 / 0
Регистрация: 08.01.2009
Сообщений: 9
08.01.2009, 14:39  [ТС]     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию #3
допустим дан массив
1 4 3 8
необходимо удалить 3 чтобы он стал упорядоченным по-возрастанию
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
08.01.2009, 14:46     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию #4
наоборот надо удалить 4, она первее
beregok
0 / 0 / 0
Регистрация: 08.01.2009
Сообщений: 9
08.01.2009, 14:52  [ТС]     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию #5
а какой алгоритм удаления элементов?
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
08.01.2009, 14:55     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию #6
Pascal
1
2
3
     write(A[1],' ');
     for i:=2 to n do
        if A[i]>=A[i-1] then write(A[i],' ');
Добавлено через 2 минуты 42 секунды
Ошибся, написал в Паскале. но суть от этого не меняется

C++
1
2
3
     cout << A[0] << " ";
     for(i=1; i<=n; i++)
        if (A[i]>=A[i-1]) {cout <<A[i] << " '';
beregok
0 / 0 / 0
Регистрация: 08.01.2009
Сообщений: 9
08.01.2009, 15:07  [ТС]     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию #7
получается выводится пробел вместо числа несоответствующего условию, а как удалить это число?

Добавлено через 3 минуты 46 секунд
и сравниваются только два соседних числа, а необходимо чтобы просматривался весь массив
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
08.01.2009, 15:38     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию #8
Цитата Сообщение от beregok Посмотреть сообщение
а какой алгоритм удаления элементов?
Такого конкретного алгоритма нет. Каждый пишет в соответствии с условием.

Цитата Сообщение от beregok Посмотреть сообщение
минимальное количество элементов
Распиши подробнее, что означает эта фраза, а то из примера не ясно. Пример у тебя взят неудачно. Попробуй хотябы элементов 10 взять.
beregok
0 / 0 / 0
Регистрация: 08.01.2009
Сообщений: 9
08.01.2009, 15:43  [ТС]     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию #9
Допустим задан следующий массив
1 2 5 6 3 4 4 5 9
по условию задачи в массиве должно остаться
1 2 5 6 9
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
08.01.2009, 15:53     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию #10
В таком случае надо изменить так

C++
1
2
3
4
5
cout << A[0] << " ";
for(int i=1,k=0; i<n; i++)
   if (A[i]>A[k]) {
   cout <<A[i] << " ";
   k++;}
beregok
0 / 0 / 0
Регистрация: 08.01.2009
Сообщений: 9
08.01.2009, 16:03  [ТС]     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию #11
Люди высылаю, что я там пробую делать с вашей помощью, посмотрите плиз...
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>
using namespace std;
void main()
{
    const int n=9;
    int i=0,k;
    int a[n]={0};
    int b[n]={0};
    
    cout<<"Vvedite elementu massiva:\n";
    for (i=1;i<=n;i++)
    {
        cout<<"a["<<i<<"]=";cin >> a[i];
    }
    
  
for(i=1,k=0; i<=n; i++)  
{
    if (a[i]>a[k]) 
{
    cout<<a[i]<<"";  
k++;
                    
            }
}
            
}
Добавлено через 54 секунды
поубирала немного лишнего
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<iostream>
using namespace std;
void main()
{
    const int n=9;
    int i,k;
    int a[n]={0};
    cout<<"Vvedite elementu massiva:\n";
    for (i=1;i<=n;i++)
    {
        cout<<"a["<<i<<"]=";cin >> a[i];
    }
    
  
for(i=1,k=0; i<=n; i++)  
{
    if (a[i]>a[k]) 
{
    cout<<a[i]<<"";  
k++;
                    
            }
}
            
}
Добавлено через 32 секунды
блинн
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<iostream>
using namespace std;
void main()
{
    const int n=9;
    int i,k;
    int a[n]={0};
    cout<<"Vvedite elementu massiva:\n";
    for (i=1;i<=n;i++)
    {
        cout<<"a["<<i<<"]=";cin >> a[i];
    }
    
  
for(i=1,k=0; i<=n; i++)  
{
    if (a[i]>a[k]) 
{
    cout<<a[i]<<"";  
k++;
                    
            }
}
            
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.01.2009, 16:39     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию
Еще ссылки по теме:

В каждом столбце обнулите минимальное количество элементов так, чтобы сумма элементов столбца не превышала заданную - C++
Помогите решить при помощи функций.плиссзО_о Пусть дана матрица А(n x m), состоящая из натуральных чисел. В каждом столбце обнулите...

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

упорядочен ли массив по неубыванию, по невозрастанию или не упорядочен вообще - C++
Блин вест мозг себе уже вынес, никак не могу решить задачу(((. Помогите кто чем может. Задача:Написать подпрограмму,которая проверяла бы,...

Двумерный массив: найти номер строки, в которой находится самое минимальное количество одинаковых элементов - C++
Нужно в двумерном массиве из 5 строк и 7 столбцов найти номер строки, в которой находится самое минимальное количество одинаковых...


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

Или воспользуйтесь поиском по форуму:
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
08.01.2009, 16:39     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию #12
так в чем проблема?

Добавлено через 19 минут 26 секунд
Если ты указываешь, что массив состоит из 9 элементов, то он будет отсчитыватся от 0 до 8 включительно. поэтому в твоем тексте надо изменить в строке 9 i=0;i<n
В строке 15 только изменить i<n, начальное значение i должно быть 1, как и есть. и добавить 14 строку
C++
1
cout<<a[i]<<" ";
Добавлено через 2 минуты 9 секунд
только в 14 строке не a[i], а записать a[0], как ранее было написано.
Yandex
Объявления
08.01.2009, 16:39     Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию
Ответ Создать тему
Опции темы

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