Java Ejercicios Básicos de Arrays Resueltos 1

Relación Nº 1: Ejercicios 1 y 2

1. Calcular la media de una serie de números que se leen por teclado.

Programa Java que lea por teclado 10 números enteros y los guarde en un array. A continuación calcula y muestra por separado la media de los valores positivos y la de los valores negativos.

/*
 * Programa que lea por teclado 10 números enteros
 * y los guarde en un array.
 * A continuación calcula y muestra la media de los
 * valores positivos y la
 de los valores negativos.
 */

import java.util.*;
public class Media1 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int i;
        int pos = 0, neg = 0; //contadores de los números positivos y negativos
        int[] numeros = new int[10]; //array que contendrá los números leídos por teclado
        double sumaPos = 0, sumaNeg = 0; //acumuladores para las sumas de positivos y negativos
        
        //lectura de datos y llenar el array
        System.out.println("Lectura de los elementos del array: ");
        for (i = 0; i < 10; i++) {
            System.out.print("numeros[" + i + "]= ");
            numeros[i]=sc.nextInt();
        }

        //recorrer el array para sumar por separado los números positivos 
         // y los negativos 
        for (i = 0; i < 10; i++) {
            if (numeros[i] > 0){ //sumar positivos
                sumaPos += numeros[i];
                pos++;
            } else if (numeros[i] < 0){ //sumar negativos
                sumaNeg += numeros[i];
                neg++;
            }
        }

        //Calcular y mostrar las medias
        if (pos != 0) {
            System.out.println("Media de los valores positivos: " + sumaPos / pos);
        } else {
            System.out.println("No ha introducido numeros positivos");
        }
        if (neg != 0) {
            System.out.println("Media de los valores negativos: " + sumaNeg / neg);
        } else {
            System.out.println("No ha introducido numeros negativos");
        }
    }
}



2. Programa Java que lea 10 números enteros por teclado y los guarde en un array. Calcula y muestra la media de los números que estén en las posiciones pares del array.

Considera la primera posición del array (posición 0) como par.

/*
 * Leer 10 números enteros y guardarlos
 * en un array. Calcular la media de los
 * que estén en las posiciones pares.
 */
import java.util.*;

public class Arrays1_2 {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int i;
        int[] numeros = new int[10];
        double media = 0;

        //lectura de datos y llenar el array
        System.out.println("Lectura de los elementos del array: ");
        for (i = 0; i < 10; i++) {
            System.out.print("numeros[" + i + "]= ");
            numeros[i] = sc.nextInt();
        }
        
        //Recorrer el array y calcular la media
        for (i = 0; i < 10; i++) {
            if (i % 2 == 0){ //si la posición actual es par
                media = media + numeros[i]; //se suma el valor de esa posición
            }
        }
        //Calcular y mostrar la media
        System.out.println("Media de los valores que se encuentran en posiciones pares: "+ media/5);
    }
}

Siguiente relación de ejercicios básicos de arrays


