Вы находитесь на странице: 1из 21

24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

Tutorial: Creación de una aplicación


de consola de C# sencilla en Visual
Studio
22/03/2019 • Tiempo de lectura: 10 minutos •
En este artículo
Crear un proyecto
Creación de la aplicación
Depurar la aplicación
Cierre la aplicación
Código completo
Pasos siguientes
Vea también

En este tutorial para C#, usará Visual Studio para crear y ejecutar una aplicación de consola
y explorar algunas características del entorno de desarrollo integrado (IDE) de Visual Studio
mientras lo hace.

Si todavía no ha instalado Visual Studio, vaya a la página de descargas de Visual Studio


para instalarlo de forma gratuita.

Crear un proyecto
Para empezar, crearemos un proyecto de aplicación de C#. En el tipo de proyecto se
incluyen todos los archivos de plantilla que vamos a necesitar, sin necesidad de agregar
nada más.

1. Abra Visual Studio 2019.

2. En la ventana de inicio, elija Crear un proyecto nuevo.

https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 1/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

3. En el cuadro de búsqueda de la ventana Crear un proyecto, escriba consola.


Seguidamente, elija C# en la lista de lenguajes y luego, Windows en la lista de
plataformas.

Después de aplicar los filtros de lenguaje y plataforma, elija la plantilla Aplicación de


consola (.NET Core) y luego, Siguiente.

https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 2/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

7 Nota

Si no ve la plantilla Aplicación de consola (.NET Core) , puede instalarla desde


la ventana Crear un proyecto. En el mensaje ¿No encuentra lo que busca? ,
elija el vínculo Instalar más herramientas y características.

Luego, en el Instalador de Visual Studio, elija la carga de trabajo Desarrollo


multiplataforma de .NET Core.

Después, elija el botón Modificar en el Instalador de Visual Studio. Es posible


que se le pida que guarde su trabajo; si es así, hágalo. Seguidamente, elija
Continuar para instalar la carga de trabajo. Luego, vuelva al paso 2 de este
di i "C "
https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 3/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs
procedimiento "Crear un proyecto".

4. En la ventana Configurar el nuevo proyecto, escriba Calculator en el cuadro


Nombre del proyecto. Luego, elija Crear.

Visual Studio abre el nuevo proyecto, que incluye código predeterminado de "Hola


mundo".

Creación de la aplicación
En primer lugar, exploraremos algunos cálculos de enteros básicos en C#. Después,
agregaremos código para crear una calculadora básica. Después de eso, depuraremos la
aplicación para buscar y corregir errores. Por último, perfeccionaremos el código para que
sea más eficaz.

Análisis de las operaciones matemáticas con enteros

Empecemos con algunos cálculos básicos de enteros en C#.

1. En el editor de código, elimine el código predeterminado "Hello World".

https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 4/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

En concreto, elimine la línea que dice Console.WriteLine("Hello World!"); .

2. En su lugar, escriba este código:

C# = Copiar

int a = 42;
int b = 119;
int c = a + b;
Console.WriteLine(c);
Console.ReadKey();

Tenga en cuenta que, al hacerlo, la función IntelliSense en Visual Studio le ofrece la


opción de autocompletar la entrada.

https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 5/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

3. Elija el botón verde Inicio junto a Calculadora para compilar y ejecutar el programa,
o presione F5.

Se abre una ventana de consola que muestra la suma de 42+119, cuyo resultado es
161.

4 (Opcional) Puede modificar el operador para cambiar el resultado Por ejemplo


https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 6/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs
4. (Opcional) Puede modificar el operador para cambiar el resultado. Por ejemplo,
puede cambiar el operador + en la línea de código int c = a + b; por - para la
resta, * para la multiplicación o / para la división. A continuación, al ejecutar el
programa, el resultado también cambia.

5. Cierre la ventana de la consola.

Incorporación de código para crear una calculadora

Ahora vamos a agregar al proyecto un conjunto más complejo de código de la calculadora.

1. Elimine todo el código que vea en el editor de código.

2. Escriba o pegue el siguiente código nuevo en el editor de código:

C# = Copiar

using System;

