Actualizado en septiembre de 2026. Se corrigió el método de la división, que sumaba en lugar de dividir.
En este ejercicio escribirás cuatro métodos en Java que reciben dos números y retornan un resultado, los llamarás desde main y comprobarás la salida.
Enunciado del ejercicio
Escribir en Java cuatro métodos que reciban como argumento dos números y que cada método calcule la suma, la resta, la multiplicación y la división y retornen sus resultados.
Cómo se resuelve
La solución usa una sola clase, OperacionesAritmeticas, con cuatro métodos que reciben dos números enteros como parámetros y retornan el resultado de su operación con return.
Un quinto método, imprimirResultados, recibe los resultados y los muestra en pantalla, pero no devuelve nada: por eso se declara void.
El método main pide los dos números por teclado, crea un objeto de la clase, llama a los métodos y guarda en variables lo que cada uno retorna.
Definición
Método que retorna un valor: declara el tipo de dato que devuelve, por ejemplo int o double, y lo entrega con return. Método void: hace su trabajo, pero no devuelve nada.
Código completo
Este es el programa completo. Lo compilamos y lo ejecutamos con Java 25 y Java 26 para comprobar cada resultado.
import java.util.Scanner;
public class OperacionesAritmeticas {
// Recibe dos enteros y retorna su suma
public int sumar(int numero1, int numero2) {
int suma = numero1 + numero2;
return suma;
}
// Recibe dos enteros y retorna su resta
public int restar(int numero1, int numero2) {
int resta = numero1 - numero2;
return resta;
}
// Recibe dos enteros y retorna su multiplicación
public int multiplicar(int numero1, int numero2) {
int multiplicacion = numero1 * numero2;
return multiplicacion;
}
// Recibe dos enteros y retorna su división con decimales
public double dividir(int numero1, int numero2) {
double division = (double) numero1 / numero2;
return division;
}
// Recibe los resultados y los muestra: no retorna nada (void)
public void imprimirResultados(int suma, int resta, int multiplicacion) {
System.out.println("La suma es: " + suma);
System.out.println("La resta es: " + resta);
System.out.println("La multiplicación es: " + multiplicacion);
}
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
System.out.print("Ingrese el número 1: ");
int n1 = teclado.nextInt();
System.out.print("Ingrese el número 2: ");
int n2 = teclado.nextInt();
OperacionesAritmeticas operaciones = new OperacionesAritmeticas();
int suma = operaciones.sumar(n1, n2);
int resta = operaciones.restar(n1, n2);
int multiplicacion = operaciones.multiplicar(n1, n2);
operaciones.imprimirResultados(suma, resta, multiplicacion);
if (n2 != 0) {
double division = operaciones.dividir(n1, n2);
System.out.println("La división es: " + division);
} else {
System.out.println("La división no se puede hacer: el número 2 es cero.");
}
}
}Qué hace cada método
Los cuatro métodos de cálculo reciben dos números y retornan un resultado:
| Método | Recibe | Retorna |
|---|---|---|
sumar | Dos int | int: la suma |
restar | Dos int | int: la resta |
multiplicar | Dos int | int: la multiplicación |
dividir | Dos int | double: la división |
El quinto método, imprimirResultados, recibe tres int y no retorna nada: se declara void.
Cómo se llaman desde main
Los métodos no son static, así que main los usa a través de un objeto de la clase:
- Se crea el objeto con
new:OperacionesAritmeticas operaciones = new OperacionesAritmeticas(); - Se llama a cada método con un punto y se le pasan los dos números:
operaciones.sumar(n1, n2). - Lo que el método retorna se guarda en una variable del mismo tipo:
int suma = operaciones.sumar(n1, n2);. Para la división, la variable esdouble.
imprimirResultados no retorna nada, así que se llama sin guardar su resultado en ninguna variable.
Ejemplo de ejecución
Si escribes 7 y 2, el programa muestra:
Ingrese el número 1: 7
Ingrese el número 2: 2
La suma es: 9
La resta es: 5
La multiplicación es: 14
La división es: 3.5Con otros números:
| Números | Suma, resta y multiplicación | División |
|---|---|---|
| 10 y 2 | 12, 8 y 20 | 5.0 |
| 7 y 0 | 7, 7 y 0 | Muestra un aviso |
Con 7 y 0, en lugar de dividir, el programa escribe: «La división no se puede hacer: el número 2 es cero.»
Por qué la división retorna double
Si dividir retornara int, 7 entre 2 daría 3: en Java, la división entre dos enteros descarta la parte decimal.
Por eso el método retorna double y convierte el primer número antes de dividir: (double) numero1 / numero2 da 3.5.
Con enteros, dividir entre cero detiene el programa con un error (ArithmeticException); con double, el resultado sería Infinity. Por eso main comprueba antes que el segundo número no sea cero.
Qué estaba mal en la versión anterior
Error frecuente
Copiar el cuerpo de un método para crear el siguiente y olvidar cambiar la operación.
La versión anterior de este ejercicio tenía ese error en el método de la división: int dividir = numero1 + numero2;. El programa compilaba, pero sumaba en lugar de dividir.
Se detecta probando con números cuyo resultado ya conoces: 30 entre 15 debería dar 2, y aquel programa mostraba 45.
El mismo ejercicio en Python
Si también estudias Python, en este ejercicio de definiciones en Python se resuelven las mismas operaciones con funciones que usan return.
Fuentes
- Oracle, The Java Tutorials: Returning a Value from a Method (en inglés).
- Oracle, The Java Language Specification, Java SE 25: §15.17.2, operador de división (en inglés).
Otros ejercicios
- Crear Menu A, B, C o a, b, c en – Java
- Ejercicio resuelto: métodos que reciben y retornan valores en Java
- TABLAS DE MULTIPLICAR INGRESANDO UN RANGO – JAVA
- Como Hacer un Cuadrado con Asteriscos Solo Bordes – Java
- Pirámide Asteriscos en Array Bidimensional – Java
- Recorrido Matriz Derecha a Izquierda y de Arriba Abajo – Java
- Array Bidimensional Java – Imprimir Figura Cruz
- Recorrer Array de Derecha a Izquierda – JAVA
- Mayor y menor elemento de un arreglo en JAVA
- Llenar Array con serie en Java
- Determine si un número es par o impar en java
- Serie Fibonacci 0,1,1,2,3…- JAVA
- Calcular el cuadrado de un rango de numeros – JAVA
- Figura Mayor y Menor que – JAVA
- Series números java -1, 1, -1, 1, -1, 1, -1…
- Serie números en Java – 1,20,3,40,5,60,7,80…
- Como hacer un cuadrado con asteriscos en java
- Ingresar dos números e imprimir el rango – Java
- Determine año Bisiesto – Ejercicios Java
- ORDENAR NÚMEROS DE FORMA ASCENDENTE Y DESCENDENTE – JAVA
- Ejercicio Java – Determine la nota definitiva de un estudiante
