С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
faLek
99 / 100 / 7
Регистрация: 06.03.2012
Сообщений: 478
#1

Как найти максимальный минимальный элемент? - C++

12.01.2013, 22:39. Просмотров 339. Ответов 6
Метки нет (Все метки)

Вот условие : Заменить все элементы с отрицательным значением на значение минимального не равного 0 положительного элемента.

В чём вопрос,как найти максимальный минимальный элемент?

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
#include "stdafx.h"
#include <clocale>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <cmath>
#include <ctime>
#include <iostream>
 
using namespace std;
 
 
int _tmain()
{
    setlocale(LC_ALL,"Russian");
 
    const int N = 10;
    int massiv[N];
    int otr,maxnol;
    srand (time(NULL));
 
    cout<<"Исходный массив :"<<endl;
    for (int i = 0;i<N;i++)
    {
        massiv[i] = -10 + rand() % 20;
        printf (" %d ",massiv[i]);
    }
 
    cout<<"Преобразованный массив :"<<endl;
    maxnol = massiv[0];
    int pr;
    for (int i = 0;i<N;i++)
    {
        if (massiv[i]<0)
            otr = massiv[i];
        if (maxnol < massiv[i])
            maxnol = massiv[i];
            
                otr = maxnol;
                massiv[i] = otr;
 
                printf (" %d ",massiv[i]);
    }
 
    
 
    system ("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.01.2013, 22:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как найти максимальный минимальный элемент? (C++):

Как найти минимальный и максимальный элемент последовательности, вводимой с клавиатуры? - C++
Как найти минимальный и максимальный элемент последовательности (последовательность вводим с клавиатуры) заканчивающейся 0. Вывести должно...

Найти минимальный элемент в каждой строке и из ний найти максимальный элемент - C++
надо найти минимальный элемент в каждой строке и из ний найти максимальный элемент вот мой код #include&lt;conio.h&gt; ...

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

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

Найти столбец содержащий минимальный элемент. Умножить элементы данного столбца на максимальный элемент - C++
30. В матрице А(8,8) найти столбец содержащий минимальный элемент. Умножить элементы данного столбца на максимальный элемент.

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

6
Nixy
ComfyMobile
400 / 281 / 8
Регистрация: 24.07.2012
Сообщений: 916
12.01.2013, 22:53 #2
а вы в условие добавьте проверку на положительность,а минимальный элемент вначале не 0 элементом инициализируйте а максимальным значением типа

Добавлено через 2 минуты
да и вначале найдите этот минимальный не отрицательный а только потом преобразуйте
0
faLek
99 / 100 / 7
Регистрация: 06.03.2012
Сообщений: 478
12.01.2013, 23:02  [ТС] #3
Nixy,
C++
1
maxnol = massiv[10];
C++
1
2
if (maxnol < massiv[i] && massiv[i]>0)
            maxnol = massiv[i];
так?

и ещё вопрос,вот присваивание когда у меня происходит,у меня встречаетс положительный элемент и меняет отрицательные,но потом снова встречается положительный элемент и уже на него меняются,в чём дело?
0
Nixy
ComfyMobile
400 / 281 / 8
Регистрация: 24.07.2012
Сообщений: 916
12.01.2013, 23:11 #4
Цитата Сообщение от faLek Посмотреть сообщение
C++
1
maxnol = massiv[10];
нет тут я имел ввиду <limits>
шас я ваш код отлажу

Добавлено через 2 минуты
Цитата Сообщение от faLek Посмотреть сообщение
ещё вопрос,вот присваивание когда у меня происходит,у меня встречаетс положительный элемент и меняет отрицательные,но потом снова встречается положительный элемент и уже на него меняются,в чём дело?
ответ тут
Цитата Сообщение от Nixy Посмотреть сообщение
да и вначале найдите этот минимальный не отрицательный а только потом преобразуйте
Добавлено через 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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <clocale>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <cmath>
#include <ctime>
#include <iostream>
#include <limits>
 
using namespace std;
 
 
int _tmain()
{
    system("chcp 1251");
 
    const int N = 10;
    int massiv[N];
    int otr,maxnol;
    srand (time(NULL));
 
    cout<<"Исходный массив :"<<endl;
    for (int i = 0;i<N;i++)
    {
        massiv[i] = -10 + rand() % 20;
        printf (" %d ",massiv[i]);
    }
 
    cout<<"\nПреобразованный массив :\n"<<endl;
    maxnol = INT_MAX;
    int pr;
 
    for (int i = 0; i < N; i++) {
        if (massiv[i] > 0 && massiv[i] < maxnol) {
            maxnol = massiv[i];
        }
    }
 
    for (int i = 0;i<N;i++)
    {
        if (massiv[i]<0)
            massiv[i] = maxnol;
            printf (" %d ",massiv[i]);
    }
 
 
 
    system ("pause");
    return 0;
}
1
faLek
99 / 100 / 7
Регистрация: 06.03.2012
Сообщений: 478
12.01.2013, 23:17  [ТС] #5
Nixy, спасибо,не знал ещё про эту библиотеку,а без них можно ли было как-то обойтись?
0
Nixy
ComfyMobile
400 / 281 / 8
Регистрация: 24.07.2012
Сообщений: 916
12.01.2013, 23:22 #6
ну если вы заранее знаете предел числа в вашем случае так как вы получаете числа от -10 до 10 то максимум можно взять 10, так как для поиска минимального самым минимальным вначале должен быть самый большой,а вот 0 элемент не факт что самый большой да ко всемуже не факт что и положительный, еще можно вначале найти максимальный его задать как минимальный а потом искать минимальный положительный
1
faLek
99 / 100 / 7
Регистрация: 06.03.2012
Сообщений: 478
12.01.2013, 23:26  [ТС] #7
Nixy, впрочем больше мороки,в вашем случае код более компактный,лучше сейчас изучу эти пределы и всё=))
0
12.01.2013, 23:26
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.01.2013, 23:26
Привет! Вот еще темы с ответами:

Найти максимальный элемент и минимальный - C++
Массив A cформировать по правилу a=cos(i)/sqrt(i) \ Найти максимальный элемент и заменить его суммой элементов, предшествующих ему....

Дан массив целых чисел. Найти В этом массиве минимальный элемент т и максимальный элемент м. Вывести сумму элементов от минимального до максимального - C++
Дан массив целых чисел. Найти В этом массиве минимальный элемент т и максимальный элемент м. Вывести сумму элементов от минимального до...

Найти минимальный и максимальный элемент последовательности - C++
Как найти минимальный и максимальный элемент последовательности (последовательность вводим с клавиатуры) заканчивающейся 0. Вывести должно...

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


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

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

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