Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.11.2013, 12:32   #11
spectrum988
Форумчанин
 
Аватар для spectrum988
 
Регистрация: 24.10.2013
Сообщений: 241
По умолчанию

А как можно сделать,чтобы сумму находило после каждого минимального элемента массива,например ,если
a[0]=2
a[1]=3
a[2]=5
a[3]=1
a[4]=1
Cумма до первого минимального должны быть равна 10 а до второго минимального 11.
spectrum988 вне форума Ответить с цитированием
Старый 05.11.2013, 08:19   #12
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Можно. Находишь минимальное значение (т.е. сохраняешь не индекс, а значение, в остальном алгоритм аналогичен), после этого перебираешь все элементы массива, при этом суммируя их. Если элемент массива = минимальному, то выводишь ранее полученную сумму. Как-то так:
Код:
for (int i = 0; i <= n;i++) {
if (a[i] = min) cin << "Сумма до " << i << "го минимального = " << summ;
summ += a[i];
}
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 05.11.2013, 11:42   #13
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

2 цикла?
За один проход (на Си) :
Код:
#include  <stdio.h>

int main () {
    int a[100], n, i, m, sum = 0, tsum = 0;

    scanf ("%d", &n);


    for (i = 0; i < n; i++)
        scanf ("%d", &a[i]);

    m = a[0];
    tsum = a[0];
    for (i = 1; i < n; i++) {
        if (a[i] < m) {
            m = a[i];
            sum = tsum;
        }
        tsum += a[i];
    }

    printf ("Min = %d sum =%d", m, sum);
    return 0;
}
Если хочется еще больше, то и ввод с поиском запихать в один цикл..
Poma][a вне форума Ответить с цитированием
Старый 05.11.2013, 12:36   #14
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Poma][a, Вы не правы. Вывод будет только одного минимального значения и суммы для него, например в последовательности 1221222 выведется "1,0", а вторая единица проигнорируется. Задача же
Цитата:
чтобы сумму находило после каждого минимального элемента
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 05.11.2013, 12:55   #15
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Мое замечание было к тем кодам, которые расположены на 1 странице..
Poma][a вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поменять местами минимальный и максимальный элемент массива Лераа Паскаль, Turbo Pascal, PascalABC.NET 3 19.12.2012 00:32
Дан массив А [N,N] переставить местами А[1,1] и минимальный элемент массива olegatorka Visual C++ 3 07.11.2012 22:21
Минимальный элемент массива Артемкка Помощь студентам 3 19.12.2011 01:18
Delphi Максимальный и минимальный элемент массива Arden Virth Помощь студентам 1 25.10.2011 11:04
Минимальный элемент массива hoolywood Паскаль, Turbo Pascal, PascalABC.NET 3 30.05.2011 12:21