Dato un vettore di 10 interi da 0 a 9, inserire in un secondo vettore le frequenze assolute dei numeri che appaiono nel primo vettore.
Soluzione:
#include<iostream>Ā
using namespace std;Ā
const int n=10;Ā
main(){Ā
int T[n]={0,7,6,7,7,6,7,6,7,7};Ā
int V[n]={0,0,0,0,0,0,0,0,0,0};Ā
int i,j,x=0;Ā
// i,j indici x contatore delle ricorrenzeĀ
//primo ciclo dal I° al penultimo elementoĀ
for(i=0;i<n-1;i++){
// II° ciclo dalla posizione i+1 all’ultimo elemento
Ā Ā Ā Ā Ā for(j=i+1;j<n;j++){Ā
//se il valore dell’i-esimo elemento ĆØ uguale al valore //di uno degli elementi successivi x si incrementa
if(T[i]==T[j])x++;Ā
}//fine for jĀ
//se il valore in posizione T[i] del secondo vettoreĀ
//ĆØ uguale a 0 tale valore viene impostato a 1; cioĆØĀ
//se T[i]==7 ĆØ stato trovato almeno un valore pari a 7 //nel primo vettore TĀ
if(!V[T[i]]){Ā
Ā Ā Ā Ā Ā Ā V[T[i]]=1;Ā
Ā Ā Ā Ā Ā Ā if(x)V[T[i]]+=x;Ā
}Ā
//se il contatore ha trovato delle ricorrenze successive
//esse vengono aggiunte al valore di V[T[i]]Ā
x=0;Ā
}//fine for iĀ
cout<<“numero :\t”;Ā
for(i=0;i<n;i++)cout<<i;
cout<<“\nricorrenze:\t”;Ā
for(i=0;i<n;i++)cout<<V[i};Ā
}//fine main