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

Массивы. Найти минимум из сумм 3-х его последовательных элементов - C++

Восстановить пароль Регистрация
 
Knecer
0 / 0 / 0
Регистрация: 17.12.2013
Сообщений: 27
17.12.2013, 23:01     Массивы. Найти минимум из сумм 3-х его последовательных элементов #1
Вводится массив. Найти минимум из сумм 3-х его последовательных элементов.
Например, для массива 1 3 4 6 7 данные суммы равны 8, 13 и 17, минимум равен 8.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2013, 23:01     Массивы. Найти минимум из сумм 3-х его последовательных элементов
Посмотрите здесь:

Для заданной матрицы найти минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали. C++
Найти минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы C++
Найти минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы C++
Найти минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы C++
Определить минимум среди сумм модулей элементов диагоналей C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Xander0k
 Аватар для Xander0k
0 / 0 / 0
Регистрация: 17.12.2013
Сообщений: 14
17.12.2013, 23:46     Массивы. Найти минимум из сумм 3-х его последовательных элементов #2
размерность масива вказывается через клавиатуру?
SanchO-SEK
 Аватар для SanchO-SEK
61 / 23 / 3
Регистрация: 22.05.2012
Сообщений: 87
18.12.2013, 00:06     Массивы. Найти минимум из сумм 3-х его последовательных элементов #3
Вот, пока так набросал. Только последовательность прописана в коде заранее.
VisualC++ 2010:
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
#include <iostream>
 
using std::cout;
using std::endl;
 
int main(void) {
    setlocale(LC_ALL, "Rus");
    const int arrSize = 8;            // размер матрицы
    int step=3;                       // количество элементов суммы
    int arr[arrSize]={5, 3, 4, 6, 7, 4, 5, 2};
    int min=(arr[0]+arr[1]+arr[2]);   // "минимум из сумм 3-х его последовательных элементов". По-умолчанию сумма первых трех элементов
//////////////////////////////////
    int pos=0;
    cout << "Последовательность: ";
    while(pos<=(arrSize-step)) { // пока не достигнут конец последовательности....
        int sum=0; // временная переменная для суммы последовательности
        sum=arr[pos]+arr[pos+1]+arr[pos+2]; // собственно, сумма
        if(min>sum) min=sum;                // установка минимального значения
        cout << sum << " ";                 // вывод элемента последовательности
        pos++;                              // на следующей итерации начинать со следующего элемента последовательности
    }
    cout << endl << "Минимальное: " << min << endl;
//////////////////////////////////
    system("PAUSE");
    return 0;
}
outoftime
║XLR8║
 Аватар для outoftime
505 / 427 / 33
Регистрация: 25.07.2009
Сообщений: 2,297
18.12.2013, 07:17     Массивы. Найти минимум из сумм 3-х его последовательных элементов #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <iterator>
#include <algorithm>
 
int main()
{
    const int n = 10;
    int a[n] = {1,2,3,4,5,6,7,8,9,0}, 
        sum[n - 2] = {0};
    std::transform(std::begin(a) + 2, std::end(a), std::begin(sum),
        [](const int &value) { 
            return value + *(&value - 1) + *(&value - 2); 
        }
    );
    std::cout << (*std::min_element(std::begin(sum), std::end(sum)));
   
    return EXIT_SUCCESS;
}
Yandex
Объявления
18.12.2013, 07:17     Массивы. Найти минимум из сумм 3-х его последовательных элементов
Ответ Создать тему
Опции темы

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