JavaScript - Generar 30 números entre el 1 y el 99 y dar como resultado

 
Vista:
sin imagen de perfil
Val: 41
Ha aumentado su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Generar 30 números entre el 1 y el 99 y dar como resultado

Publicado por Manu (11 intervenciones) el 25/03/2021 13:49:21
Necesito hacer este ejercicio para clase:
En un código generar 30 números entre el 1 y el 99 y dar como resultado de salida:
a) Número más alto.
b) Número más bajo.
c) Media aritmética.
d) Moda.
e) Mediana.
f) Cantidad de 1,2...10 y sus porcentajes.
Tengo hecho hasta el apartado c). Si pudieran ayudarme se lo agradecería. Gracias
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
sin imagen de perfil
Val: 41
Ha aumentado su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Generar 30 números entre el 1 y el 99 y dar como resultado

Publicado por Manu (11 intervenciones) el 25/03/2021 17:46:40
Muchas gracias, pero en ese ejercicio te pide la primera parte del mio. Necesito completar la segunda. Si pudieras ayudarme, gracias.
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
sin imagen de perfil
Val: 57
Ha aumentado 1 puesto en JavaScript (en relación al último mes)
Gráfica de JavaScript

Generar 30 números entre el 1 y el 99 y dar como resultado

Publicado por Miguel (18 intervenciones) el 25/03/2021 18:41:48
agrega los datos y el codigo que lleves hasta el momento asi no se puede sugerir cambios
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
sin imagen de perfil
Val: 41
Ha aumentado su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Generar 30 números entre el 1 y el 99 y dar como resultado

Publicado por Manu (11 intervenciones) el 25/03/2021 20:55:58
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
<html>
<head>
    <style>
        body{font-family:monospace;
            color:greenyellow;
            background-color: black;}
    </style>
</head>
<body>
    <script>
 
        numerosaleatorios = Array();
 
        function random(min, max){
            return Math.floor(Math.random() * (max - min)) + min;
        }
 
        function raiz(x, n) {
            return Math.exp(Math.log(x) / n);
        }
 
        for(i=0; i<30; i++){
            numerosaleatorios[i]=random(1, 99);
        }
 
        alto=0;
        bajo=100;
 
        for( i=0; i<30; i++){
            if(alto<numerosaleatorios[i]){
                alto = numerosaleatorios[i];
            }
            if(bajo>numerosaleatorios[i]){
                bajo = numerosaleatorios[i];
            }
        }
 
        mediaaritmetica = numerosaleatorios[0];
 
        for( i=1; i<30; i++){
            mediaaritmetica = mediaaritmetica + numerosaleatorios[i];
        }
 
        mediaaritmetica = mediaaritmetica / 30;
 
 
 
        document.write("Numeros aleatorios: "+numerosaleatorios, "</br>");
        document.write("Numero mas alto: "+alto, "</br>");
        document.write("Numero mas bajo: "+bajo, "</br>");
        document.write("Media aritmetica: "+mediaaritmetica, "</br>");
        document.write("Moda: "+moda, "</br>");
        document.write("Mediana: "+mediana, "</br>");
 
    </script>
</body>
</html>
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
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Generar 30 números entre el 1 y el 99 y dar como resultado

Publicado por xve (2100 intervenciones) el 27/03/2021 19:33:36
Hola Manu, como me has comentado en el chat, aquí te muestro tu codigo con las dos funciones de kata

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
<html>
<head>
    <style>
        body{font-family:monospace;
            color:greenyellow;
            background-color: black;}
    </style>
