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

Найти минимальное число среди положительных чисел и максимальное число среди отрицательных чисел - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 27, средняя оценка - 4.67
Cleo12
0 / 0 / 0
Регистрация: 14.11.2012
Сообщений: 35
14.05.2013, 21:08     Найти минимальное число среди положительных чисел и максимальное число среди отрицательных чисел #1
Никак не могу понять ,как написать эту программу.Помогите пожалуйста.
Задан одномерный массив А (10) действительных чисел. Ввести массив с клавиатуры, операторы ввода должны находиться в теле главной программы. Найти минимальное число среди положительных чисел и максимальное число среди отрицательных чисел. Нахождение максимального и минимального числа оформить в виде двух функций, которые возвращают результаты в главную
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2013, 21:08     Найти минимальное число среди положительных чисел и максимальное число среди отрицательных чисел
Посмотрите здесь:

C++ Среди простых чисел найти найти такое, в двоичной записи которого максимальное число единиц.
Найти минимальное число среди образовавшегося промежутка чисел C++
C++ Среди простых чисел, не превосходящих N, найти такое, в десятичной записи которого максимальное число единиц
C++ Дано действительно число а.Найти среди чисел 1, 1*1/2, 1*/1/2+1/3, ... первое число, большее а, и его номер в последовательности чисел.
C++ Нужно найти минимальное значение среди позитивных чисел и максимальное среди отрицательных.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Yamaneko
 Аватар для Yamaneko
7 / 7 / 1
Регистрация: 10.05.2013
Сообщений: 90
14.05.2013, 21:28     Найти минимальное число среди положительных чисел и максимальное число среди отрицательных чисел #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
#include <iostream>
 
const int n=10;
 
double min_search(double A[n])
{
    double _min=900;
    for (int i=0;i<n;i++)
    {
        if(A[i]>0 && _min>A[i])
        {
            _min=A[i];
        }
    }
    return _min;
}
 
double max_search(double A[n])
{
    double _max=-900;
    for (int i=0;i<n;i++)
    {
        if(A[i]<0 && _max<A[i])
        {
            _max=A[i];
        }
    }
    return _max;
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    double A[n];
    std::cout<<"Input massive"<<std::endl;
    for (int i=0;i<n;i++)
    {
        std::cin>>A[i];
    }
    std::cout<<"max= "<<max_search(A)<<" min= "<<min_search(A)<<std::endl;
    return 0;
}
при условии, что числа не больше +-900;
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
14.05.2013, 21:29     Найти минимальное число среди положительных чисел и максимальное число среди отрицательных чисел #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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <algorithm>
#include <iostream>
#include <iterator>
#include <array>
 
template <class Iterator>
Iterator minimalElement(Iterator firstInputIterator, Iterator lastInputIterator)
{
    if (firstInputIterator == lastInputIterator)
        return lastInputIterator;
 
    Iterator minimal;
    while (++firstInputIterator != lastInputIterator) {
        if (*firstInputIterator > 0) {
            minimal = firstInputIterator;
            break;
        }
    }
 
    firstInputIterator = minimal;
    while (++firstInputIterator != lastInputIterator) {
        if (*minimal > *firstInputIterator && *firstInputIterator > 0)
            minimal = firstInputIterator;
    }
 
    return minimal;
}
 
template <class Iterator>
Iterator maximalElement(Iterator firstInputIterator, Iterator lastInputIterator)
{
    if (firstInputIterator == lastInputIterator)
        return lastInputIterator;
 
    Iterator maximal;
    while (++firstInputIterator != lastInputIterator) {
        if (*firstInputIterator < 0) {
            maximal = firstInputIterator;
            break;
        }
    }
 
    firstInputIterator = maximal;
    while (++firstInputIterator != lastInputIterator) {
        if (*maximal < *firstInputIterator && *firstInputIterator < 0)
            maximal = firstInputIterator;
    }
 
    return maximal;
}
 
int main()
{
    const std::size_t arraySize(10);
    std::array <int, arraySize> array;
 
    std::cout << "Input " << arraySize << " elements: " << std::endl;
    for (unsigned i = 0; i < arraySize; i++)
        std::cin >> array.at(i);
    std::cout << "Minimal of positive numbers: " << *minimalElement(array.begin(), array.end()) << std::endl;
    std::cout << "Maximal of negative numbers: " << *maximalElement(array.begin(), array.end()) << std::endl;
 
    return 0;
}
Cleo12
0 / 0 / 0
Регистрация: 14.11.2012
Сообщений: 35
14.05.2013, 21:47  [ТС]     Найти минимальное число среди положительных чисел и максимальное число среди отрицательных чисел #4
Yamaneko, и у вас там ошибка с душкой
И я не понимаю концовку,можете объяснить?
C++
1
2
3
4
5
6
7
8
9
int _tmain(int argc, _TCHAR* argv[])
{
    double A[n];
    std::cout<<"Input massive"<<std::endl;
    for (int i=0;i<n;i++)
    {
        std::cin>>A[i];
    }
    std::cout<<"max= "<<max_search(A)<<" min= "<<min_search(A)<<std::endl;
что значит эта строка int _tmain(int argc, _TCHAR* argv[])?
а именно tmain,int argc, _TCHAR*argv
и что такое std::endl;
Спасибо!
Yamaneko
 Аватар для Yamaneko
7 / 7 / 1
Регистрация: 10.05.2013
Сообщений: 90
15.05.2013, 11:54     Найти минимальное число среди положительных чисел и максимальное число среди отрицательных чисел #5
Цитата Сообщение от Cleo12 Посмотреть сообщение
что значит эта строка int _tmain(int argc, _TCHAR* argv[])?
а именно tmain,int argc, _TCHAR*argv
Это аргументы функции main(). Если страшно, можно всё стереть. Без этого работать будет.
std::endl - переход в консоли на новую строку. В Си это '\n'.
Yandex
Объявления
15.05.2013, 11:54     Найти минимальное число среди положительных чисел и максимальное число среди отрицательных чисел
Ответ Создать тему
Опции темы

Текущее время: 23:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru