Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
Scruff
0 / 0 / 0
Регистрация: 24.09.2011
Сообщений: 7
1

Сожмите одномерный массив, удалив предшествующие максимальному элементу

22.11.2012, 15:58. Просмотров 557. Ответов 8
Метки нет (Все метки)

Помогите, пожалуйста, решить задачу: Сожмите одномерный массив, удалив предшествующие максимальному элементу.
____________________________
Заранее благодарен!
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2012, 15:58
Ответы с готовыми решениями:

сожмите одномерный массив, удалив предшествующие минимальному)
помогите пожалуйста решить задачку, сожмите одномерный массив, удалив предшествующие минимальному)

Массивы: элементы массива с четными номерами, предшествующие первому максимальному элементу, умножить...
Дан массив целых чисел размерности n. Все элементы массива с четными номерами, предшествующие...

Определить содержит ли массив элементы, равные максимальному элементу
Одномерный массив из 10 элементов заполнить числовыми значениями. Определить содержит ли массив...

Все элементы массива, предшествующие максимальному, установить равными минимуму (при определенном условии)
Задание:Дан массив из 15 целых чисел. Если минимальный эле- мент меньше максимального в 2 раза, то...

Двумерный массив. Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца
Дан двумерный массив, целых чисел. Сформировать одномерный массив, каждый элемент которого равен...

8
PitBool
12 / 12 / 9
Регистрация: 31.10.2012
Сообщений: 45
22.11.2012, 16:05 2
Scruff, нужно сам массив меньшим сделать или вывести без элементов которые предшествуют максимальному элементу?
0
ForEveR
В астрале
Эксперт С++
8013 / 4770 / 654
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
22.11.2012, 16:09 3
C++
1
2
3
4
5
6
7
8
9
10
11
#include <vector>
#include <algorithm>
#include <iostream>
#include <iterator>
 
int main()
{
    std::vector<int> v = {1,2,3,4,5,4,3,2,4};
    v.erase(v.begin(), std::max_element(v.begin(), v.end()));
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, "\n"));
}
http://ideone.com/F1nMGM
1
David Sylva
1304 / 966 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
22.11.2012, 16:13 4
Можно так
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
#include <iostream> 
 
int main() 
{ 
    const int size = 10; 
    int array[size] = { 12, 45, 5, 6, 7, 123, 3, 9, 6, 7 }; 
    int i, max, max_index; 
 
    for ( i = 0; i < size; ++i) 
        std::cout << array[i] << " "; 
    std::cout << std::endl; 
 
    max = array[0]; 
    max_index = 0; 
 
    for ( i = 0; i < size; ++i) 
        if(array[i] > max) 
        { 
            max = array[i]; 
            max_index = i; 
        } 
            for ( i = max_index - 1; i < size - 1; ++i) 
                      array[i] = array[i+1]; 
             
            for ( i = 0; i < size - 1; ++i) 
                std::cout << array[i] << " "; 
            std::cout << std::endl;
}
0
22.11.2012, 16:13
Scruff
0 / 0 / 0
Регистрация: 24.09.2011
Сообщений: 7
22.11.2012, 18:25  [ТС] 5
PitBool, ну я не знаю.. я все задание переписал сюда..)

Добавлено через 10 минут
Цитата Сообщение от David Sylva Посмотреть сообщение
Можно так
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
#include <iostream> 
 
int main() 
{ 
    const int size = 10; 
    int array[size] = { 12, 45, 5, 6, 7, 123, 3, 9, 6, 7 }; 
    int i, max, max_index; 
 
    for ( i = 0; i < size; ++i) 
        std::cout << array[i] << " "; 
    std::cout << std::endl; 
 
    max = array[0]; 
    max_index = 0; 
 
    for ( i = 0; i < size; ++i) 
        if(array[i] > max) 
        { 
            max = array[i]; 
            max_index = i; 
        } 
            for ( i = max_index - 1; i < size - 1; ++i) 
                      array[i] = array[i+1]; 
             
            for ( i = 0; i < size - 1; ++i) 
                std::cout << array[i] << " "; 
            std::cout << std::endl;
}
_______________
1>------ Build started: Project: Massiv, Configuration: Debug Win32 ------
1> Massiv.cpp
1>Massiv.cpp(3): warning C4627: '#include <iostream>': skipped when looking for precompiled header use
1> Add directive to 'StdAfx.h' or rebuild precompiled header
1>Massiv.cpp(31): fatal error C1010: unexpected end of file while looking for precompiled header. Did you forget to add '#include "StdAfx.h"' to your source?
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
_______________
не делает почему то...(
0
ForEveR
В астрале
Эксперт С++
8013 / 4770 / 654
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
22.11.2012, 19:16 6
Scruff, Может если не хватает мозга/сил прочитать ошибку и почитать маны по своему компилятору, может стоит завязывать с программированием?
0
Scruff
0 / 0 / 0
Регистрация: 24.09.2011
Сообщений: 7
23.11.2012, 13:57  [ТС] 7
Цитата Сообщение от ForEveR Посмотреть сообщение
Scruff, Может если не хватает мозга/сил прочитать ошибку и почитать маны по своему компилятору, может стоит завязывать с программированием?
Если такой умный мог бы подсказать. Место обучения не позволит завязать с ним.
0
ForEveR
В астрале
Эксперт С++
8013 / 4770 / 654
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
23.11.2012, 13:59 8
Создайте новый проект, убрав галку с использовать предкомпилированный заголовок...
0
Scruff
0 / 0 / 0
Регистрация: 24.09.2011
Сообщений: 7
23.11.2012, 14:47  [ТС] 9
Цитата Сообщение от ForEveR Посмотреть сообщение
Создайте новый проект, убрав галку с использовать предкомпилированный заголовок...
Спасибо..
0
23.11.2012, 14:47
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2012, 14:47

Сжать одномерный массив, удалив из него все элементы, модуль которых не превышает 1
Сжать одномерный вещественный массив, удалив из него все элементы, модуль которых не превышает 1....

В массивах А(10) и В(10) все элементы, предшествующие первому нулевому элементу, заменить на 0,5
Здравствуйте. Не могли бы вы мне помочь? не могу составить программу на функции. Задача. Даны два...

Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу
Дан двумерный массив размерностью 5 х 6, заполненный целыми числами с клавиатуры. Сформировать...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

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