C sharp - Barar de progreso

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

Barar de progreso

Publicado por Meta (93 intervenciones) el 27/02/2019 22:26:08
Hola:

Independientemente de la cantidad de █ haya para crear una barra de progreso, no llega al 100 %.
captura-2004970

Este es su código que he hecho hasta ahora.
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
using System;
using System.Threading;
 
namespace Porcentaje_barra_consola_01_cs
{
    class Program
    {
        public static int resultado = 0;
 
        static void Main(string[] args)
        {
            // Título de la ventana.
            Console.Title = "Simulaor barra";
 
            // Tamaño ventana consola.
            Console.WindowWidth = 60; // X ancho.
            Console.WindowHeight = 20; // Y altura.
 
            // Cursor invisible.
            Console.CursorVisible = false;
 
            // Variables.
            int barra = 49;
            int porcentaje = 0;
 
            Console.SetCursorPosition(17, 1);
            Console.Write("    ");
            Console.SetCursorPosition(17, 1);
            Console.Write("");
 
            // Dibujamos la barra del portentaje.
            Console.SetCursorPosition(0, 3);
            Console.Write("0 %                         50 %                       100 %");
            Console.SetCursorPosition(0, 4);
            Console.Write("┌────────────────────────────┬───────────────────────────┐");
            Console.SetCursorPosition(0, 5);
            Console.ForegroundColor = ConsoleColor.Yellow;
 
            // Barra de progreso.
            for (int i = 0; i <= barra; i++)
            {
                Console.Write("█"); // Muestra ASCII 219 Dec y DB en Hex.
                                    // Console.Write((char)219);
                                    // Console.Write(Encoding.ASCII.GetBytes((char)219));
                porcentaje++; // Incrementa valor.
 
                printCargando(porcentaje);
 
                Thread.Sleep(100); // 100 ms o 0.1 segundos.
            }
 
            Console.ReadKey();
        }
 
        static void printCargando(int porcentaje)
        {
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.SetCursorPosition(0, 1);
            // Por dos para que simule el 100%.
            Console.Write("Cargado: " + (porcentaje).ToString() + " %");
            //Console.Write("Cargado: {0} %", (porcentaje * 2).ToString());
            //Console.Write($"Cargado: { (porcentaje * 2).ToString() } %");
 
            // Reestablecemos para que vuelva a imprimir bajo la línea de carga.
            Console.ForegroundColor = ConsoleColor.Yellow;
            Console.SetCursorPosition(porcentaje, 5);
        }
 
    }
}

Gracias. ;)
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