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

Сумму элементов массива, расположенных между первым и последним отрицательными элементами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ перезагрузка оператора равно http://www.cyberforum.ru/cpp-beginners/thread759101.html
struct pointer_command { public: void * x; public: void set(void * y){x = y; } void operator = (void * y ) {x = y;} void* operator = ( pointer_command& const y ){return y.x;} };
C++ Добавление расширения файла Подскажите, пожалуйста, как сделать так, чтобы в программе при запуске пользователь вводиил только имя файла а расширение к нему добавляла программа? Нужен сам код вот этой части http://www.cyberforum.ru/cpp-beginners/thread759083.html
C++ Исправить код (Циклы)
#include <iostream> using namespace std; int main () { setlocale(0, ""); double x, i = 0; // инициализируем счетчик цикла. double sum = 0; // инициализируем счетчик суммы. ...
C++ Добавьте в состав класса виртуальную функцию просмотра текущего объекта print (), а в производный класс student_l - переопределенную функцию просмотра
..15.. Добавьте в состав класса (программа есть, нужно дополнить) виртуальную функцию просмотра текущего объекта print (), а в производный класс student_l - переопределенную функцию просмотра...
C++ Перевод числа N из десятичной системы счисления в восьмиричную http://www.cyberforum.ru/cpp-beginners/thread759059.html
Здравствуйте! Я начинающий программист и мне очень надо создать 3 программы на С++ а мой запас знаний особо невелик. задания таковы: 1)перевод числа N из 10-ой системы счисления в 8-ричную; ...
C++ Дано натуральное число. Вывести на экран все простые числа до заданного числа. Дано натуральное число. Вывести на экран все простые числа до заданного числа. подробнее

Показать сообщение отдельно
BumerangSP
4287 / 1409 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
11.01.2013, 22:50
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
int main()
{
     int a[10] = {1,-6,4,2,-7,9,-2,4,5,5}, j(-1), k(0), s(0);    
    for(int i = 0; i<10; i++)
        if(a[i]<0) 
             j<0 ? j = i : k = i;
     for(int i = j+1; i<k; i++)
        s+=a[i];
     std::cout<<s<<'\n';
     return 0;
}
Алгоритм вкратце:
Кликните здесь для просмотра всего текста
задаем какой-то переменной уникальное начальное значение (у меня j = -1) и перебором в цикле ищем первый отрицательный элемент. Т.к. индекс массива не может быть отрицательным, то в первом случае проверяем, отрицательна ли j, если да, то присваиваем ей индекс этого отр. элемента в массиве. В остальных случаях проверяем так же j (условие теперь выполняться не будет) и остальное (индексы отр. элементов) до конца цикла пишем в другую переменную (у меня k). Далее вторым циклом от j до k просто суммируем оставшееся.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.