De la tastatură se citesc elementele unui vector de dimensiunea n, (n<=100) de numere întregi. Elaborați un program prin intermediul căruia numără câte elemente sunt diferite de:
a) ultimul element;
b) primul element;
va rog in C
Răspunsuri la întrebare
#include <iostream>
using namespace std;
int n, vector[100] = {0}, numar_diferite_ultimul = 0, numar_diferite_primul = 0;
int main()
{
cout << "Introduceti dimensiunea vectorului: ";
cin >> n;
for (int i = 0; i < n; i++)
{
cout << "Introduceti elementul " << i + 1 << ": ";
cin >> vector[i];
}
// Numarul de elemente diferite de ultimul element
for (int i = 0; i < n - 1; i++)
{
if (vector[i] != vector[n - 1])
numar_diferite_ultimul++;
}
// Numarul de elemente diferite de primul element
for (int i = 1; i < n; i++)
{
if (vector[i] != vector[0])
numar_diferite_primul++;
}
cout << "Numarul de elemente diferite de ultimul element: " << numar_diferite_ultimul << endl;
cout << "Numarul de elemente diferite de primul element: " << numar_diferite_primul << endl;
return 0;
}
Explicație:
Programul cere utilizatorului să introducă dimensiunea vectorului și elementele lui, după care se aplică două bucle for pentru a număra câte elemente sunt diferite de ultimul și primul element.
In prima buclă, se parcurg elementele vectorului până la penultimul element și se verifică dacă elementul curent este diferit de ultimul element. Dacă este diferit, se incrementează numarul de elemente diferite de ultimul element.
In cea de-a doua buclă, se parcurg elementele vectorului din a doua poziție până la ultima și se verifică dacă elementul curent este diferit de primul element. Dacă este diferit, se incrementează numarul de elemente diferite de primul element.
La sfarsit se afișează numărul de elemente diferite de ultimul și primul element.