👤

Se citeste un vector cu elemente numere reale. Sa se insereze intre oricare doua valori vecine (consecutive) media lor artimetica.
AJUTOR, NU IMI IESE! VA ROG MULT! DAU MULTE PUNCTE!!


Răspuns :

Explicație:

#include <iostream>

using namespace std;

int main()

{

   int n,i;  //declaram de tip intreg n (numarul de valori din vectori) si contorul i

   float k,v[100];//declaram de tip real media aritmetica a doua valori consecutive si elementele vectorului

   cout<<"n=";

   cin>>n; //citim n

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

   {

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

       cin>>v[i]; //citim elementele vectorului

   }

   cout<<v[1]<<" "; //afisam pe ecran primul element din vector

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

   {

       if((v[i+1]-v[i]==1)||(v[i]-v[i+1]==1)) //testam daca cele doua valori aflate pe pozitii vecine sunt numere consecutive, fie consecutive crescator, fie consecutive descrescator

       {

           k=(v[i]+v[i+1])/(1.0*2);

           cout<<k<<" "<<v[i+1]<<" "; //in caz afirmativ afisem intre ele media aritmetica

       }

       else

           cout<<v[i+1]<<" "; //in caz negativ trecem mai departe

   }

   return 0;

}

Precizare: Tot ce se afla scris dupa // sunt comentarii ce ajuta la intelegerea problemei.

PS: Atasez si o varianta de compilare din CodeBlocks.

Vezi imaginea ADRIANALITCANU2018