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

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

Войти
Регистрация
Восстановить пароль
 
686jj
0 / 0 / 0
Регистрация: 19.11.2012
Сообщений: 6
#1

сожмите одномерный массив, удалив предшествующие минимальному) - C++

19.11.2012, 23:43. Просмотров 351. Ответов 1
Метки нет (Все метки)

помогите пожалуйста решить задачку,
сожмите одномерный массив, удалив предшествующие минимальному)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.11.2012, 23:43     сожмите одномерный массив, удалив предшествующие минимальному)
Посмотрите здесь:

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

Все элементы массива, предшествующие минимальному, заменить на их квадраты - C++
Дан одномерный массив А(2М). Если наименьший элемент этого массива меньше 1 и находится во второй половине этого массива, то все его...

Сожмите заданный массив A(N) отбрасыванием нулевых элементов - C++
2.30*. Сожмите заданный массив A(N) отбрасыванием нулевых элементов. Добавлено через 1 минуту пожалуйста помогите с задачкой, очень...

«Сожмите» массив, выбросив из него каждый второй элемент - C++
Дан целочисленный массив с количеством элементов п. «Сожмите» массив, выбросив из него каждый второй элемент. Примечание. Дополнительный...

Сожмите массив, выбросив каждый третий его элемент, без использования дополнительного массива - C++
3. Дан массив из n элементов. Сожмите массив, выбросив каждый третий его элемент, без использования дополнительного массива. Выведите на...

Вывести на экран массив, составленный из элементов, не равных минимальному - C++
Задан массив целых чисел. Вывести на экран массив, составленный из элементов, не равных минимальному.

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

Дан целочисленный массив размера N. Сжать массив, удалив из него все элементы, модуль которых не превышает 1 - C++
Помогите пожалуйста написать программу: Дан целочисленный массив размера N. Сжать массив, удалив из него все элементы, модуль которых не...

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

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


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ps10n1ck
54 / 48 / 2
Регистрация: 10.11.2010
Сообщений: 132
21.11.2012, 04:19     сожмите одномерный массив, удалив предшествующие минимальному) #2
Вот примерно так, если я правильно понимаю задачу (т.к. недостаточно данных в описании для правильного написания).
Комментарии я думаю не нужны, тут ничего сложного нет ...

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include <iostream>
 
using std::cin;
using std::cout;
using std::endl;
 
typedef unsigned int uint;
 
int main(){
 
int iMinElement = 0;
uint nMinElementIndex = 0;
uint nTotalElements = 0;
uint nTmpCounter = 0;
 
cout << "Enter total elements: ";
cin >> nTotalElements;
 
int *pArray = new int[nTotalElements];
 
cout << "Enter element [" << nTmpCounter << "] : ";
cin >> pArray[nTmpCounter];
iMinElement = pArray[nTmpCounter];
++nTmpCounter;
 
while(nTmpCounter < nTotalElements){
    cout << "Enter element [" << nTmpCounter << "] : ";
    cin >> pArray[nTmpCounter];
    if(iMinElement > pArray[nTmpCounter]) {
        iMinElement = pArray[nTmpCounter];
        nMinElementIndex = nTmpCounter;
    }
    ++nTmpCounter;
}
 
cout << endl << "--------------------- [BEFORE] -----------------------------" << endl;
cout << "Total elements: " << nTotalElements << endl;
nTmpCounter = 0;
while(nTmpCounter < nTotalElements){
    cout << "Element [" << nTmpCounter << "] : = " << pArray[nTmpCounter] << endl;
    ++nTmpCounter;
}
cout << "MinElement = " << iMinElement << endl;
cout << "MinElementIndex = " << nMinElementIndex << endl;
 
cout << endl << "---------------------- [AFTER] ----------------------------" << endl;
nTotalElements -= nMinElementIndex;
 
int *pNewArray = new int[nTotalElements];
memcpy(pNewArray, &pArray[nMinElementIndex], nTotalElements * sizeof(int));
 
cout << "Total elements: " << nTotalElements << endl;
nTmpCounter = 0;
while(nTmpCounter < nTotalElements){
    cout << "Element [" << nTmpCounter << "] : = " << pNewArray[nTmpCounter] << endl;
    ++nTmpCounter;
}
 
delete [] pArray;
delete [] pNewArray;
 
return 0;
}
Результат:
[img]http://s61.***********/i174/1211/1c/b223fd64caa9t.jpg[/img]
Yandex
Объявления
21.11.2012, 04:19     сожмите одномерный массив, удалив предшествующие минимальному)
Ответ Создать тему
Опции темы

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