Informatică, întrebare adresată de Vasea1665, 8 ani în urmă

Se da un tablou unidimensional de tip intreg, de calculat suma elementelor impare dintre primul si ultimul element nul. Va rog ajutaţimă

Răspunsuri la întrebare

Răspuns de GabiAlex99
3

#include<iostream>

using namespace std;

int main()

{

int n, v[100], s=0;

cin>>n;

for(int i=1;i<=n;i++)

cin>>v[i];

int primul_element=-1, ultimul_element=-1;

for(int i=1;i<=n;i++)

if(v[i]==0) { primul_element=i; break; }

for(int i=n;i>=1;i--)

if(v[i]==0) { ultimul_element=i; break; }

for(int i=primul_element;i<=ultimul_element;i++)

if(v[i]%2==1) s=s+v[i];

cout<<s;

}


Vasea1665: Mulţumesc mult, mă puteţi ajuta vă rog mult şi cu schema bloc la acest program?
Răspuns de Lică211
0

#include <iostream>

using namespace std;

int main()

{

   int n, v[40],si,i,k, m,l;

   cout<<"Dati dimensiunea vectorului:";cin>>n;

   for(i=1;i<=n;i++)

   {

       cout<<"v["<<i<<"]=";

       cin>>v[i];

   }

   k=1;i=1;// cautam primul element nul

   while(k==1)

   {

       if(v[i]==0)

       {   m=i;

           k++;

       }

       i++;

   } // cautam ultimul element nul

   k=1; i=n;

   while(k==1)

   {

       if(v[i]==0)

       {

           l=i;

           k++;

       }

       i--;

   }

   si=0; // si- suma elementelor impare

    /* daca intre primul si ultimul element nul exista cel putin un numar, calculam suma  */

   if(m+1<l)    

   {

       for(i=m;i<=l;i++)

           if(v[i]%2==1)

               si=si+v[i];

       cout<<"Suma elementelor impare dintre primul si ultimul element nul, este:"<<si;

   }

   else

       if(m==l)

           cout<<"In vector exista doar un element nul.";

       else

           if(m+1==l)

               cout<<"Intre cele doua elemente nule nu se afla alte numere.";

   return 0;

}



Vasea1665: Programul dă eroare
Alte întrebări interesante