EJERCICIOS PROPUESTO 1.
Escriba un programa donde se define una clase `Temperatura` con
dos métodos de acceso (`getFahrenheit` y `getCelsius`) y dos métodos de modificación
(`setFahrenheit` y `setCelsius`). La temperatura se mantiene internamente en grados
Fahrenheit. En el método `main`, se pide al usuario que introduzca una temperatura en grados
Fahrenheit, se establece esa temperatura en la clase `Temperatura` y luego se imprime la
temperatura equivalente en grados Celsius.
import [Link];
public class Temperatura {
// Atributo privado para almacenar la temperatura en grados Fahrenheit
private double fahrenheit;
// Constructor de la clase Temperatura
public Temperatura(double fahrenheit) {
[Link] = fahrenheit;
// Método para obtener la temperatura en grados Fahrenheit
public double getFahrenheit() {
return fahrenheit;
// Método para establecer la temperatura en grados Fahrenheit
public void setFahrenheit(double fahrenheit) {
[Link] = fahrenheit;
// Método para obtener la temperatura en grados Celsius
public double getCelsius() {
return (fahrenheit - 32) * 5 / 9;
}
// Método para establecer la temperatura en grados Celsius
public void setCelsius(double celsius) {
[Link] = celsius * 9 / 5 + 32;
public static void main(String[] args) {
// Crear un objeto Scanner para leer la entrada del usuario
Scanner scanner = new Scanner([Link]);
// Pedir al usuario que introduzca una temperatura en grados Fahrenheit
[Link]("Introduce la temperatura en grados Fahrenheit: ");
double tempFahrenheit = [Link]();
// Crear un objeto de la clase Temperatura con la temperatura en Fahrenheit
Temperatura temperatura = new Temperatura(tempFahrenheit);
// Obtener la temperatura en grados Celsius y mostrarla
double tempCelsius = [Link]();
[Link]("La temperatura equivalente en grados Celsius es: %.2f°C%n",
tempCelsius);
// Cerrar el scanner
[Link]();
2. Escribe un programa que calcule las ventas totales de entradas de un concierto. Hay tres
tipos de asientos: A, B y C. El programa acepta el número de entradas vendidas y el precio de
una entrada para cada uno de los tres tipos de asientos. Las ventas totales se calculan de la
siguiente manera: totalVentas = numberDeA_Asientos * pricePerA_Asiento +
numberDeB_Asientos * pricePerB_Asiento + numberDeC_Asientos * pricePerC_Asiento; Este
programa, se debe escribir utilizando solo una clase, la clase principal del programa.
import [Link];
public class VentasConcierto {
public static void main(String[] args) {
// Crear un objeto Scanner para leer la entrada del usuario
Scanner scanner = new Scanner([Link]);
// Pedir al usuario el número de entradas vendidas para cada tipo de asiento
[Link]("Introduce el número de entradas vendidas para el asiento tipo A: ");
int numeroDeA_Asientos = [Link]();
[Link]("Introduce el precio por entrada del asiento tipo A: ");
double precioPorA_Asiento = [Link]();
[Link]("Introduce el número de entradas vendidas para el asiento tipo B: ");
int numeroDeB_Asientos = [Link]();
[Link]("Introduce el precio por entrada del asiento tipo B: ");
double precioPorB_Asiento = [Link]();
[Link]("Introduce el número de entradas vendidas para el asiento tipo C: ");
int numeroDeC_Asientos = [Link]();
[Link]("Introduce el precio por entrada del asiento tipo C: ");
double precioPorC_Asiento = [Link]();
// Calcular las ventas totales
double totalVentas = numeroDeA_Asientos * precioPorA_Asiento +
numeroDeB_Asientos * precioPorB_Asiento +
numeroDeC_Asientos * precioPorC_Asiento;
// Mostrar el total de ventas
[Link]("Las ventas totales del concierto son: %.2f%n", totalVentas);
// Cerrar el scanner
[Link]();
3. Escribe un programa que calcule el área de una región circular (el área sombreada en el
diagrama), dado los radios del círculo interior y el círculo exterior, ri y ro, respectivamente.
Calculamos el área de la región circular restando el área del círculo interior del área del círculo
exterior. Define una clase Circulo que tenga métodos para calcular el área y la circunferencia.
Estableces el radio del círculo con el método setRadio o a través de un constructor.
import [Link];
public class Circulo {
// Atributo privado para almacenar el radio del círculo
private double radio;
// Constructor vacío
public Circulo() {
[Link] = 0;
// Constructor con el radio como parámetro
public Circulo(double radio) {
[Link] = radio;
// Método para establecer el radio del círculo
public void setRadio(double radio) {
[Link] = radio;
}
// Método para obtener el radio del círculo
public double getRadio() {
return radio;
// Método para calcular el área del círculo
public double calcularArea() {
return [Link] * radio * radio;
// Método para calcular la circunferencia del círculo
public double calcularCircunferencia() {
return 2 * [Link] * radio;
public static void main(String[] args) {
// Crear un objeto Scanner para leer la entrada del usuario
Scanner scanner = new Scanner([Link]);
// Pedir al usuario el radio del círculo interior
[Link]("Introduce el radio del círculo interior (ri): ");
double ri = [Link]();
// Pedir al usuario el radio del círculo exterior
[Link]("Introduce el radio del círculo exterior (ro): ");
double ro = [Link]();
// Crear instancias de Circulo para el círculo interior y exterior
Circulo circuloInterior = new Circulo(ri);
Circulo circuloExterior = new Circulo(ro);
// Calcular el área de la región circular (área exterior - área interior)
double areaInterior = [Link]();
double areaExterior = [Link]();
double areaSombreada = areaExterior - areaInterior;
// Mostrar el área de la región circular
[Link]("El área de la región circular es: %.2f%n", areaSombreada);
// Mostrar el área y la circunferencia del círculo exterior como ejemplo adicional
[Link]("Área del círculo exterior: %.2f%n", areaExterior);
[Link]("Circunferencia del círculo exterior: %.2f%n",
[Link]());
// Cerrar el scanner
[Link]();