Videotutorial 12: Resumen Programación A - PDF

Summary

This document is a videotutorial covering programming concepts, including variables, data types, and control flow statements. It provides an overview of fundamental programming, focusing on core programming techniques relevant to programming courses.

Full Transcript

MÓDULO 03 Videotutoría 12: Resumen Programación A Ejercicio 1 Gestión de participantes en una prueba de ciclismo (Ver anuncio) CONCEPTOS INICIALES: Programa ¿Alguna vez te has parado a pensar en cómo se crea...

MÓDULO 03 Videotutoría 12: Resumen Programación A Ejercicio 1 Gestión de participantes en una prueba de ciclismo (Ver anuncio) CONCEPTOS INICIALES: Programa ¿Alguna vez te has parado a pensar en cómo se crean los juegos para ordenador o consola con los que te entretienes? ¿Y las aplicaciones ofimáticas con las que trabajas (Docs, Sheets, Slides…) o las que usas habitualmente en el teléfono móvil (apps)? Todos ellos responden, de forma general, al nombre de programas. La parte de la informática que estudia cómo se crean se denomina programación. Y la persona que se encarga de crearlas es el programador. Programar consiste en ordenar a una máquina, mediante una serie de instrucciones que siguen una secuencia bien definida, que realice una tarea. Esa serie de instrucciones que un ordenador se denomina PROGRAMA Lenguaje de programación Algoritmo Un algoritmo es una secuencia de pasos o instrucciones que hay que seguir para llegar al resultado que queremos obtener. El algoritmo, es decir, las instrucciones, han de ser claras y sencillas para que cualquier persona pueda seguirlas sin ningún problema. Antes de programar cualquier tarea hay que diseñar su algoritmo, es decir, trazar un plan de trabajo que la resuelva por medio de pasos sencillos. Un algoritmo para un programa se representa por un gráfico llamado diagrama de flujo, y lo estudiaremos al final de este tema. Variables en C# class Program { const int num=1; int numero2 = 8; static void Main(string[] args) { int numero = 10; Double num2= 3.4; char letra = ‘a’; string cadena = “Esta es una cadena”; } } Variables numéricas Operaciones Especiales ¡¡Especiales >> Multiplicación y división >> Sumas y restas!! Se puede variar utilizando paréntesis: media = (n1+n2)/2 Variables booleanas Variables alfanuméricas Operaciones con String Caracteres especiales Uso ¡¡Uso de paréntesis muy importante!! Cada función lleva sus paréntesis, aunque no contengan nada. Conversión de variables en C# Conversiones implícitas Conversiones explícitas Instrucciones condicionales If If..Else If..Else If..Else Instrucciones condicionales Switch / Case Bucles While Do…While For ¿Qué son los tipos de datos compuestos? o o Vectores (arrays unidimensionales) [] = new []; Matrices (arrays bidimensionales) [,] = new [, ]; PROGRAMACIÓN MODULAR Concepto Ventajas La programación modular consiste en Facilita el mantenimiento, la dividir el problema original en modificación y la documentación diversos subproblemas, que se Facilita las pruebas (Testing) pueden resolver por separado, para, Reutilización de módulos después, recomponer los resultados y Independencia de fallos obtener la solución al problema. Desventajas Un subproblema se denomina módulo (función o procedimiento), y es una No se dispone de algoritmos formales parte del problema que se puede de modularidad, por lo que a veces los resolver de manera independiente. programadores no tienen claras las ideas de los módulos → experiencia PROGRAMACIÓN MODULAR ¿Qué partes forman un SUBPROGRAMA en la sintaxis de C#? Modificador Public Protected Tipo Private Internal Parámetros de Entrada Nombre Subprograma: Código de la función. En este caso es SOLO DE ESA FUNCIÓN una Función NI DEL MAIN NI DE NINGÚN OTRO CÓDIGO Valor de retorno ¿Cómo se llamaría a esa función en el MAIN? PASO POR VALOR Y PASO POR REFERECIA Paso de parámetros por valor Paso de parámetros por referencia PASO POR VALOR Cuando ejecutamos una función que tiene parámetros pasados por valor, se realiza una copia del parámetro que se ha pasado, es decir, que todas las modificaciones y/o cambios que se realicen se están haciendo en esta copia que se ha creado. El original no se modifica, de manera que no se altera su valor en la función. PASO POR REFERENCIA Sin embargo, cuando ejecutamos una función que tiene parámetros pasados por referencia, todas aquellas modificaciones que se realicen en la función van a afectar a sus parámetros, ya que se trabaja con los originales. params, in y out static void Ejemplo(params int numero) static void Ejemplo(in int numero) static void Ejemplo(out int numero) RECURSIVIDAD ¿Qué tiene que tener un método recursivo? static void cuentaAtras(int numero){ - Que se llame a si mismo en un método Console.Write(numero + "-"); - Que tenga un condición de parada if (numero>0){ cuentaAtras(numero - 1); void cuentaAtras () { } } cuentaAtras(); } static void cuentaAtras(int numero){ for (int i = numero; i >= 0; i--){ Console.Write(i + "-"); } } LIBRERÍAS Una librería es un conjunto de métodos relacionados con el mismo objetivo para poder ser reutilizado cada vez que el programador lo desee. Están basadas en clases Using System; Invocamos el namespace System para acceder a todas las librerías dentro de ese espacio de nombres. Es como una carpeta de clases. Dentro del namespace System podemos encontrar otras subcarpetas (como Linq) y las librerías (clases): Math Enum Convert Console Random …y muchas otras Nosotros estamos introduciendo nuestro programa en el espacio de nombres VideoTutorias, para poder llamarlo desde una clase externa, habría que hacerlo llamando a la clase VideoTutorias.Program (Formato: namespace.class) System.IO CLASE DESCRIPCION Proporciona métodos estáticos para crear, copiar, eliminar, mover y abrir File un solo archivo. Contribuye a la creación de objetos FileStream Proporciona un Stream para un archivo, lo que permite operaciones FileStream de lectura y escritura sincrónica y asincrónica Es una clase que el programa va a usar para guardar la información de un fichero que se abre por extracción de datos (Lectura, Read). StreamReader Lectura de datos en archivo secuencial (habrá un error si el archivo no existe). Es una clase que el programa va a usar para guardar la información de StreamWriter un fichero que se abre para escritura (write, escribir).

Use Quizgecko on...
Browser
Browser