Autor Tema: java programa captura datos calcula estadísticas media moda desviación estándar  (Leído 22891 veces)

yosoyfm

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 3
    • Ver Perfil
Hola soy nuevo en esto y apenas estoy en cursos básicos de programación pero en la escuela  me piden hacer un programa muy complejo para mí.

¿Me podrían ayudar?
 
Se tiene que hacer:
 
Capturar edades:
solicitar al usuario la cantidad de edades a capturar.
capturar la cantidad de edades solicitadas (enteros)

Calcular:

La media
La moda
Desviación estándar

Gracias por su apoyo y ayuda
« Última modificación: 25 de Septiembre 2016, 17:46 por Ogramar »

DRANXZ88

  • Avanzado
  • ****
  • Mensajes: 356
    • Ver Perfil
Re:java captura de edades solicitar cantidad de edades
« Respuesta #1 en: 22 de Septiembre 2016, 21:50 »
Hola acá te envió un código para poder guiarte si por ahí te sirve.
Código: [Seleccionar]
package proyectoejemplo;

import java.util.Scanner;

public class ProyectoEjemplo {

    public static void main(String[] args) {

        int contador = 0;
        double suma = 0.0;
        int maximaVecesQueSeRepite = 0;
        int moda = 0;
        double varianza = 0.0;
        double desviacion = 0.0;
        Scanner ingresar = new Scanner(System.in);
        System.out.print("Ingrese la cantidad de edades a registrar:");

        contador = ingresar.nextInt();
        int[] edad = new int[contador];
        //Codigo para sacar la media
        for (int i = 0; i < contador; i++) {
            System.out.println("Ingrese edad: ");
            edad[i] = ingresar.nextInt();
            suma = suma + edad[i];
        }
        double media = suma / contador;
        //Codigo para sacar la moda.
        for (int i = 0; i < edad.length; i++) {
            int vecesQueSeRepite = 0;
            for (int j = 0; j < edad.length; j++) {
                if (edad[i] == edad[j]) {
                    vecesQueSeRepite++;
                }
            }
            if (vecesQueSeRepite > maximaVecesQueSeRepite) {
                moda = edad[i];
            }
        }
        //Codigo para sacar la desviacion estandar
        for (int i = 0; i < edad.length; i++) {
            double rango;
            rango = Math.pow(edad[i] - media, 2f);
            varianza = varianza + rango;
        }
        varianza = varianza / 10f;//suma de diferencias sobre "n"
        //teniendo ya la varinza solo debemos sacarle raiz cuadrada
        //tendremos la desviación estandar
        desviacion = Math.sqrt(varianza);

        System.out.println("La media es " + media);
        System.out.println("La moda es " + moda);
        System.out.println("Desviacion estandar: " + desviacion);
    }

}

DRANXZ88

  • Avanzado
  • ****
  • Mensajes: 356
    • Ver Perfil
Re:java captura de edades solicitar cantidad de edades
« Respuesta #2 en: 23 de Septiembre 2016, 00:51 »
Hola he cometido un error ahora revise de nuevo mi código el error esta donde dice.
Código: [Seleccionar]
varianza = varianza / 10f;Tiene que ser.
Código: [Seleccionar]
double n = edad.length;
        varianza = varianza / n;

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".