Foros del Web » Programación para mayores de 30 ;) » Java »

Programa básico en Java.

Estas en el tema de Programa básico en Java. en el foro de Java en Foros del Web. Hola. Estoy empezando en Java, he estado leyendo algunos manuales pero batallo algo, quisiera hacer un programa que calcule el promedio de una cantidad 'x' ...
  #1 (permalink)  
Antiguo 27/08/2009, 00:29
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Programa básico en Java.

Hola.

Estoy empezando en Java, he estado leyendo algunos manuales pero batallo algo, quisiera hacer un programa que calcule el promedio de una cantidad 'x' de números, y muestre ¿cuál es el número mayor y el menor? sería de gran ayuda si me explicaran en que consiste cada paso del programa, para así ir dándome una idea de como es la sintaxis en java.

Desde ya, muchísimas gracias.
  #2 (permalink)  
Antiguo 27/08/2009, 09:29
 
Fecha de Ingreso: mayo-2009
Mensajes: 33
Antigüedad: 15 años
Puntos: 0
Respuesta: Programa básico en Java.

Buenas, una pregunta: todos los números donde se encuentran almacenados, en un array, en una lista, o donde, es para recorrer todos los números.
  #3 (permalink)  
Antiguo 27/08/2009, 09:31
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Programa básico en Java.

En un array, pero me pregunto si existe la posibilidad de que un usuario los introduzca y los guarde en el array, es decir, no declararlos como variables fijas, ¿cómo sería eso?
  #4 (permalink)  
Antiguo 27/08/2009, 09:49
 
Fecha de Ingreso: mayo-2009
Mensajes: 33
Antigüedad: 15 años
Puntos: 0
Respuesta: Programa básico en Java.

Buenas, para leer un dato por teclado necesitas las siguientes lineas d ecódigo:

int aux;
String palabra;
try
{
// Definir un flujo de caracteres de entrada: flujoE
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader flujoE = new BufferedReader(isr);
// Leer. La entrada finaliza al pulsar la tecla Entrar
palabra = flujoE.readLine();
}
catch(IOException e)
{
System.err.println("Error: " + e.getMessage());
}

Con esto almacena lo que has introducido en la variable palabra. Si lo que quiere es un array de entero, le hace un casting:

aux = Integer.parseInt(palabra);

Y ya ese valor lo almacena en el array. Espero haberte servido de ayuda.
  #5 (permalink)  
Antiguo 27/08/2009, 10:03
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Programa básico en Java.

Ah ya entiendo, y si declarara digamos un array con 5 numeros, algo así:

int num[] = {20,10,8,7,14};

¿Cuál sería el proceso a realizar para determinar cual es el número mayor y el menor de ese array?

Saludos y gracias por tu ayuda.
  #6 (permalink)  
Antiguo 27/08/2009, 10:14
 
Fecha de Ingreso: mayo-2009
Mensajes: 33
Antigüedad: 15 años
Puntos: 0
Respuesta: Programa básico en Java.

para recorrer el array se hace con un for:

int max;
int min;
double cuenta;
double promedio = 0.0;
max = num[0];
min = num[0];
cuenta = num[0];
for(int i=1; i < num.length; i++){
//el array empieza en 0 y terminamos en longitud-1, como el primer valor del
//array lo hemos usado por eso empezamos en i=1
cuenta = cuenta + num[i];
if(max<num[i]){
max = num[i];
}
else if(min>num[i]){
min = num[i];
}
}

promedio = cuenta / num.length;

Asi obtiene el maximo en max y y el minimo en min, en cuenta esta la suma de todos los valores y en promedio el valor medio. Tiene que tener cuidado que al dividir 2 numeros entero, el resultado es otro entero, aunque la division no sea entera, por eso debe dividir un decimal entre un entero (o por lo menos eso es lo que recuerdo :D).

Espero haberte ayudado.
  #7 (permalink)  
Antiguo 27/08/2009, 11:07
 
Fecha de Ingreso: junio-2009
Mensajes: 250
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Programa básico en Java.

Muchísimas gracias por tu ayuda, funciona perfecto, estudiaré más para resolver ese tipo de dudas.

Saludos.
  #8 (permalink)  
Antiguo 07/10/2009, 21:15
 
Fecha de Ingreso: octubre-2009
Mensajes: 1
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Programa básico en Java.

necesito el codigo fuente de un porgrama que se ingresen 10 numeros a un arreglo y que de ellos me imprima el mayor de los 10

POR FAVOR ES URGENTE
  #9 (permalink)  
Antiguo 08/10/2009, 02:04
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Programa básico en Java.

Basicamente definir un array de 10 elementos de clase int (eso deberias saber como es).
Usar un bufferedReader (ya sabes, tienes que buscar donde está y hacer un import) y ver en un manual que hay muchos por ahí como usarlo.
En el programa es necesario crear una instancia del BufferedReader.
hacer un bucle for con 10 elementos. for (int i=0,i<10,i++) {
System.out.println("Ingrese el número "+i);
int numero = br.ReadLine(); //br sería la hipotética instancia del buffered reader
array[i] = numero;
System.out.println("Ha ingresado el valor "+numero);
}
finalmente realizar la comparación, de esto te dejo un ejemplo.
http://lineadecodigo.com/2009/03/03/...y-su-posicion/

Finalmente, te dejo a ti la opción de controlar que lo que añadas sea un numero, fácil haciendo ...

boolean numeroIntroducido = false;
while (!numeroIntroducido) {
try {
int numero = br.ReadLine();
numeroIntroducido=true;
}
catch (Exception notNumberException) {
System.out.println("Error, no ha introducido un número, inténtelo de nuevo");
numero = br.ReadLine();
}
}

Última edición por Fuzzylog; 08/10/2009 a las 02:05 Razón: ...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 01:56.