Dev - C++ - Escriba una función que acepte un arreglo de enteros en c++

 
Vista:

Escriba una función que acepte un arreglo de enteros en c++

Publicado por programa en c++ (9 intervenciones) el 04/12/2020 14:43:05
Escriba una función que acepte los siguientes argumentos:

a) Un arreglo de enteros
b) Un entero que indique la cantidad de elementos que tiene el arreglo

La función debe determinar la moda del arreglo. Esto es, debe determinar cual valor en el arreglo es el más frecuente. La moda es el valor que la función debe retornar.
Si el arreglo no tiene moda (ninguno de los valores ocurre más de una vez), la función debe retornar -1. (Asuma que el arreglo debe contener siempre valores positivos.)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alfil
Val: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Escriba una función que acepte un arreglo de enteros en c++

Publicado por Alfil (1444 intervenciones) el 04/12/2020 17:12:24
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
#include <iostream>
 
using namespace std;
 
int modaArreglo(int v[], int n);
 
int main()
{
    int moda;
    int v[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 6};
 
    moda = modaArreglo(v, 10);
 
    if (moda != -1)
        cout << "\nModa: " << moda << endl;
    else
        cout << "\nSin Moda" << endl;
 
    return 0;
}
 
int modaArreglo(int v[], int n)
{
    int moda, count = 0;
 
    for (int i = 0; i < n; i++)
    {
        int temp = 0;
        for (int j = 0; j < n; j++)
        {
            if (v[i] == v[j])
                temp++;
        }
        if (temp > count)
        {
            count = temp;
            moda = v[i];
        }
     }
 
     return moda = count == 1 ? -1 : moda;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar