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

Вычислить сумму элементов массива до первого нуля - C++

Восстановить пароль Регистрация
 
JIioneJI
1 / 1 / 0
Регистрация: 04.01.2013
Сообщений: 121
18.02.2013, 00:30     Вычислить сумму элементов массива до первого нуля #1
Написать программу, в которой массив генерируется случайными числами от 0 до 9.
Вычислить сумму элементов массива до первого нуля

Добавлено через 4 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
    SetConsoleOutputCP(1251);
    srand((unsigned) time(NULL));
    int mas[10],sum=0;
    for (int i=0; i<10; i++)
          mas[i]=rand()%10;
      
    for (int i=0; i<10; i++)
        cout<<mas[i]<<endl;
 
    cout<<endl;
    for (int i=0; i<10; i++)
    {
        if (mas[i]==0)
            break;
        else
        {
        sum=sum+mas[i];
        cout<<"Сумма массива до первого нуля "<<sum<<endl;
        }
    }
}
так правильно или можно упростить?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2013, 00:30     Вычислить сумму элементов массива до первого нуля
Посмотрите здесь:

Вычислить суммы элементов массива до первого нуля (доработать) C++
C++ В одномерном массиве вычислить номер максимального элемента массива и сумму элементов массива, расположенных после первого положительного
Ввод и вывод массива целых чисел Вычислить сумму модулей элементов массива,располроженных после первого отрицательного C++
C++ Ввод и вывод массива целых чисел Вычислить сумму модулей элементов массива,располроженных после первого отрицательного
C++ Вычислить максимальный элемент массива до первого нулевого и сумму элементов до последнего положительного.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
18.02.2013, 00:34     Вычислить сумму элементов массива до первого нуля #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
 
int main ()
{
    int array[] = {1, 2, 3, 4, 0, 9};
    int sum = 0;
 
    int i = 0;
    while (array[i]) {
        sum += array[i];
        i++;
    }
    std::cout << sum << std::endl;
 
    return 0;
}
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
18.02.2013, 00:42     Вычислить сумму элементов массива до первого нуля #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <ctime>
#include <cstdlib>
int main()
{
     srand(time(NULL));
     int a[10]={0};
     int c(0);
     bool f(1);
     for (int i=0; i<10; ++i)
     {
          std::cout<<(a[i] = rand()%10)<<'\t';
          c += (a[i] && f) ? a[i] : (f = 0);
     }
     std::cout<<'\n'<<c<<'\n';  
     return 0;
}
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11845 / 6824 / 771
Регистрация: 27.09.2012
Сообщений: 16,919
Записей в блоге: 2
Завершенные тесты: 1
18.02.2013, 00:50     Вычислить сумму элементов массива до первого нуля #4
Еще вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <clocale>
#include <ctime>
#include <cstdlib>
int main(){
    setlocale(LC_ALL,"rus");
    srand((unsigned) time(NULL));
    int mas[10],sum=0;
    for (int i=0,flag=true; i<10; i++){
         std::cout<<(mas[i]=rand()%10)<<" ";
         if(flag)
             flag=(sum+=mas[i],mas[i]);
     }      
    std::cout<<std::endl;
    std::cout<<"Сумма массива до первого нуля "<<sum<<std::endl;
}
Yandex
Объявления
18.02.2013, 00:50     Вычислить сумму элементов массива до первого нуля
Ответ Создать тему
Опции темы

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