> Manuales > Manual sobre la plataforma .Net

Una vez que hemos aprendido a usar la clase consola, vamos a realizar una aplicación de consola.

Ahora que se conoce un poco mejor la clase Console, se dará comienzo a la aplicación, los lenguajes usados para este ejemplo son Visual Basic.Net y C#.

Lo primero que se debe hacer después de arrancar Visual Studio.Net, es escoger la opción "Aplicación de consola" (Fig1), tras este paso Visual Studio genera las siguientes líneas:


Fig3: Creación de una aplicación de consola.


VB.NET
Module Module1
    Sub Main()

    End Sub
End Module

C#
using System;

namespace ConsoleApplication3
{
    class Class1
    {
       [STAThread]
       static void Main(string[] args)
       {
          //
          // TODO: Add code to start application here
          //
       }
    }
}


Dentro del procedimiento Main(), se introduce el código que se quiere ejecutar. Lo primero que hay que hacer es declarar las variables que se van a usar, para este ejemplo se usan 2 variables de tipo entero para recoger los valores de los números que introduzca el usuario:

VB.NET
Module Module1
    Sub Main()
       Dim Numero1 As Integer
       Dim NUmero2 As Integer
    End Sub
End Module

C#
using System;

namespace ConsoleApplication3
{
    class Class1
    {
       [STAThread]
       static void Main(string[] args)
       {
          int Numero1;
          int Numero2;
       }
    }
}

Una vez están declaradas las variables, se solicitan ambos números al usuario y se introducen sus valores en las dos variables, a continuación se pide que se seleccione una de las opciones posibles, sumar o restar.

VB.NET
Module Module1
    Sub Main()
       Dim Numero1 As Integer
       Dim Numero2 As Integer

       Console.WriteLine("Introduzca el primer número")
       Numero1 = Console.ReadLine()

       Console.WriteLine("Introduzca el segundo número")
       Numero2 = Console.ReadLine()

       Console.WriteLine("Escoja una opción: 1 - Sumar / 2 - Restar")
       If (Console.ReadLine = 1) Then
          Console.WriteLine("El resultado de la suma es: " & Numero1 + Numero2)
          Console.ReadLine()
       ElseIf (Console.ReadLine = 2) Then
          Console.WriteLine("El resultado de la resta es: " & Numero1 - Numero2)
          Console.ReadLine()
       Else
          Console.WriteLine("Opción Incorrecta")
       End If
    End Sub
End Module

C#
using System;

namespace ConsoleApplication2
{
    class Class1
    {
       [STAThread]
       static void Main(string[] args)
       {
          int Numero1;
          int Numero2;
          int opcion;

          Console.WriteLine("Introduzca el primer número");
          Numero1 = Int32.Parse(Console.ReadLine());

          Console.WriteLine("Introduzca el segundo número");
          Numero2 =Int32.Parse(Console.ReadLine());

          Console.WriteLine("Escoja una opción: 1 - Sumar / 2 - Restar");
          opcion = Int32.Parse(Console.ReadLine());
          if (opcion == 1)
          {
             Console.WriteLine("El resultado de la suma es: " + (Numero1 + Numero2));
          }
          else if (opcion == 2)
          {
             Console.WriteLine("El resultado de la resta es: " + (Numero1 - Numero2));
          }
          else
          {
          Console.WriteLine("Opción Incorrecta");
          }
          Console.ReadLine();
       }
    }
}

Siguiendo el flujo de la aplicación se puede ver que después de que el usuario selecciona una de las 2 opciones, se muestra el resultado de la operación por pantalla.

Si lo que se desea es encapsular el código en la medida de lo posible se pueden construir 2 funciones que realicen las operaciones de sumar y restar y que escriben el resultado en la pantalla, el código quedaría de la siguiente manera:

VB.NET
Module Module1
    Sub Main()
       Dim Numero1 As Integer
       Dim Numero2 As Integer

       Console.WriteLine("Introduzca el primer número")
       Numero1 = Console.ReadLine()

       Console.WriteLine("Introduzca el segundo número")
       Numero2 = Console.ReadLine()

       Console.WriteLine("Escoja una opción: 1 - Sumar / 2 - Restar")
       If (Console.Readline = 1) Then
          Sumar(Numero1, Numero2)
       ElseIf (Console.ReadLine = 2) Then
          Restar(Numero1, Numero2)
       Else
          Console.WriteLine("Opción Incorrecta")
       End If
    End Sub

    Sub Sumar(ByVal Numero1, ByVal Numero2)
       Console.WriteLine("El resultado de la suma es: " & Numero1 + Numero2)
       Console.ReadLine()
    End Sub

    Sub Restar(ByVal Numero1, ByVal Numero2)
       Console.WriteLine("El resultado de la resta es: " & Numero1 - Numero2)
       Console.ReadLine()
    End Sub
End Module

C#
using System;

namespace ConsoleApplication2
{
    class Class1
    {
       [STAThread]
       static void Main(string[] args)
       {
          int Numero1;
          int Numero2;
          int opcion;

          Console.WriteLine("Introduzca el primer número");
          Numero1 = Int32.Parse(Console.ReadLine());

          Console.WriteLine("Introduzca el segundo número");
          Numero2 =Int32.Parse(Console.ReadLine());

          Console.WriteLine("Escoja una opción: 1 - Sumar / 2 - Restar");
          opcion = Int32.Parse(Console.ReadLine());
          if (opcion == 1)
          {
             Sumar(Numero1, Numero2);
          }
          else if (opcion == 2)
          {
             Restar(Numero1, Numero2);
          }
          else
          {
             Console.WriteLine("Opción Incorrecta");
          }
          Console.ReadLine();
       }
       static void Sumar (int Numero1, int Numero2)
       {
          Console.WriteLine("El resultado de la suma es: " + (Numero1 + Numero2));
          Console.ReadLine();
       }

       static void Restar (int Numero1, int Numero2)
       {
          Console.WriteLine("El resultado de la resta es: " + (Numero1 - Numero2));
          Console.ReadLine();
       }
    }
}

De esta manera se consigue encapsular funcionalidades dentro de la aplicación, asignando las tareas de Sumar y Restar a dos subrutinas, la principal ventaja es que una vez hayamos asegurado que ambas subrutinas funcionan, podremos olvidarnos de ellas y continuar con el desarrollo de la aplicación.

El resultado de la ejecución de cualquiera de los 2 códigos anteriores es el siguiente:


Fig4: Resultado del ejemplo.

Francisco Recio y David Provencio

Manual