</head>
<body>
    <script>
 
        numerosaleatorios = Array();
 
        function random(min, max){
            return Math.floor(Math.random() * (max - min)) + min;
        }
 
        function raiz(x, n) {
            return Math.exp(Math.log(x) / n);
        }
 
        const masRepetido = ar => ar.reduce((acum, el, i, ar) => {
                const count=ar.filter(e => e==el).length;
                return count > acum[1] ? [el, count] : acum;
            }, ["", 0]
        )
 
        function mediana(arr) {
            arr.sort((a,b) => a-b);
            const l=arr.length;
            return l%2==0
                ? arr.slice(l/2-1, l/2+1).reduce((a,b) => a+b)/2
                : arr.slice((l/2), l/2+1)[0];
        }
 
        for(i=0; i<30; i++){
            numerosaleatorios[i]=random(1, 99);
        }
 
        alto=0;
        bajo=100;
 
        for( i=0; i<30; i++){
            if(alto<numerosaleatorios[i]){
                alto = numerosaleatorios[i];
            }
            if(bajo>numerosaleatorios[i]){
                bajo = numerosaleatorios[i];
            }
        }
 
        mediaaritmetica = numerosaleatorios[0];
 
        for( i=1; i<30; i++){
            mediaaritmetica = mediaaritmetica + numerosaleatorios[i];
        }
 
        mediaaritmetica = mediaaritmetica / 30;
 
 
 
        document.write("Numeros aleatorios: "+numerosaleatorios+"</br>");
        document.write("Numero mas alto: "+alto+"</br>");
        document.write("Numero mas bajo: "+bajo+"</br>");
        document.write("Media aritmetica: "+mediaaritmetica+"</br>");
        document.write("Moda: "+masRepetido(numerosaleatorios)[0]+"</br>");
        document.write("Mediana: "+mediana(numerosaleatorios)+"</br>");
 
    </script>
</body>
</html>
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
sin imagen de perfil
Val: 41
Ha aumentado su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Generar 30 números entre el 1 y el 99 y dar como resultado

Publicado por Manu (11 intervenciones) el 27/03/2021 20:45:43
Muchas gracias!!! Ha sido de gran ayuda :)
Sabría alguien hacer el último apartado de calcular la cantidad de 1,2...10 y sus porcentajes. Gracias de nuevo.
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
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Generar 30 números entre el 1 y el 99 y dar como resultado

Publicado por xve (2100 intervenciones) el 28/03/2021 09:32:21
No se muy bien a que te refieres con "Cantidad de 1,2...10 y sus porcentajes"

Puedes poner un ejemplo?
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
sin imagen de perfil
Val: 41
Ha aumentado su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Generar 30 números entre el 1 y el 99 y dar como resultado

Publicado por Manu (11 intervenciones) el 28/03/2021 10:25:28
A la cantidad de veces que se repiten los números del 1 al 10. Al ser aleatorios algunos se repiten pero solo me pide que sea del 1 al 10.

Captura-de-pantalla-2021-03-28-102428
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
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Generar 30 números entre el 1 y el 99 y dar como resultado

Publicado por xve (2100 intervenciones) el 29/03/2021 18:24:04
Hola Manu, mira haber si te sirve así:

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
<html>
<head>
    <style>
        body{font-family:monospace;
            color:greenyellow;
            background-color: black;}
    </style>
</head>
<body>
    <script>
 
        numerosaleatorios = Array();
 
        function random(min, max){
            return Math.floor(Math.random() * (max - min)) + min;
        }
 
        function raiz(x, n) {
            return Math.exp(Math.log(x) / n);
        }
 
        const masRepetido = ar => ar.reduce((acum, el, i, ar) => {
                const count=ar.filter(e => e==el).length;
                return count > acum[1] ? [el, count] : acum;
            }, ["", 0]
        )
 
        function mediana(arr) {
            arr.sort((a,b) => a-b);
            const l=arr.length;
            return l%2==0
                ? arr.slice(l/2-1, l/2+1).reduce((a,b) => a+b)/2
                : arr.slice((l/2), l/2+1)[0];
        }
 
        for(i=0; i<30; i++){
            numerosaleatorios[i]=random(1, 99);
        }
 
        alto=0;
        bajo=100;
 
        for( i=0; i<30; i++){
            if(alto<numerosaleatorios[i]){
                alto = numerosaleatorios[i];
            }
            if(bajo>numerosaleatorios[i]){
                bajo = numerosaleatorios[i];
            }
        }
 
        mediaaritmetica = numerosaleatorios[0];
 
        for( i=1; i<30; i++){
            mediaaritmetica = mediaaritmetica + numerosaleatorios[i];
        }
 
        mediaaritmetica = mediaaritmetica / 30;
 
        function obtenerMediaValores(arr) {
            // sumamos los numeros
            const porcentaje=arr.reduce(
                (acum, el) => {
                    el in acum ? acum[el]++ : acum[el]=1;
                    return acum;
                }, {}
            );
            // calculamos la media de cada uno de ellos
            for (let i=0; i<Math.max(arr); i++) {
                porcentaje[i]=porcentaje[i]*100/arr.length || 0;
            }
            return porcentaje;
        }
 
        document.write("Numeros aleatorios: "+numerosaleatorios+"</br>");
        document.write("Numero mas alto: "+alto+"</br>");
        document.write("Numero mas bajo: "+bajo+"</br>");
        document.write("Media aritmetica: "+mediaaritmetica+"</br>");
        document.write("Moda: "+masRepetido(numerosaleatorios)[0]+"</br>");
        document.write("Mediana: "+mediana(numerosaleatorios)+"</br>");
 
        const porcentaje=obtenerMediaValores(numerosaleatorios);
        Object.keys(porcentaje).forEach(el => {
            document.write(el+" - "+porcentaje[el]+"<br>");
        })
 
    </script>