namespace Calculator
{
class Program
{
static void Main(string[] args)
{
// Declare variables and then initialize to zero.
int num1 = 0; int num2 = 0;

// Display title as the C# console calculator app.


Console.WriteLine("Console Calculator in C#\r");
Console.WriteLine("------------------------\n");

// Ask the user to type the first number.


Console.WriteLine("Type a number, and then press Enter");
num1 = Convert.ToInt32(Console.ReadLine());

// Ask the user to type the second number.


Console.WriteLine("Type another number, and then press
Enter");
num2 = Convert.ToInt32(Console.ReadLine());

// Ask the user to choose an option.


Console.WriteLine("Choose an option from the following
list:");
Console.WriteLine("\ta - Add");
Console.WriteLine("\ts - Subtract");
Console.WriteLine("\tm - Multiply");
Console.WriteLine("\td - Divide");
Console.Write("Your option? ");
https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 7/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs
Co so e. te( ou opt o ? );

// Use a switch statement to do the math.


switch (Console.ReadLine())
{
case "a":
Console.WriteLine($"Your result: {num1} + {num2} = " +
(num1 + num2));
break;
case "s":
Console.WriteLine($"Your result: {num1} - {num2} = " +
(num1 - num2));
break;
case "m":
Console.WriteLine($"Your result: {num1} * {num2} = " +
(num1 * num2));
break;
case "d":
Console.WriteLine($"Your result: {num1} / {num2} = " +
(num1 / num2));
break;
}
// Wait for the user to respond before closing.
Console.Write("Press any key to close the Calculator console
app...");
Console.ReadKey();
}
}
}

3. Elija Calculator para ejecutar el programa, o bien presione F5.

Se abre una ventana de consola.

4. Vea la aplicación en la ventana de consola y, después, siga las indicaciones para


agregar los números 42 y 119.

La ventana de consola debe ser similar a la de la siguiente captura de pantalla:

https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 8/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

Incorporación de funcionalidad a la calculadora

Vamos a retocar el código para agregarle más funcionalidad.

Agregar decimales

En este momento, la aplicación Calculator acepta y devuelve números enteros, Pero será
más precisa si agregamos código que permita incluir decimales.

Como se muestra en la siguiente captura de pantalla, si ejecutamos la aplicación y


dividimos el número 42 entre el número 119, el resultado es 0 (cero), lo cual no es correcto.

Vamos a corregir el código de forma que dé cabida a los decimales.

1. Presione Ctrl + B para abrir el control Buscar y reemplazar.


https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 9/21
24/1/2020
p y p
Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

2. Cambie cada instancia de la variable int por float .

Asegúrese de que alterna Coincidir mayúsculas y minúsculas (Alt+C) y Solo


palabras completas (Alt + W) en el control Buscar y reemplazar.

3. Vuelva a ejecutar la aplicación Calculator y divida el número 42 entre el número 119.

Fíjese en que ahora la aplicación devuelve un número con decimales en lugar de cero.

Sin embargo, la aplicación genera solo un resultado decimal. Vamos a hacer algunos
retoques más en el código para que la aplicación calcule decimales también.

1. Use el control Buscar y reemplazar (Ctrl + B) para cambiar cada instancia de la


variable float a double y cambiar cada instancia del método Convert.ToInt32 a
Convert.ToDouble .

2. Ejecute la aplicación Calculator y divida el número 42.5 entre el número 119.75.

Fíjese en que ahora la aplicación acepta valores decimales y devuelve un número


https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 10/21
24/1/2020
j q p p y
Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

decimal más largo como resultado.

(Corregiremos el número de posiciones decimales en la sección Revisar el código).

Depurar la aplicación
Hemos mejorado nuestra aplicación de calculadora básica, pero todavía carece de
notificaciones de error que permitan controlar excepciones, como los errores que los
usuarios cometen al escribir.

Por ejemplo, si intentamos dividir un número entre cero o introducir un carácter


alfanumérico cuando la aplicación espera un carácter numérico (o viceversa), la aplicación
deja de funcionar y devuelve un error.

Vamos a ver algunos errores comunes de entradas de usuario, localizarlos en el depurador


y corregirlos en el código.

 Sugerencia

Para más información sobre el depurador y cómo funciona, vea la página Primer
vistazo al depurador de Visual Studio.

Corregir el error "división entre cero"

Cuando intentamos dividir un número entre cero, la aplicación de consola se congela.


Luego, Visual Studio señala qué es incorrecto en el editor de código.

https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 11/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

Vamos a cambiar el código para controlar este error.

1. Elimine el código que aparece directamente entre case "d": y el comentario // Wait
for the user to respond before closing .

2. Reemplácelo por el código siguiente:

C# = Copiar

// Ask the user to enter a non-zero divisor until they do so.


while (num2 == 0)
{
Console.WriteLine("Enter a non-zero divisor: ");
num2 = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine($"Your result: {num1} / {num2} = " + (num1
/ num2));
break;
}

Después de agregar el código, la sección con la instrucción switch debe ser similar a
la de la siguiente captura de pantalla:

https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 12/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

Ahora, cuando dividimos un número entre cero, la aplicación nos pedirá otro número.
Mejor aún: no parará de pedirlo hasta que proporcionemos un número distinto de cero.

Corregir el error de "formato"

Si introduce un carácter alfanumérico cuando la aplicación espera un carácter numérico (o


viceversa) la aplicación de consola se congela Luego Visual Studio señala qué es
https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 13/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs
viceversa), la aplicación de consola se congela. Luego, Visual Studio señala qué es
incorrecto en el editor de código.

Para corregir este error, debemos refactorizar el código que hemos escrito anteriormente.

Revisar el código

En lugar de usar la clase program para controlar todo el código, dividiremos nuestra
aplicación en dos clases: Calculator y Program .

La clase Calculator controlará la mayor parte del trabajo de cálculo, mientras que la clase
Program controlará la interfaz de usuario y el trabajo de captura de errores.

Comencemos.

1. Elimine todo el contenido que hay después del siguiente bloque de código:

C# = Copiar

using System;

namespace Calculator
{

2. Después, agregue una nueva clase Calculator , como se indica a continuación:

C# = Copiar

class Calculator
{
public static double DoOperation(double num1, double num2, string op)
{
double result = double.NaN; // Default value is "not-a-number"
which we use if an operation such as division could result in an error
https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 14/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs
which we use if an operation, such as division, could result in an error.

// Use a switch statement to do the math.


switch (op)
{
case "a":
result = num1 + num2;
break;
case "s":
result = num1 - num2;
break;
case "m":
result = num1 * num2;
break;
case "d":
// Ask the user to enter a non-zero divisor.
if (num2 != 0)
{
result = num1 / num2;
}
break;
// Return text for an incorrect option entry.
default:
break;
}
return result;
}
}

3. Luego, agregue una nueva clase Program , como se indica a continuación:

C# = Copiar

class Program
{
static void Main(string[] args)
{
bool endApp = false;
// Display title as the C# console calculator app.
Console.WriteLine("Console Calculator in C#\r");
Console.WriteLine("------------------------\n");

while (!endApp)
{
// Declare variables and set to empty.
string numInput1 = "";
string numInput2 = "";
double result = 0;

https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 15/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

// Ask the user to type the first number.


Console.Write("Type a number, and then press Enter: ");
numInput1 = Console.ReadLine();

double cleanNum1 = 0;
while (!double.TryParse(numInput1, out cleanNum1))
{
Console.Write("This is not valid input. Please enter an
integer value: ");
numInput1 = Console.ReadLine();
}

// Ask the user to type the second number.


Console.Write("Type another number, and then press Enter: ");
numInput2 = Console.ReadLine();

double cleanNum2 = 0;
while (!double.TryParse(numInput2, out cleanNum2))
{
Console.Write("This is not valid input. Please enter an
integer value: ");
numInput2 = Console.ReadLine();
}

// Ask the user to choose an operator.


Console.WriteLine("Choose an operator from the following
list:");
Console.WriteLine("\ta - Add");
Console.WriteLine("\ts - Subtract");
Console.WriteLine("\tm - Multiply");
Console.WriteLine("\td - Divide");
Console.Write("Your option? ");

string op = Console.ReadLine();

try
{
result = Calculator.DoOperation(cleanNum1, cleanNum2, op);
if (double.IsNaN(result))
{
Console.WriteLine("This operation will result in a
mathematical error.\n");
}
else Console.WriteLine("Your result: {0:0.##}\n", result);
}
catch (Exception e)
{
Console.WriteLine("Oh no! An exception occurred trying to
do the math.\n - Details: " + e.Message);
}

Console WriteLine(" \n");


https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 16/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs
Console.WriteLine( ------------------------\n );

// Wait for the user to respond before closing.


Console.Write("Press 'n' and Enter to close the app, or press
any other key and Enter to continue: ");
if (Console.ReadLine() == "n") endApp = true;

Console.WriteLine("\n"); // Friendly linespacing.


}
return;
}
}

4. Elija Calculator para ejecutar el programa, o bien presione F5.

5. Siga las indicaciones y divida el número 42 entre el número 119. La ventana de


consola debe ser similar a la de la siguiente captura de pantalla:

Fíjese en que tiene la opción de especificar más ecuaciones hasta que decida cerrar la
aplicación de consola. También hemos reducido el número de posiciones decimales
en el resultado.

Cierre la aplicación
1. Si aún no lo ha hecho, cierre la aplicación de calculadora.

2. Cierre el panel Salida en Visual Studio.

https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 17/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs

3. En Visual Studio, presione Ctrl+G para guardar la aplicación.

4. Cierre Visual Studio.

Código completo
Durante este tutorial, hemos realizado muchos cambios en la aplicación de calculadora.
Ahora la aplicación controla los recursos de cálculo más eficazmente y trata la mayoría de
los errores de entrada de usuario.

Este es el código completo:

C# = Copiar

using System;

namespace Calculator
{
class Calculator
{
public static double DoOperation(double num1, double num2, string op)
{
double result = double.NaN; // Default value is "not-a-number"
which we use if an operation, such as division, could result in an error.

// Use a switch statement to do the math.


switch (op)
{
https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 18/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs
{
case "a":

result = num1 + num2;


break;
case "s":
result = num1 - num2;
break;
case "m":
result = num1 * num2;
break;
case "d":
// Ask the user to enter a non-zero divisor.
if (num2 != 0)
{
result = num1 / num2;
}
break;
// Return text for an incorrect option entry.
default:
break;
}
return result;
}
}

class Program
{
static void Main(string[] args)
{
bool endApp = false;
// Display title as the C# console calculator app.
Console.WriteLine("Console Calculator in C#\r");
Console.WriteLine("------------------------\n");

while (!endApp)
{
// Declare variables and set to empty.
string numInput1 = "";
string numInput2 = "";
double result = 0;

// Ask the user to type the first number.


Console.Write("Type a number, and then press Enter: ");
numInput1 = Console.ReadLine();

double cleanNum1 = 0;
while (!double.TryParse(numInput1, out cleanNum1))
{
Console.Write("This is not valid input. Please enter an
integer value: ");
numInput1 = Console.ReadLine();
}
https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 19/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs
}

// Ask the user to type the second number.


Console.Write("Type another number, and then press Enter: ");
numInput2 = Console.ReadLine();

double cleanNum2 = 0;
while (!double.TryParse(numInput2, out cleanNum2))
{
Console.Write("This is not valid input. Please enter an
integer value: ");
numInput2 = Console.ReadLine();
}

// Ask the user to choose an operator.


Console.WriteLine("Choose an operator from the following
list:");
Console.WriteLine("\ta - Add");
Console.WriteLine("\ts - Subtract");
Console.WriteLine("\tm - Multiply");
Console.WriteLine("\td - Divide");
Console.Write("Your option? ");

string op = Console.ReadLine();

try
{
result = Calculator.DoOperation(cleanNum1, cleanNum2, op);
if (double.IsNaN(result))
{
Console.WriteLine("This operation will result in a
mathematical error.\n");
}
else Console.WriteLine("Your result: {0:0.##}\n", result);
}
catch (Exception e)
{
Console.WriteLine("Oh no! An exception occurred trying to
do the math.\n - Details: " + e.Message);
}

Console.WriteLine("------------------------\n");

// Wait for the user to respond before closing.


Console.Write("Press 'n' and Enter to close the app, or press
any other key and Enter to continue: ");
if (Console.ReadLine() == "n") endApp = true;

Console.WriteLine("\n"); // Friendly linespacing.


}
return;
}
https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 20/21
24/1/2020 Tutorial: Creación de una aplicación de consola de C# sencilla - Visual Studio | Microsoft Docs
}
}

Pasos siguientes
Enhorabuena por completar este tutorial. Para más información, continúe con los tutoriales
siguientes.

Continuar con más tutoriales de C#

Vea también
IntelliSense para C#
Información sobre cómo depurar código de C# con Visual Studio

¿Le ha resultado útil esta página?

 Sí  No

https://docs.microsoft.com/es-es/visualstudio/get-started/csharp/tutorial-console?view=vs-2019 21/21

Вам также может понравиться