e puden ayudar a con esta tarea:
estructurar dentro de una clase uno o varios métodos, los cuales no deberán devolver resultado por lo que su declaración debe incorporarse la palabra reservada void. Además, los métodos pueden solicitarse de tal manera que reciban o no parámetros, ya sea por valor o por referencia.
1. Crea una clase TanqueDeGasolina con las siguientes propiedades y métodos:
a) Declara las propiedades:
capacidadMaxima (la cantidad máxima de gasolina que puede contener el vehículo)
cantidadActual (la cantidad actual de gasolina que hay en el vehículo).
b) Constructor predeterminado: que establezca la capacidad máxima en 42 (lt.) y la actual en 2 (lt.) la reserva.
c) Constructor con la capacidad máxima del tanque de gasolina: inicializa la cantidad actual de tanque de gasolina igual a la capacidad máxima.
d) Constructor con la capacidad máxima y la cantidad actual. Si la cantidad actual es mayor que la capacidad máxima del tanque de gasolina, la ajustará al máximo.
e) Crear método llamado “llenarTanque” el cual hace que la cantidad actual sea igual a la capacidad.
f) Crear método llamado “consumirGasolina”, simula la acción de que el carro consuma gasolina con la capacidad indicada. Si la cantidad actual del tanque de gasolina “no alcanza” se consume lo que queda y se estable cantidad actual en cero
g) Crear método llamado “consumirTotalGasolina” que pone la cantidad actual en cero.
h) Crear método llamado “agregarGasolina” que añade al tanque de gasolina la cantidad indicada, considerando la capacidad máxima
i) Crear método llamado “consultarGasolina” muestra la cantidad actual de gasolina que tiene el tanque
es en visula studio estamos viendo lenguaje de C·
Respuestas
Respuesta:
using System;
namespace DPRN1A3U2
{
class TanqueDeGasolina
{
private float capacidadMaxima, capacidadActual;
public TanqueDeGasolina()
{
capacidadMaxima = 42;
capacidadActual = 2;
}
public TanqueDeGasolina(float capAct)
{
capacidadMaxima = capAct;
capacidadActual = capacidadMaxima;
}
public TanqueDeGasolina(float capAct, float capMax)
{
capacidadActual = capAct;
capacidadMaxima = capMax;
if (capacidadActual > capacidadMaxima)
{
capacidadActual = capacidadMaxima;
}
}
public void llenarTanque()
{
capacidadActual = capacidadMaxima;
Console.WriteLine("El tanque se ha llenado. Capacidad Actual: " + capacidadActual);
}
public void consumirGasolina()
{
float menos;
Console.WriteLine("Introduzca la cantidad a retirar");
menos = float.Parse(Console.ReadLine());
if (capacidadActual - menos < 0)
{
capacidadActual = 0;
Console.WriteLine("No hay suficiente gasolina. Se consumió el resto que quedaba.");
Console.WriteLine("Capacidad Actual: " + capacidadActual);
}
else
{
capacidadActual = capacidadActual - menos;
Console.WriteLine("La cantidad de gasolina ahora es: " + capacidadActual);
}
}
public void consumirTotalGasolina()
{
capacidadActual = 0;
Console.WriteLine("El tanque se ha vaciado. Capacidad Actual: " + capacidadActual);
}
public void agregarGasolina()
{
float mas;
Console.WriteLine("Introduzca la cantidad a agregar");
mas = float.Parse(Console.ReadLine());
if (capacidadActual + mas > capacidadMaxima)
{
capacidadActual = capacidadMaxima;
Console.WriteLine("La capacidad máxima se excedía del límite. El tanque se ha llenado");
Console.WriteLine("Capacidad Actual: " + capacidadActual);
}
capacidadActual = capacidadActual + mas;
Console.WriteLine("La capacidad actual ahora es: " + capacidadActual);
}
public void mostrarOpciones()
{
Console.WriteLine("Elige una opción.");
Console.WriteLine("1. Llenar tanque.");
Console.WriteLine("2. Consumir gasolina.");
Console.WriteLine("3. Consumir toda la gasolina.");
Console.WriteLine("4. Agregar Gasolina.");
}
}
class Program
{
static void Main(string[] args)
{
float capMax1, capAct, capMax2;
int opc, opc1, opc2, opc3;
bool rep1 = true;
TanqueDeGasolina obj1 = new TanqueDeGasolina();
Console.WriteLine("Constructor 2.");
Console.WriteLine("Introduce la cantidad Máxima del tanque lleno.");
capMax1 = float.Parse(Console.ReadLine());
TanqueDeGasolina obj2 = new TanqueDeGasolina(capMax1);
Console.WriteLine("Constructor 3.");
Console.WriteLine("Introduce la cantidad actual del tanque.");
capAct = float.Parse(Console.ReadLine());
Console.WriteLine("Introduce la cantidad Máxima del tanque");
capMax2 = float.Parse(Console.ReadLine());
TanqueDeGasolina obj3 = new TanqueDeGasolina(capAct, capMax2);
while (rep1 == true)
{
Console.WriteLine("Elige el constructor con el que quieras trabajar.");
Console.WriteLine("Constructor 1.");
Console.WriteLine("Constructor 2.");
Console.WriteLine("Constructor 3.");
Console.WriteLine("Salir.");
opc = int.Parse(Console.ReadLine());
switch (opc)
{
case 1:
obj1.mostrarOpciones();
opc1 = int.Parse(Console.ReadLine());
switch (opc1)
{
case 1:
obj1.llenarTanque();
break;
case 2:
obj1.consumirGasolina();
break;
case 3:
obj1.consumirTotalGasolina();
break;
case 4:
obj1.agregarGasolina();
break;
default:
Console.WriteLine("Opción incorrecta.");
break;
}
break;
case 2:
obj2.mostrarOpciones();
opc2 = int.Parse(Console.ReadLine());
switch (opc2)
{
case 1:
obj2.llenarTanque();
break;
case 2:
obj2.consumirGasolina();
break;
case 3:
obj2.consumirTotalGasolina();
break;
case 4:
obj2.agregarGasolina();
break;
default:
Console.WriteLine("Opción incorrecta.");
break;
}
break;
case 3:
obj3.mostrarOpciones();
opc3 = int.Parse(Console.ReadLine());
switch (opc3)
{
case 1:
obj3.llenarTanque();
break;
case 2:
obj3.consumirGasolina();
break;
case 3:
obj3.consumirTotalGasolina();
break;
case 4:
obj3.agregarGasolina();
break;
default:
Console.WriteLine("Opción incorrecta.");
break;
}
break;
case 4:
rep1 = false;
break;
default:
Console.WriteLine("Opción incorrecta");
break;
}
}
}
}
}
Explicación:
A qui el programa espero y aun te sirva