sábado, 16 de junio de 2018

FUNDAMENTOS DE PROGRAMACIÓN EN C#


En Colombia existe un déficit grande en profesionales con conocimientos en TIC y, Portafolio [portafolio.co] (2016) Afirma que según “Cifras del Ministerio TIC revelan la necesidad de más profesionales en carreras como electrónica, sistemas o computación, ingenierías que cada vez se estudian menos, y que presentan un déficit de profesionales de entre 11.059 y 29.105 personas. De continuar con esta situación, el déficit llegará a 93 mil estudiantes para el 2018, según el Ministerio de las Tecnologías de la Información y la Comunicación.”
Fábrega (2016) afirma “En resumen, en aproximadamente cincuenta años de desarrollo de lenguajes de programación y con el objeto de facilitar el desarrollo cognitivo, los promotores de la enseñanza de la programación en las escuelas han considerado que aprender a programar tiene al menos los siguientes beneficios para los niños y niñas en edad escolar y preescolar:” (p.16)
  • Crean su propio entorno de aprendizaje, aprendiendo paso a paso a comprender sus propios modos de aprender.
  • Aprenden conceptos matemáticos mediante su uso previo al desarrollo o comprensión abstracta de los mismos.
  • Reducen las reticencias hacia conceptos abstractos, particularmente de origen matemático. Aprenden a organizar y secuenciar tareas en forma lógica.
  • Desarrollan una actitud positiva hacia el aprendizaje.
  • Aprenden a colaborar con otros en la resolución de problemas. Se empoderan en el proceso de aprendizaje. 

Actualmente en su mayoría los estudiantes utilizan artefactos tecnológicos pero no hacen de estos una opción para construir conocimiento, sólo son utilizados como objetos de distracción y para consultar en las redes sociales. Se ha visto en el desarrollo de software una opción creando un grupo de investigación con algunos estudiantes que cursan grado octavo o noveno de la Institución Educativa La Presentación, a este grupo se le ha llamado “La Programación abre tu mente”, para abrir un espacio y abordar el tema de las TIC teniendo en cuenta variables como el nivel cognitivo de los estudiantes, utilizando el lenguaje de programación C# a manera de método para construir software y desarrollar habilidades cognitivas y aportar al pensamiento crítico de estos jóvenes. Para lo cual se ha creado este espacio en la nube donde los estudiantes pueden encontrar los recursos necesarios con el fin de poder afianzar sus conocimientos en este lenguaje de programación.

Se considera importante realizar a los estudiantes asistentes al Proyecto "Programar Abre tu Mente"un pre test sobre los conocimientos empíricos que estos tienen sobre el mundo del desarrollo de software, por esta razón se ha construido en Google Form un instrumento como medio evaluativo, para acceder a este test se da click sobre el mismo.
Es conveniente profundizar en algunos conceptos técnicos que tienen que ver con el desarrollo de la programación, siguiendo los enlaces (Links) en este blog encontrará los recursos necesarios parra complementar lo aprendido en las asesorías:

Además de conocer el mundo del desarrollo de software a través de la lectura, se considera importante hacerlo por intermedio de videos que ayudarán a entender estos variados conceptos 
Recursos

Multimedia
Una vez revisado los recursos presentes en este sitio, se proponen realizar algunas actividades prácticas haciendo uso del IDE Visual Studio 2015 y el lenguaje de programación C#. A continuación se muestran los ejercicios a desarrollar:

  • Crear un proyecto en Visual Studio 2015 utilizando el lenguaje de programación C# sobre las cuatro operaciones matemáticas básicas de dos números ingresados por teclado, donde se pueda elegir a través de un menú la operación básica a realizar, además tener la oportunidad de realizar el proceso sin salir de la aplicación. El resultado se debe mostrar por consola.
  • Crear un proyecto haciendo uso de C# donde se pueda imprimir por consola los números primos existentes entre dos números ingresados por teclado; donde el primer número debe ser menor que el segundo. 
  • Los estudiantes de los grados tercero y quinto de la Institución Educativa La Presentación presentan deficiencias en las áreas fundamentales (Español y Matemáticas), viéndose reflejado en los resultados de las Pruebas Saber 3° y 5° del año 2017. Se solicita al grupo de Investigación "Programar Abre tu Mente" una solución haciendo uso de los conocimientos aprendidos en desarrollo de software, dicha solución debe aportar al mejoramiento de las competencias en dichas áreas. (Plantear una posible solución a este problema).   
Una vez los estudiantes participantes hayan realizado las asesorías suficientes y cuando el docente tutor crea conveniente, los asistentes pueden participar de un post test para medir los conocimientos adquiridos en desarrollo de software, a continuación se encuentra el enlace para acceder.
El enlace aún no se ha habilitado. Consultar con el administrador.

