metodos - ejercicio java calculadora
Programa de calculadora simple en Java. Número de enteros leídos y promedio (4)
Tengo una tarea que me obliga a imprimir las siguientes cantidades:
Necesito escribir un programa Java que pueda calcular: 1. el número de enteros leídos en 2. el valor promedio, que no tiene por qué ser un número entero.
Mi resultado final debería verse así:
$ javac SimpleCalc
$ java SimpleCalc 3 4 6 8 1
5
8
4.4
7
Sé que necesito usar una clase de escáner para leer y, a medida que el usuario ingresa, no sé cómo hacer que muestre un recuento. Creo que puedo resolver esto, puedo calcular el promedio sumando los números y dividir el total por el número de enteros ingresados.
Sin embargo, es la primera vez que escribo un programa, y me estoy metiendo de cabeza. Cualquier ayuda sería apreciada, incluso aceptaría un seudocódigo si me ayuda a encontrar la manera de abordarlo.
Aquí se supone que debes usar los argumentos de la función main
:
public class PrintArgs {
public static void main (String[] args) {
for (int i = 0; i<args.length; ++i) {
System.out.println("Args " + (i + 1) + " is " + args[i]);
}
}
}
Guarde esta clase en un archivo llamado PrintArgs.java
y PrintArgs.java
usando javac
:
$ javac PrintArgs.java
Ejecute el archivo de clase generado usando java
:
$ java PrintArgs hello world
Args 1 is hello
Args 2 is world
$ java PrintArgs 3 4 6 8 1
Args 1 is 3
Args 2 is 4
Args 3 is 6
Args 4 is 8
Args 5 is 1
Ahora sabes cómo leer la entrada del usuario. Para convertir una String
a int
, use el método parseInt
de la clase Integer
:
int i = Integer.parseInt("980");
System.out.println(100 + i); // => 1080
¡Ahora sabes cómo escribir tu programa de calculadora!
Como recuerdo, todos los argumentos se pasan y se almacenan en el programa en la variable que su función main
expone:
public class Echo
{
public static void main (String[] args) {
for (String s: args) {
System.out.println(s);
}
}
}
Entonces todo está en tu string[] args
. Esto es una matriz (la primera es la ruta y el archivo de tu programa), tiene algo así como el método "Count ()" (no lo recuerdas), luego tienes que analizar los números usando algún wrapper, como Integer.Parse(args[2])
.
http://download.oracle.com/javase/tutorial/essential/environment/cmdLineArgs.html
No, no necesitas un escáner para resolver esto. Lo que necesitas es:
- Comprensión del ''método principal''
- Comprensión de array y ''varargs''
- Comprender el análisis de una cadena en otro objeto como Doble o Entero
- Simple matemática (creo que usted posee esto)
Si esto es tarea, su profesor le pedirá que lea lo que mencioné anteriormente.
public static void main(String args[])
{
// 1. the number of integers read in
int len = str.length
//2. the average value
int sum = 0;
int avg = 0;
for(int i = 0 ; i < len ; i++)
{
sum = sum + str[i];
}
avg = sum/len ;
}