</body>
</html>
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
sin imagen de perfil
Val: 41
Ha aumentado su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Generar 30 números entre el 1 y el 99 y dar como resultado

Publicado por Manu (11 intervenciones) el 29/03/2021 18:42:13
De esta forma salen las veces que se repiten todos los números del (1 al 99).
Lo que nos pide el ejercicio es contar las veces del 1 al 10 y sacar su porcentaje.
Imagino que el porcentaje es el número de veces que se repite entre el total del Array.
Otra duda que te comentaba era meterlos en una tabla de la siguiente manera:

60603d6888140-Captura-de-pantalla-2021-03-28-102428

Según la imagen también tendrían que salir los números que no se repiten y poner un 0 en su lugar. Y en la otra tabla su porcentaje.

Gracias.
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
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Generar 30 números entre el 1 y el 99 y dar como resultado

Publicado por xve (2100 intervenciones) el 30/03/2021 10:44:45
Hola Manu, haber si ahora te sirve:

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
<html>
<head>
    <style>
        body{font-family:monospace;
            color:greenyellow;
            background-color: black;}
    </style>
</head>
<body>
    <script>
 
        numerosaleatorios = Array();
 
        function random(min, max){
            return Math.floor(Math.random() * (max - min)) + min;
        }
 
        function raiz(x, n) {
            return Math.exp(Math.log(x) / n);
        }
 
        const masRepetido = ar => ar.reduce((acum, el, i, ar) => {
                const count=ar.filter(e => e==el).length;
                return count > acum[1] ? [el, count] : acum;
            }, ["", 0]
        )
 
        function mediana(arr) {
            arr.sort((a,b) => a-b);
            const l=arr.length;
            return l%2==0
                ? arr.slice(l/2-1, l/2+1).reduce((a,b) => a+b)/2
                : arr.slice((l/2), l/2+1)[0];
        }
 
        for(i=0; i<30; i++){
            numerosaleatorios[i]=random(1, 99);
        }
 
        alto=0;
        bajo=100;
 
        for( i=0; i<30; i++){
            if(alto<numerosaleatorios[i]){
                alto = numerosaleatorios[i];
            }
            if(bajo>numerosaleatorios[i]){
                bajo = numerosaleatorios[i];
            }
        }
 
        mediaaritmetica = numerosaleatorios[0];
 
        for( i=1; i<30; i++){
            mediaaritmetica = mediaaritmetica + numerosaleatorios[i];
        }
 
        mediaaritmetica = mediaaritmetica / 30;
 
        function obtenerMediaValores(arr) {
            // sumamos los numeros
            const porcentaje=arr.reduce(
                (acum, el) => {
                    el in acum ? acum[el]++ : acum[el]=1;
                    return acum;
                }, {}
            );
            // calculamos la media de cada uno de ellos
            for (let i=0; i<Math.max(...arr); i++) {
                porcentaje[i]=porcentaje[i]*100/arr.length || 0;
            }
            return porcentaje;
        }
 
        document.write("Numeros aleatorios: "+numerosaleatorios+"</br>");
        document.write("Numero mas alto: "+alto+"</br>");
        document.write("Numero mas bajo: "+bajo+"</br>");
        document.write("Media aritmetica: "+mediaaritmetica+"</br>");
        document.write("Moda: "+masRepetido(numerosaleatorios)[0]+"</br>");
        document.write("Mediana: "+mediana(numerosaleatorios)+"</br>");
 
        const porcentaje=obtenerMediaValores(numerosaleatorios);
        for (let i=1; i<11; i++) {
            document.write(i+" - "+porcentaje[i]+"<br>");
        }
 
    </script>
</body>
</html>
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