16 comentarios:

  1. muy buen blog bastante completo y funcional, muy practico y organizado 10/10.

    ResponderBorrar
  2. Realmente me sirvió para aprender un poco más sobre porgramación en C#, gracias por el blog.

    ResponderBorrar
  3. Concuerdo con Jhon Jairo, el blog es muy completo >_<
    :v:

    ResponderBorrar
  4. La solución al primer ejercicio podría ser con el siguiente código:

    class Program
    {
    static void Main(string[] args)
    {
    int Número1, Número2, Suma, Resta, División, Multiplicación;
    inicio:
    Console.WriteLine(" Menú de Opciones ");

    Console.WriteLine("1.Suma");
    Console.WriteLine("2.Resta");
    Console.WriteLine("3.División");
    Console.WriteLine("4.Multiplicación");
    Console.WriteLine("¿Qué Operación Desea Realizar?");
    int op = int.Parse(Console.ReadLine());
    if (op == 1)
    {
    Console.WriteLine("Digite el Primer Número: ");
    Número1 = int.Parse(Console.ReadLine());
    Console.WriteLine("Digite el Segundo Número: ");
    Número2 = int.Parse(Console.ReadLine());
    Suma = Número1 + Número2;
    Console.WriteLine("El Resultado de la Suma es: " + Suma);
    }
    if (op == 2)
    {
    Console.WriteLine("Digite el Primer Número: ");
    Número1 = int.Parse(Console.ReadLine());
    Console.WriteLine("Digite el Segundo Número: ");
    Número2 = int.Parse(Console.ReadLine());
    Resta = Número1 - Número2;
    Console.WriteLine("El Resultado de la Resta es: " + Resta);
    }
    if (op == 3)
    {
    Console.WriteLine("Digite el Primer Número: ");
    Número1 = int.Parse(Console.ReadLine());
    Console.WriteLine("Digite el Segundo Número: ");
    Número2 = int.Parse(Console.ReadLine());
    División = Número1 / Número2;
    Console.WriteLine("El Resultado de la División es: " + División);

    }
    if (op == 4)
    {
    Console.WriteLine("Digite el Primer Número: ");
    Número1 = int.Parse(Console.ReadLine());
    Console.WriteLine("Digite el Segundo Número: ");
    Número2 = int.Parse(Console.ReadLine());
    Multiplicación = Número1 * Número2;
    Console.WriteLine("El Resultado de la Resta es: " + Multiplicación);
    }
    Console.WriteLine("¿Desea Elegir Otra Operación?");
    Console.WriteLine("1=SI");
    Console.WriteLine("2=NO (Cerrar)");
    int op2 = int.Parse(Console.ReadLine());
    if (op2 == 1)
    {
    goto inicio;
    }
    if (op2 == 2)
    {
    Environment.Exit(0);
    }
    Console.ReadKey();
    }

    }

    }

    ResponderBorrar
  5. Creo que podrías mostrar un código simple y funcional como:

    {
    class Program
    {
    static void Main(string[] args)
    {
    List nose = new List ();
    /*nose.Add("Peter");
    nose.Add("Jonny");
    nose.Add("Jose");
    nose.Add("Afedo");
    nose.Add("GreenBull");*/
    for (int i = 0; i < 3; i++)
    {
    Console.Write("Ingrese Los Utiles escolares: ");
    string escolar = Console.ReadLine();
    nose.Add(escolar);
    }
    foreach (string escolar in nose)
    {
    Console.WriteLine(escolar);
    }
    //Console.WriteLine("Los datos son: " + "\n" + nose[0] + "\n" + nose[1] + "\n" + nose[2] + "\n" + nose[3] + "\n" + nose[4] + "\n");
    Console.ReadKey();
    }
    }
    }

    ResponderBorrar
  6. hola, creen que pueden darme la solución a el siguiente problema " imprimir por pantalla los números primos que hay entre dos números

    ResponderBorrar
    Respuestas
    1. int num1, num2;
      int veces = 0;

      Console.WriteLine("Imprimir los numeros primos entre dos numeros digitados por el usurio\n");
      Console.WriteLine("digite el primer numero que debe ser mayor o igual a 1");
      num1 = Convert.ToInt32(Console.ReadLine());
      Console.WriteLine("digite el segundo numero numero que debe ser mayor al primero");
      num2 = Convert.ToInt32(Console.ReadLine());

      if(num1<1||num2<1)
      {
      Console.WriteLine("numeros no permitidos");
      }
      else
      {
      Console.WriteLine("numeros permitidos");
      for(int i=num1;i<=num2;i++)
      {
      for(int b=1;b<=i;b++)
      {
      if (i % b == 0)
      {
      veces = veces + 1;


      }




      }
      if (veces == 2)
      {
      Console.WriteLine(i);
      }
      veces = 0;

      }
      }


      Console.ReadKey();

      Borrar
    2. Buenas tardes ITACHI KUN
      Para poder resolver el ejercicio propuesto es necesario que conozcas el concepto de Número Primo y también conocer el funcionamiento del operador % (mod) puedes consultarlo en el siguiente enlace: https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/operators/remainder-operator

      Aquí te dejo el código que puede aclarar tus dudas:

      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Text;
      using System.Threading.Tasks;

      namespace NumeroPrimo
      {
      class Program
      {
      static void Main(string[] args)
      {
      int veces = 0;
      Console.Write("Imprimir los números primos entre dos números digitados por el usuario");
      Console.WriteLine("\n");
      Console.Write("Digite el primer número que debe ser igual o mayor que 1: ");
      int num1 = Convert.ToInt32(Console.ReadLine());
      Console.Write("Digite el segundo número que debe ser mayor que el primero: ");
      int num2 = Convert.ToInt32(Console.ReadLine());
      if(num1<1 || num2<1)
      {
      Console.Write("Números no permitidos");
      }
      else
      {
      for(int i=num1;i<=num2;i++)
      {
      for(int j=1;j<=i;j++)
      {
      if(i%j==0)
      {
      veces = veces + 1;

      }

      }
      if (veces == 2)
      {
      Console.WriteLine(i);
      }
      veces = 0;


      }

      }
      Console.ReadKey();
      }
      }
      }

      Borrar
  7. Buenas tardes estimados colegas, los invito a visitar este blog con contenidos interesantes sobre programación en C#. http://losprogramasencsharp2013.blogspot.com/2013/02/
    El Blog es de JACOBO un estudiante de Ingenieria de Sistemas de la Universidad de Coahuila Mexico.

    ResponderBorrar