Рассчитать сумму модулей элементов массива

Nansy17

Помогите, пожалуйста, с таким заданием, хотя бы наводки дайте.Ввести одномерный статический массив из k чисел.Найти сумму модулей элементов массива, расположенных после последнего нулевого элемента.
2 ответа

Nansy17

Nansy17,
#include <iostream>
#include <time.h>
using namespace std;
int main() {
    srand(time(NULL));
    const int k=20;
    int arr[k],i,sum=0;
    for (i=0;i<k;i++) {
        arr[i]=rand()%20-10;
        cout<<"arr["<<i<<"] = "<<arr[i]<<endl;
    }
    for (i=k-1;i>=0;i--){
        if (!arr[i]) {
            for(int j=i;j<k;j++) 
                sum+=abs(arr[j]);
            break;
        }
    }
    cout<<"Sum="<<sum<<endl;
    system("pause");
    return 0;
}


Nansy17

#include <iostream>
#include <cstdlib>
#include <ctime>
#include <cmath>
using namespace std;
int main()
{
int n,sum;
sum=0;
bool flag=false;
cout<<"Please enter line array:";
cin>>n;
int *a=new int[n];
srand(time(0));
for (int i=0;i<n;i++)
{
a[i]=-9+rand()%20;
cout<<a[i]<<"  ";
}
cout<<endl;
    for (int i=0;i<n;i++)
    {
        if (a[i]==0)
        {
            cout<<"\na["<<i<<"]= 0\n"<<endl;
            sum=0;
        }
 
        if (a[i]!=0)
        {
        cout<<"sum = "<<abs(a[i])<<"+"<<sum<<"=";
        sum+=abs(a[i]);
        cout<<sum<<endl;
        }
    }
cout<<"\nsum = "<<sum;
return 0;
}