Libro Esercitazioni informatica – 1

Esercizio:
Scrivere un algoritmo e successivamente un programma in C++, che definisca un array di numeri interi di dimensione arbitraria.
Il programma inserisce i dati nell’array.
In seguito richiedere all’utente l’inserimento di due numeri interi a e b con a < b, e effettuare il conteggio degli elementi dell’array interni all’intervallo [a,b] e quelli esterni all’intervallo.
Le variabili del nostro problema sono:

UsoNomeTipoDescrizione
InputnInteroNumero Elementi dell’array
InputvetInteroVettore o Array di Numeri interi
Inputa,bInteroestremi a e b dell’intervallo
LavorokInteroindice del ciclo e dell’array
Outputcont1, cont2InteroNumero elementi interi e esterni all’intervallo [a,b] individuati nell’array

L’algoritmo risolutivo svolto con il software “AlgoBuild” è:

Il codice C++ è:

#include <iostream>
using namespace std;
int main()
{
	int n,a,b,i,cont1,cont2;
	cout << "\n Quanti elementi nell'array ?";
	cin >> n;
	int vet[n];
	for (i=0;i<n;i++)
	{
		cout << "\n Inserisci elementi di posto:"<< i+1<<":";
		cin >> vet[i];
	}
	do
	{
		cout << "\n Inserisci gli estremi a e b:";
		cin >> a >> b;
		if (a>=b)
			cout << "\n Errore ripeti inserimento !";
	}
	while (a>=b);
	cont1=0;
	cont2=0;
	for (i=0;i<n;i++)
		if ((vet[i]>=a)&&(vet[i]<=b))
			cont1++;
		else
			cont2++;
	cout << "Il numero degli elementi interni:";
	cout << cont1<<endl;
	cout << "Il numero degli elementi esterni:";
	cout << cont2 << endl;
	return 0;
}