В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
ева514
ева514
09.03.2023 06:02 •  Информатика

Написать программу, определяющую сумму элементов массива, находящихся в массиве до первого элемента со значением 0. на языке с++

Показать ответ
Ответ:
denic311
denic311
08.10.2020 07:07
#include <iostream>
using namespace std;

int main() {
    int n = 10, s = 0, i;
    int a[n];
    srand(time(NULL));
    cout<<"array:"<<endl;
    for (i=0; i<n; i++)
    {
      a[i]=rand() % 40-20;
      cout<<a[i]<<" ";
    }
    cout<<endl;
    i = 0;
    while ((i<n) && (a[i] != 0)) {
    s += a[i];
    i++;
    }
    if (i == n) cout << "В массиве нет элементов = 0";
    else cout << "s = " << s;
    system("pause");
    return(0);
}

Пример:
12 -9 17 15 0 13 -10 19 18 15
s = 35
0,0(0 оценок)
Ответ:
juwal
juwal
08.10.2020 07:07
#include <iostream>
#include <array>
#include <numeric>
using namespace std;

const size_t N = 10;

int main()
{
    array<int, N> a = { 1, 5, 9, 6, 3, 0, 1, 4, -2, 4 };
    cout << accumulate(a.cbegin(), find(a.cbegin(), a.cend(), 0), 0);   
}
интересно на паскале короче бы вышло?
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота