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

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

Войти
Регистрация
Восстановить пароль
 
наташа ч
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 23
#1

Найти максимальный и минимальный элементы массива до и после удаления - C++

28.01.2011, 13:58. Просмотров 423. Ответов 2
Метки нет (Все метки)

Удалить из массива последнюю группу элементов, представляющих
собой знакочередующийся ряд. Найти максимальный и минимальный
элементы массива до и после удаления.


помогите решить, я не разбираюсь в этом, а завтра экзамен!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.01.2011, 13:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти максимальный и минимальный элементы массива до и после удаления (C++):

Найти максимальный и минимальный элементы массива - C++
Найти максимальный и минимальный элементы массива. Помогите, пожалуйста

Найти минимальный и максимальный элементы массива - C++
Прошу проверить код. #include <iostream> // Вводит массив с клавиатуры void read_arr(int arr, const int& n) { for (int i...

Найти максимальный и минимальный элементы массива - C++
Дан одномерный массив. Значения элементов генерируются случайным образом. Найти максимальный и минимальный элементы массива.

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

Найти минимальный и максимальный элементы массива и упорядочить элементы по убыванию, стоящие между ними, методом «пузырька». - C++
Привет ВСЕМ!!! Обратите вниминие на эту задачку, ПЛЗ!!! =) Можно и без метода " пузырька"!!! Дан массив А(40). Найти минимальный и...

Найти максимальный и минимальный элементы одномерного массива - C++
Написать программу(С++) с использованием операций управления памятью для нахождения максимального и минимального элементов одномерного...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Nameless One
Эксперт С++
5773 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
28.01.2011, 15:08 #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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
 
#define SIZE 10
#define L_T -15
#define R_T  15
 
void printArray(int* a, size_t size);
void findMinMax(int* a, size_t size, int* minH, int* maxH);
 
int main()
{
    int* pBeg;
    int* pEnd;
    int array[SIZE];
    size_t i;
    size_t size = SIZE;
    int min;
    int max;
        
    srand((size_t) time(NULL));
    for(i = 0; i < SIZE; ++i)
    array[i] = rand() % (R_T - L_T + 1) + L_T;
    puts("Initial array:");
    printArray(array, SIZE);
    for(pEnd = array + SIZE - 1; (pEnd != array) && (*pEnd * *(pEnd - 1) >= 0); --pEnd)
    ;
    for(pBeg = pEnd; (pBeg != array) && (*pBeg * *(pBeg - 1) < 0); --pBeg)
    ;
 
    findMinMax(array, size, &min, &max);
    printf("Max = %d, min = %d\n", max, min);
    
    if(pBeg == pEnd)        /* Если указатели равны, знакоч. ряды не найдены */
    puts("No alternating series has been found."); 
    else
    {
    size -= pEnd - pBeg + 1;
    
    puts("The last alternating series:");
        printArray(pBeg, pEnd - pBeg + 1);
 
    puts("Deleting the alternating series...");
    memmove(pBeg, pEnd + 1, (array + SIZE - pEnd) * sizeof(int));
    printArray(array, size);
 
    if(size)
    {
        findMinMax(array, size, &min, &max);
        printf("Max = %d, min = %d\n", max, min);
    }
    else
        puts("The resulting array is empty.");
    }
        
    exit(0);    
}
 
void printArray(int* a, size_t size)
{
    size_t i;
    
    printf("[%u]{ ", size);
    for(i = 0; i < size; ++i)
    printf("%d ", a[i]);
    puts("}");
}
 
void findMinMax(int* a, size_t size, int* minH, int* maxH)
{
    size_t i;
    *minH = *maxH = *a;
    
    for(i = 1; i < size; ++i)
    {
    if(a[i] < *minH)
        *minH = a[i];
    if(a[i] > *maxH)
        *maxH = a[i];
    }
}
0
igorrr37
1647 / 1275 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
28.01.2011, 15:52 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
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<iterator>
#include<algorithm>
using namespace std;
 
int main(){
    vector<int> res, v((istream_iterator<int>(cin)), istream_iterator<int>());
    cout<<"max= "<<*max_element(v.begin(), v.end())<<"\n";
    cout<<"min= "<<*min_element(v.begin(), v.end())<<"\n\n";
    vector<int>::reverse_iterator it, ir;
    for(it=v.rbegin(); it!=v.rend(); ++it){
        for(ir=it+1; ir!=v.rend(); ++ir){
            if(*(ir-1)**ir>=0){
                break;
            }
        }
        if(ir-it>1){
            v.erase(ir.base(), it.base());
            break;
        }
    }
    for(int i=0; i<v.size(); i++) cout<<v[i]<<" ";
    if(!v.empty()){
        cout<<"\nmax= "<<*max_element(v.begin(), v.end())<<"\n";
        cout<<"min= "<<*min_element(v.begin(), v.end())<<"\n";
    }
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.01.2011, 15:52
Привет! Вот еще темы с ответами:

Массив А(50). Найти минимальный и максимальный элементы массива. - C++
Здравствуйте. Помогите решить. Заранее спасибо. Дан массив А(50). Найти минимальный и максимальный элементы массива, а элементы,...

Найти максимальный и минимальный элементы массива и их сумму. - C++
Дан массив х(10).найти максимальный и минимальный элементы массива и их сумму.

Массив. Найти максимальный и минимальный по модулю элементы массива - C++
Ввести одномерный массив А , вывести его. Найти максимальный и минимальный по модулю элементы массива. Если модуль максимального элемента...

Найти минимальный и максимальный элементы массива и их порядковые номера - C++
Помогите)


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

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

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