C sharp - Calcular Litros de agua en portenje cambiando el valor de la altura

 
Vista:
sin imagen de perfil
Val: 168
Bronce
Ha mantenido su posición en C sharp (en relación al último mes)
Gráfica de C sharp

Calcular Litros de agua en portenje cambiando el valor de la altura

Publicado por Meta (122 intervenciones) el 02/07/2020 15:44:25
Lo tengo en unidades de metros.

Quiero calcular un cilindro como este, su volumen.
cilindro

h = altura.
r = radio.
v = volumen.

material-nePaZ7TY
Aquí hice un pequeño programa en la consola C# que calcula solo introduciendo dos valores, el radio del cilindro o depósito de agua y la altura.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
using System;
 
namespace namespace_Calculo_cilindro_consola_02_cs
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Title = "Cálculo geométrico cilindro - C# 2019";
            Console.SetWindowSize(50, 25);
 
            // Variables.
            double Pi = 3.14;
            double radio = 0;
            double altura = 0;
            double areaLateral = 0;
            double areaTotal = 0;
            double volumen = 0;
            double litros = 0;
 
            Console.WriteLine("===== Área lateral =====");
            Console.Write("Introduce el radio en m.: ");
            radio = double.Parse(Console.ReadLine());
            Console.Write("Introduce la altura en m.: ");
            altura = double.Parse(Console.ReadLine());
 
            // Cálculo área lateral.
            areaLateral = 2 * Pi * radio * altura;
 
            Console.WriteLine("Área lateral = 2 x Pi x radio x altura.");
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("Área lateral: {0} m^2. (Metros cuadrados). \n", areaLateral);
 
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.WriteLine("===== Área total =====");
 
            // Cálculo área Total.
            areaTotal = areaLateral + 2 * (Pi * (radio * radio));
 
            Console.WriteLine("Área total = Áreal lateral + 2 x (Pi x r^2)");
            Console.ForegroundColor = ConsoleColor.Yellow;
            Console.WriteLine("Área total = {0} m^2. \n", areaTotal);
 
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.WriteLine("===== Volumen =====");
            Console.WriteLine("Volumen = Pi x radio^2 x altura");
 
            // Cálculo volumen.
            volumen = Pi * (radio * radio) * altura;
 
            Console.ForegroundColor = ConsoleColor.Cyan;
            Console.WriteLine("Volumen = {0} m^3. (Metros cúbicos). \n", volumen);
 
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.WriteLine("===== Litros =====");
            Console.WriteLine("Litros = Volumen * 1000");
            Console.WriteLine("Litros = {0} m^3 * 1000", volumen);
 
            // Cálculo litros.
            litros = volumen * 1000;
 
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.WriteLine("Litros = {0:N2}", litros + " L.\n");
 
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.CursorVisible = false;
            Console.WriteLine("\n\n\nFIN DE PROGRAMA. Pulse cualquier tecla para salir.");
            // Pulse cualquier tecla para salir.
            Console.ReadLine();
        }
    }
}

captura-2145083

Me falta hacer una fórmula que no se hacer sobre saber que cantidad de litros tengo en este depósito de agua o cilindro. Por ejemplo, ya que la altura es de 0 a 2 metros, quiero saber que si cambio la altura del agua, por ejemplo que está a 0.7 metros, que me muestre el porcentaje en %. Está claro que si está el nivel del agua a 2 metros de altura que es la máxima, será el 100 %.

1. Si la altura está en 0.7 metros. ¿Qué porcentaje muestra?

2. ¿Qué cantidad de Litros de agua hay cuando está el nivel de agua a 0.7 metros?

Solo me falta saber estas dos cosas en papel. Luego lo transformo en C#.

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder