-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAndreinaMelo_IIIUnidade_q1.cpp
101 lines (88 loc) · 2.81 KB
/
AndreinaMelo_IIIUnidade_q1.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#include <iostream>
#include <locale>
#include <iomanip>
#include <cstdlib>
using namespace std;
void cadastro(int [], int [], int);
float calculaMediaAritmetica(int [], int);
void calculaFrequencias (int [], int [], int, int);
void calculaModa (int[], int[], int, int);
void imprimeVetor (int [], int);
int main(){
setlocale(LC_ALL, "Portuguese");
cout << setiosflags (ios:: fixed| ios:: showpoint) << setprecision(2);
const int tam= 90;
int automoveis[tam], motocicletas[tam];
int frequenciaA[348] = {0};
int frequenciaM[126] = {0};
float mediaA, mediaM;
cadastro(automoveis, motocicletas, tam);
cout << "=============RESULTADOS AUTOMÓVEIS============" << endl;
cout << "\nVetor automoveis: " << endl;
imprimeVetor(automoveis, tam);
mediaA = calculaMediaAritmetica(automoveis, tam);
cout << "\nMédia: " << mediaA;
calculaModa(automoveis, frequenciaA, tam, 348);
cout << endl;
cout << "============RESULTADOS MOTOCICLETAS==============" << endl;
cout << "\nVetor motocicletas: " << endl;
imprimeVetor(motocicletas, tam);
mediaM = calculaMediaAritmetica(motocicletas, tam);
cout << "\nMédia: " << mediaM;
calculaModa(motocicletas, frequenciaM, tam, 126);
cout << endl;
return 0;
}
void cadastro(int A[], int M[], int t){
cout << "Digite os dados coletados por dia referentes a AUTOMÓVEIS: " << endl;
for (int i=0; i<t; i++){
cin >> A[i];
}
cout << "\nDigite os dados coletados por dia referentes a MOTOCICLETAS: " << endl;
for (int i=0; i<t; i++){
cin >> M[i];
}
}
float calculaMediaAritmetica(int A[], int t){
float somatorio =0;
for (int i=0; i<t; i++){
somatorio = somatorio + A[i];
}
return (somatorio/(t));
}
void calculaFrequencias (int V[], int f[], int tV, int tF){ // tV= tamanho V, tF = tamanho F
int pos; // pos = posição
for (int i=0; i<tV; i++){
pos = V[i];
for (int i1=0; i1<tF; i1++){
if (i1 == pos){
f[i1] = f[i1] + 1;
}
}
}
}
void calculaModa (int V[], int f[], int tV, int tF){
calculaFrequencias(V, f, tV, tF);
int moda = f[0], posmoda = 0, qtdmodas = 0;
cout << "\nFrequência: " << endl;
for (int i=0; i<tF; i++){
cout << setw(4) << f[i];
if (f[i] > moda){
moda = i;
posmoda = f[i];
}
if (f[i] == moda){
qtdmodas ++;
}
}
if (qtdmodas==tF-1){
cout << "O conjunto não apresenta moda. " << endl;
} else{
cout << "\nModa: " << moda << " e f[" << moda << "]: " << posmoda << endl;
}
}
void imprimeVetor (int V[], int tam){
for (int i=0; i<tam; i++){
cout << setw(4) << V[i] ;
}
}