47 comentarios:

  1. muy buenos tus programas.... gracias :)

    ResponderEliminar
    Respuestas
    1. En el ejercicio Nº 1 se presenta un error en el calcula de la media ya que "int pos = 0, neg = 0; //contadores de los números positivos y negativos" la variable estan inicializadas a cero(0)y al pasar por el for solo se incrementan hasta (9) dando un error en la media ( sumaPos / pos), o sea para 10 elementos no divide por (10) sino que divide por ( 9).

      Eliminar
    2. La variable del for empieza en 0. Desde 0 hasta 9 son 10 valores.

      Eliminar
  2. como hago los programas creando clases es decir que en ua clase los sume y en otra saque las medias..??

    ResponderEliminar
    Respuestas
    1. Hola Gabriela, estos ejercicios son básicos y están dirigidos a todos aquellos que están empezando a programar y aún no conocen la programación orientada a objetos. Por eso están resueltos utilizando una sola clase principal. Pronto empezaré a subir ejercicios basicos utilizando clases pero como anticipo podríamos resolver el primer ejercicio creando una clase ArrayEnteros que contenga los métodos para leer el array y calcular las medias. El programa podría quedar así:
      //Clase principal
      public class Main {
      public static void main(String[] args) {

      double mediaPos, mediaNeg;

      ArrayEnteros numeros = new ArrayEnteros();
      //lectura de datos y llenar el array
      numeros.leerElementos();
      //media de los positivos
      mediaPos = numeros.mediaPositivos();
      //media de los negativos
      mediaNeg = numeros.mediaNegativos();
      //Calcular y mostrar las medias
      System.out.println("Media de los valores positivos: " + mediaPos);
      System.out.println("Media de los valores negativos: " + mediaNeg);
      }
      }

      //Clase ArrayEnteros
      public class ArrayEnteros {
      private int [] array;
      private int N = 10;
      public ArrayEnteros(){
      array = new int[N];
      }
      //método para lectura del array
      public void leerElementos(){
      Scanner sc = new Scanner(System.in);
      System.out.println("Lectura de los elementos del array: ");
      for (int i = 0; i < N; i++) {
      System.out.print("elemento[" + i + "]= ");
      array[i]=sc.nextInt();
      }
      }
      //método para recorrer el array y calcular la media de los números positivos
      public double mediaPositivos(){
      double suma = 0;
      int cont = 0;
      for (int i = 0; i < N; i++) {
      if (array[i] > 0){ //sumar positivos
      suma += array[i];
      cont++;
      }
      }
      return suma/cont;
      }
      //método para recorrer el array y calcular la media de los números negativos
      public double mediaNegativos(){
      double suma = 0;
      int cont = 0;
      for (int i = 0; i < N; i++) {
      if (array[i] < 0){ //sumar negativos
      suma += array[i];
      cont++;
      }
      }
      return suma/cont;
      }
      }

      El programa se puede mejorar añadiendo la comprobación de si hay números positivos o negativos y evitar errores a la hora de calcular las medias.

      Eliminar
    2. estas tareas son muy útiles,
      si, seria genial, hacer tarea usando clases y métodos, alojados en otras clases,

      Eliminar
    3. hola me ayudan con esto
      Hacer un programa que lea 10 valores enteros en un array desde el teclado y calcule y muestre: la suma, el valor medio, el mayor y el menor.
      EXPLICACION DEL PROGRAMA: El programa lee 10 valores desde teclado y calcula la suma de estos, el valor medio, el mayor y el menor, para esto se utiliza un ciclo para llenar una arreglo previamente declarado, posteriormente mediante comparaciones simples y luego de declarar 2 variables que serán el mayor y el menor y utilizando un ciclo for, se halla el mayor y menor valores.

      Eliminar
  3. heeey holas so patrick me podrian auyudar en un ejercisio "dada una matriz cuadrada retornar otra matriz pero con los mismos datos pero en la priemera fila que me salga los numeros mayores "

    ResponderEliminar
  4. Programa que lee dos vectores de 10 elementos y los elementos que estan en el primer vector y no estan en el segundo en java ayudeme

    ResponderEliminar
  5. ejercicios de java ayudeme a programar

    ResponderEliminar
  6. nesesito codificar un programa en el me toca ller leer un arreglo de n componenetes y encontrar cuantos y cuales de sus elemnetos son primos
    arreglo(n)=2,8,9,11,7,0,4,3
    primos= divisibles ´por la unidad
    divisibles por si mismo
    y las respuestas tiene que ser primos(k)=2,3,11,7
    cuantos=4
    por favor si alguien m puede ayudar
    son aprendis favor dejarlo en terminos faciles

    ResponderEliminar
  7. necesito codificar todas las operaciones que hace un banco

    ResponderEliminar
  8. buenas noches alguien me puede colaborar con el ste ejercicio ?

    1.Una tienda necesita una aplicación que almacene las ventas de los 12 meses del año, se debe poder ingresar el nombre del mes y el total de ventas del mes, al final debe poder calcular el promedio de ventas y el porcentaje de las mismas teniendo en cuenta que el año pasado las ventas anuales sumaron 6,000,000.oo (realice la aplicación utilizando arreglos)

    2.De un grupo desconocido de estudiantes se necesita determinar: cuantos son mayores de edad, cuantos menores y promedio de edad de los mayores de edad y menores de edad, además se necesita establecer cual es el estudiante de mas edad entre los mayores de edad. (Realice la aplicación utilizando arreglos)

    ResponderEliminar
  9. alguien me ayuda tengo un ejercicio que no me sale

    Crear un array A que almacene n datos (ingresados por el usuarios)y que pase los numeros paresa otro arrey B y los impares a un tercer array C, kuego imprimir los tres arrys.

    Porfavor ayuda

    ResponderEliminar
  10. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  11. Hello, I need help as soon as possible, for example: how I can to add elements to a list? How is it?
    The problem is below:

    Exercice:
    Sistema de cadena de tiendas.

    Se necesita realizar un sistema para el control de todos los establecimientos de una cadena de tiendas, se conoce que los establecimientos pueden ser movibles (tráileres) o tiendas. De los establecimientos en general se registra el código del establecimiento, la dirección, el director, la cantidad de trabajadores y la cantidad de productos a la venta. De las tiendas se conoce además su nombre, cantidad de departamentos, cantidad de cajas registradoras y si tienen cafetería incluida. Por otro lado de los tráileres se conoce además la si tiene nevera, si tiene contrato de helados con Nestlé, el nombre de la tienda a la que pertenece y fecha en que se puso en su posición actual. De las direcciones se registra el 21.
    reparto, la calle y el número. De los directores de los establecimientos se conoce el nombre, el sexo y la experiencia en el cargo. Se tiene que el sistema debe tener una lista de establecimientos.
    El sistema debe permitir las siguientes funcionalidades:

    a) Implemente las funcionalidades necesaria para insertar establecimientos al sistema y eliminarlos a partir de su código, además se debe permitir listar los datos de las tiendas o tráileres de manera independiente.

    ResponderEliminar
  12. como resolver el programa que lea 10 numeros por teclado y determine cuales son pares, que los imprima todos los numeros leidos y pares

    ResponderEliminar
  13. HOLAA qyuda porfaaaaa soy nuevito en eso del programacion me ayudarian con esto porfavor
    Escribe un programa que pida 15 números enteros y los muestre en orden inverso (del último leído hasta el primero). (Tienen que capturar el dato numérico desde el teclado y en caso de que introduzca un valor que no es un número avisarle al usuario …

    ResponderEliminar
  14. Me han servido de mucho! Muchas gracias!

    ResponderEliminar
    Respuestas
    1. Me alegro. Espero poder subir pronto más ejercicios de arrays.

      Eliminar
  15. me funco perfestamnt man f¡grasias man haora staria revueno k suveras + pogramas man

    ResponderEliminar
  16. hola necesito un programa que me permita ingresar 10 enteros me muestre cual es el mayor y el menor y me muestre también todos los números ingresados muchas gracias a los que me puedan ayudar

    ResponderEliminar
  17. nesecito su ayuda !! 1,_definir una clase llamada vector3D que permita manipular vectores de tres componentes (tipo float);la clase debe contener al menos un constructor que permita leer los valores de los componetes, desde el teclado,un constructor que permita inicializar con cero los valores de los componentes ,un metodo imprime vector que permita mostrar en pantalla los valores de los componentes,un metodo llamado producto escalar que devuelva el producto de dos vectores ,llamdado producto vectorial que permita devolver el producto vectorial en dos vectores.....ESCALAR V.1 (5,-3,-7)V.2 (5,-2,-4)V.1*V2=(5*8+-3*-2+-7*-4)==40+6+28=74

    ResponderEliminar
  18. Hola me gustan tus programas pero nesecito ayuda para resolver este ejercicio que me dejaron , es muy parecido al que tu tienes pero en este caso no se cuantos datos van a ingresar ya que es con n datos; te lo agradeceria mucho si me ayudaras:
    calcular la media de las notas introducidas por el teclado con un dialogo interactivo semejante al siguiente:

    ¿cuantas notas? 20
    nota 1: 7.5
    nota 2:8
    nota 3: 6.4
    ....
    nota 20:9.5
    media de estas:...

    ResponderEliminar
    Respuestas
    1. Hola Janette, como dices, el programa que tienes que hacer es muy parecido, tan solo tienes que leer por teclado el número de notas y lo guardas en una variable N y hacer el for desde 1 hasta N en lugar de hacerlo desde 1 hasta 10

      Eliminar
    2. muchas gracias siii eso si ya lo sabia solo que no sabia como declarar la variable en arreglos pero despues de ver muchos ejemplos pude resolverlo.
      y me parece una gran ayuda tu blog sigue haciendo mas ya que nos ayudas bastante!!

      Eliminar
  19. Por favor me pueden ayudar con un programa qe pida cualqier cantidad de nombres y los imprima de manera ASC y Dec con arreglos se los agradeceria mucho.... :/

    ResponderEliminar
  20. Respuestas
    1. Gracias Guadalupe, espero que sigas visitando el blog y que te siga siendo de ayuda

      Eliminar
  21. ayuda con problema :
    Crear un array de 10 posiciones de numeros con valores pedidos por tecla.
    Muestra por consola el indice y el valor al que corresponde.
    Hacer 2 metodos uno para llenar valores y otro para mostrar.

    ResponderEliminar
  22. Ayuda con problema por favor
    Hacer un programa que pida y llene desde el teclado 7 números enteros (con ciclo) y que al final despliegue la suma total, pero de solamente los números pares introducidos en el arreglo.

    ResponderEliminar
  23. hola nesesito un programa como el primero pero en c++ para el compilador dev c++ porfa tengo una idea de como va pero si me pueden corroborar se los agradeceria

    ResponderEliminar
  24. necesito un programa orientada a objeto que me calcule media mediana rango moda varianza desviazion tipica y coeficiente de variacion

    ResponderEliminar

  25. Hola ayundeme porfavor necesito un programa en java que haga esto
    El dueño de una cadena de tiendas de artículos deportivos desea controlar
    sus ventas por medio de una computadora.los datos de entrada son:
    · El numero de la tienda (1 a 50)
    · Un numero que indica el deporte del articulo (1 a 20)

    · El costo del articulo 0
    Hacer un programa que imprima al final:
    · Las ventas totales en el día para cada tienda
    · Las ventas totales para cada uno de los deportes}

    ResponderEliminar
  26. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  27. hola , me gustaria saber si no tienes un ejercicio de arreglos tridimencionales he estado buscando y solo me salen bidimencionales , este blog me parecio interesante espero una pronta respuesta gracias

    ResponderEliminar
  28. mi correo es> wv.villarreal@gmail.com o si no me lo dejas por aca. mil gracias

    ResponderEliminar
  29. disculpa, como podria hacer un arreglo de 35, donde me almacene solo los numeros 3, 5 ,7 y 11?
    gracias! :)

    ResponderEliminar
  30. hola seria tan amable de ayudarme es que tengo que hacer un ejercicios orientada a objetos en javascriptUna empresa inmobiliaria, requiere un software que le ayude a controlar sus ventas, esta empresa se dedica a comercializar propiedades de tipo: apartamento, casa o inmueble comercial. El software que requiere esta organización debe proporcionar la siguiente información:

    1. Valor total de los inmuebles que tiene la compañía, esto es la sumatoria del valor de todas las propiedades.

    2. La empresa requiere saber cuántos inmuebles son rurales y cuántos son urbanos.

    3. Promedio del precio de los inmuebles rurales.

    4. De toda la compañía: ¿Cuáles inmuebles cuestan más, los urbanos o los rurales?

    5. Comparar el promedio de los precios de los inmuebles según el tipo de propiedad: apartamento, casa o inmueble comercial, es decir, calcular el promedio de precios cada uno y mostrar descendentemente. Ejemplo:

    total sumatoria precio casas : 100
    total sumatoria precio apartamentos : 500
    total sumatoria precio inmueble comercial : 50

    Ordenados ascendemente según el total del precio, el sistema debería mostrar:

    1. Inmueble comercial.
    2. Casas
    3. Apartamentos.

    6. Calcular el valor neto de todas las propiedades, menos impuestos; es decir, debe mostrar el valor total de las propiedades descontando el valor de los impuestos de cada una, en este caso, el valor del impuesto es el IVA del 16%.

    7. Calcular la diferencia entre el inmueble más barato y el más costoso.

    ResponderEliminar
  31. Desarrollar un programa en Java que permita clasificar el tipo de temperatura de un horno microondas, la temperatura se tiene que ingresar por teclado. El horno microondas puede variar desde 0 hasta 100 grados centígrados y se clasifica de acuerdo a lo siguiente: (3ptos)
    CLASIFICACION RANGO
    MUY ALTA
    90oC y 100oC
    ALTA
    80oC y 89oC
    NORMAL
    40oC y 79oC
    BAJA
    0oC y 39oC

    ResponderEliminar
  32. Ayuda , si alguien me puede dar la programacion de este ejercicio en java en el programa netbeans estaria agradecido y si hya un video donde me explique como lo hizo estaria agradecido sino con solo la programacioon me basta :Crear un programa que cargue una matriz bidimensional de 10 por 10 y obtenga la suma de todos los números primos cargados en la matriz, cuantos números primos hay, cuantos primos hay en cada fila y cada columna y además el promedio de los números primos encontrados, el primo mayor y el primo menor de toda la matriz

    ResponderEliminar
  33. ayuda necesito la proramacion en java en netbeans de : Las notas de un colegio tienen una matriz de 30 x 5elementos(30 es el numero de alumnos ; 5 es el numero de notas). Cada alumno tiene como minimo 2 asignaturas y maximo 5 asignatuas, aunque los alumnos no necesariamente todos tienen que tener las 5 materias.Se desea cargar la matriz , teniendo en cuenta lo antes mencionado y se desea listar las notas de cada alumno y su media(promedio) . Nota:Tener en cuenta , como determinar cuando un alumno no tiene materia , es decir cuando la posicion de la matriz no tiene nota.

    ResponderEliminar
  34. Necesito ayuda plis
    15 usuarios van a votar por alguno de los colores:rojo,azul y verde.Registrar el voto de cada uno de ellos y al final decir cuantos votos obtuvo cada color.

    ResponderEliminar
  35. CREAR UN PROGRAMA QUE DEFINA 5 ARREGLOS PARALELOS QUE PERMITEN GUARDAR LOS SIGUIENTES DATOS; DOCUMENTO,NOMBRE,NUMERO DE HORAS TRABAJADAS,VALOR CADA HORA,TOTAL A PAGAR
    listar en orden ascendente y desendente
    el programa debe realizar el calculo de el total a pagar numero de horas * valor de horas

    gracias

    ResponderEliminar
  36. Diseñar el tipo de datos abstracto llamado arreglo que incorpore un arreglo de n elementos, así como sus operaciones básicas: insertar, eliminar, buscar.

    Eliminación: Para eliminar un elemento X de un arreglo unidimensional V desordenado, se debe verificar que X se encuentre en el arreglo. Si se cumple esta condición, entonces se procederá a recorrer todos los elementos que están a su derecha una posición a la izquierda, disminuyendo en uno el número de componentes del arreglo.

    ResponderEliminar