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

Как на писать правильно ? - C++

Восстановить пароль Регистрация
 
Ibook
 Аватар для Ibook
0 / 0 / 0
Регистрация: 11.12.2011
Сообщений: 56
05.02.2012, 22:33     Как на писать правильно ? #1
В одномерном массиве, состоящем из N вещественных элементов, вычислить:

1) Сумму положительных элементов массива

2) Произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами.

3) Упорядочить элементы массива по убыванию.

В массиве должно быть не менее 12 элементов. Массив заполните случайными значениями (или выполните инициализацию). Исходный массив и отсортированный массив надо вывести на экран при помощи функции (Show(), хорошо Вам знакомая). Учтите, что взаимное расположение минимального и максимального элементов может быть произвольным.

 Комментарий модератора 
На каждую задачу создавайте пожалуйста отдельную тему.

Закрыто.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2012, 22:33     Как на писать правильно ?
Посмотрите здесь:

C++ Обьясните где ошибка , и как правильно писать программу!
C++ Как писать под RockBox?
Как писать для x64? C++
C++ Как в консоли на C++ писать на русском
C++ Как правильно писать наследование
Как не писать много ИЛИ C++
C++ Как правильно писать говнокод?
C++ Как правильно унаследовать TPoint2D от TPoint3D/ Правильно ли наследовать? ООП

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
05.02.2012, 22:39     Как на писать правильно ? #2
Цитата Сообщение от Ibook Посмотреть сообщение
1) Сумму положительных элементов массива
C++
1
std::cout << std::accumulate(std::begin(v), std::end(v), 0, [] (double total, double val) { return total += val > 0 ? val : 0; }) << std::endl;
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
06.02.2012, 20:24     Как на писать правильно ? #3
2) Произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <algorithm>
#include <numeric>
#include <functional>
#include <cmath>
 
int main()
{
    double arr[]{0, -7.55, 9.2, -9.21, -6.6, 4};
    std::size_t size = sizeof(arr) / sizeof(*arr);
    auto p = std::minmax_element(arr, arr + size, [](double a, double b){return std::abs(a) < std::abs(b);});
    if(std::abs(std::distance(p.first, p.second)) > 1)
    {
        std::cout << std::accumulate(std::next(p.first < p.second ? p.first : p.second), p.first < p.second ? p.second : p.first, 1.0, std::multiplies<double>());
    }
    return 0;
}
Yandex
Объявления
06.02.2012, 20:24     Как на писать правильно ?
Закрытая тема Создать тему
Опции темы

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