Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.

Slides:



Advertisements
Presentaciones similares
Arreglos Unidimensionales y Bidimensionales ESTRUCTURAS DE DATOS I
Advertisements

Estrella 0 - Fundamentos de la Programación
PROF. ING. JULIO CESAR CANO RAMIREZ
Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas.
Introducción a los Algoritmos
Lenguajes de programación
UNIDAD II: ALGORITMOS Y LENGUAJES
Computación PROGRAMACIÓN.
Ing. Esp. Ricardo Cujar. El computador: es una máquina que permite hacer tareas aritmético y lógicas de una manera fácil, consta de software y hardware.
Introducción a la Programación
Técnico en programación de Software
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
UNIVERSIDAD LATINA (UNILA) IV. IMPLANTACION DE ALGORITMOS.
Metodología de la Programación
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
3. INTRODUCCIÓN A LA PROGRAMACIÓN
Estructuras de control
Programas Son una serie o secuencia de instrucciones entendibles por los ordenadores que permiten la realización de las acciones o tareas para las que.
METODOLOGIA DE LA PROGRAMACION
Funciones en lenguaje C
Tema 6. Conceptos básicos de programación
ESTRUCTURAS DE CONTROL
Fundamentos de Programación
Programación de Computadores
FORMULACIÓN DE ALGORITMOS
Semana 5 Subprogramas..
ALGORITMOS.
Departamento de Informática Universidad Técnica Federico Santa María Capítulo 2 “Subprogramas/Funciones - Arreglos” Arreglos-Arrays.
CARACTERÍSTICAS DE LOS PROGRAMAS
Clase 10: Estructuras de datos y arreglos.
Programación I Universidad Nacional de Luján
Programación IMC José Andrés Vázquez Flores. Definición Un arreglo es un conjunto finito e indexado de elementos homogéneos, que se referencian por un.
LENGUAJE DE PROGRAMACIÓN
PROGRAMACIÓN PROCEDIMENTAL
Tae Programación WEB Ventajas de los ordenadores ( compus pa los cuates ) Que es la Programación? Que es un lenguaje de programación? Algoritmo Que es.
Diseño de algoritmos La computadora puede realizar procesos y darnos resultados, sin que tengamos la noción exacta de las operaciones que realiza. Con.
Fundamentos de programación Organización de una computadora.
Fundamentos de Programación Resolución de Problemas con Computadoras y Herramientas de Programación.
Figure: Algoritmos Conceptos básicos. Programación: 1.Establecer una secuencia de acciones que: puedan ser ejecutadas por el procesador realicen una.
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
Fundamentos de Programación
PENSAMIENTO ANALÍTICO SISTÉMICO DAISY KATERINE RODRÍGUEZ DURÁN
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
PROGRAMAS INFORMATICOS
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
PEDRO ALBERTO ARIAS QUINTERO. El shell es un intérprete de órdenes, los intérpretes de órdenes de Linux son auténticos lenguajes de programación. Como.
Metodología de la programación
TEMA1:Introducción 1 1. Programación 2. Lenguajes de Programación 3. Ordenador.
SOFTWARE Jennifer Giselle De Diego Romero NL:9
Computación I (CI-2125) Clase 2 Prof. Mireya Morales.
Elaboración de algoritmos usando lógica de programación
Lenguaje programación
2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 9: Funciones, variables y arreglos en BASH Nombre.
Presente un cuestionario con los aspectos mas importantes sobre los
M.S.C. Ivette Hernández Dávila
Software.
Introducción a los TADs
Lic. Carla Aguirre Montalvo
INTRODUCCION A LOS ALGORITMOS. MENU DEL DIA Fases para el desarrollo de un programa. Partes de un programa. Ejecución de un programa. Anatomía de un programa.
Las funciones son librerías ya estandarizadas que permiten al usuario realizar sus respectivas programaciones. Una función es un conjunto de líneas de.
Software.
 Panorama General Fundamentos de Programación M.I. Jaime Alfonso Reyes Cortés.
Fundamentos de Programación Unidad I Conceptos Básicos.
Lenguajes de la Programación Clase numero 2. Temario Modulo I - Introducción al programa +MAS - Programación Orientada a Objetos. (1ra Parte) - Introducción.
Tema 8: Programación estructurada Introducción La importancia del conocimiento de programación es mucho mayor de lo que se piensa. Aprender a programar.
La programación modular es un paradigma de programación que consiste en dividir un programa en módulos o subprogramas con el fin de hacerlo más legible.
Programación Computadoras V Conceptos Generales Profesor: Elian Rojas Berrocal.
LE, EI, Profesor Ramón Castro Liceaga UNIVERSIDAD LATINA (UNILA) IV. IMPLANTACION DE ALGORITMOS.
ALGORITMOS Asignatura: Informática. Algoritmos Conjunto de instrucciones ordenadas de forma lógica y precisa, con un inicio y fin que permite resolver.
Transcripción de la presentación:

Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones

Prerrequisitos El presente curso asumirá conocimientos básicos de Computadora Computadora Dispositivos de Entrada/Salida Dispositivos de Entrada/Salida Organización Física de una computadora (CPU, Memoria) Organización Física de una computadora (CPU, Memoria) Sistemas Operativos Sistemas Operativos

El Software Las operaciones que debe realizar el hardware son especificadas con una lista de instrucciones, llamadas programas o software. Dos grandes grupos de software Software del Sistema Software del Sistema Indispensable para que la máquina funcione y poder escribir programas de aplicación Indispensable para que la máquina funcione y poder escribir programas de aplicación Software de Aplicación Software de Aplicación Realizan tareas concretas que tienen utilidad para ciertos usuarios Realizan tareas concretas que tienen utilidad para ciertos usuarios

Lenguajes de Programación (1/2) Lenguajes utilizados para escribir programas de computadoras que puedan ser entendidos por ellas Se clasifican en tres grandes categorías lenguajes de máquina lenguajes de máquina instrucciones directamente entendibles por la computadora (lenguaje binario) instrucciones directamente entendibles por la computadora (lenguaje binario) lenguajes de bajo nivel lenguajes de bajo nivel Proveen un juego de instrucciones más comprensibles por los humanos Proveen un juego de instrucciones más comprensibles por los humanos lenguajes de alto nivel lenguajes de alto nivel

Lenguajes de Programación (2/2) Lenguajes de alto nivel Utilizan instrucciones escritas con palabras similares a los lenguajes humanos Utilizan instrucciones escritas con palabras similares a los lenguajes humanos Son independientes de la máquina en la que se ejecutan Son independientes de la máquina en la que se ejecutan Necesitan ser traducidos a instrucciones en lenguaje máquina (Compilación) Necesitan ser traducidos a instrucciones en lenguaje máquina (Compilación) Existen diversos tipos Estructurados Estructurados Orientados a Objetos Orientados a Objetos Declarativos Declarativos Funcionales Funcionales

Resolución de problemas con computadora El proceso de diseñar un programa es, esencialmente, un proceso creativo. Sin embargo, hay una serie de pasos comunes a seguir: Análisis del problema Análisis del problema Diseño del algoritmo solución Diseño del algoritmo solución Codificación Codificación Compilación y Ejecución Compilación y Ejecución Verificación Verificación Depuración Depuración Documentación Documentación

Entorno de Programación También conocidos como IDEs Herramienta esencial a la hora de desarrollar software Incluye Editor Editor Intérprete o Compilador Intérprete o Compilador Depurador Depurador Ayuda en línea Ayuda en línea

Tipos de Datos Datos: piezas de información con las que un programa trabaja Cada dato tiene asociado un único Tipo El Tipo de Dato determina la naturaleza del conjunto de valores que un dato puede tomar Ejemplos: Número Entero Número Entero Número Real Número Real Cadena de Caracteres Cadena de Caracteres Valor Lógico (Verdadero o Falso) Valor Lógico (Verdadero o Falso)

Variables y Constantes Existen dos grupos principales de datos Constantes: su valor no puede cambiar durante la ejecución de un programa Constantes: su valor no puede cambiar durante la ejecución de un programa Variables: su valor puede cambiar durante la ejecución de un programa Variables: su valor puede cambiar durante la ejecución de un programa Ambas tienen un nombre y un valor Ambas permiten representar mediante un nombre a una posición de memoria que contiene el valor

Sentencias Describen acciones algorítmicas que pueden ser ejecutadas Se clasifican en Ejecutables / No ejecutables Ejecutables / No ejecutables Simples / Estructuradas Simples / Estructuradas

Operadores y Expresiones (1/2) Sirven para procesar variables y constantes Una expresión es un conjunto de datos unidos por operadores que tiene un único resultado Expresiones aritméticas Expresiones aritméticas El resultado es un número El resultado es un número a = ((2+6) / 8) * 3 a = ((2+6) / 8) * 3 Expresiones lógicas Expresiones lógicas El resultado es un valor verdadero o falso El resultado es un valor verdadero o falso (a 50) (a 50)

Operadores y Expresiones (2/2) Existen diversos tipos Aritméticos: suma, resta, multiplicación, etc. Aritméticos: suma, resta, multiplicación, etc. De relación: igual, mayor, menor, distinto, etc. De relación: igual, mayor, menor, distinto, etc. Lógicos: and, or, not, etc. Lógicos: and, or, not, etc.

Estructuras de Control El orden de ejecución de las sentencias de un programa determina su flujo de control Las estructuras de control permiten alterar el orden del flujo de control Existen dos tipos básicos De Selección De Selección De Repetición o Iteración De Repetición o Iteración

Estructuras de Control Selectivas (1/2) Dirigen el flujo de ejecución según el resultado de evaluación de expresiones IF si expresion_logica si expresion_logica entonces hacer acción A sino hacer acción B sino hacer acción Bfin_si

Estructuras de Control Selectivas (2/2) CASE según_sea selector hacer según_sea selector hacer C11,C12,…: sentencia 1 C21,C22,…: sentencia 2 C21,C22,…: sentencia 2….. [sino sentencia x] fin_según

Estructuras de Control Repetitivas (1/3) Permiten ejecutar un conjunto de sentencias repetidamente una cierta cantidad de veces o hasta que se cumpla una determinada condición El conjunto de sentencias se denomina bucle Cada repetición del cuerpo del bucle se denomina iteración

Estructuras de Control Repetitivas (2/3) WHILE mientras condición hacer mientras condición hacersentencia/s…..fin_mientras

Estructuras de Control Repetitivas (3/3) FOR desde hasta hacer desde variable  valor_inicial hasta valor_final hacersentencia/s…..fin_desde

Procedimientos y Funciones (1/4) Descomposición en subprogramas: estrategia para resolver problemas complejos Los subprogramas se implementan a través de procedimientos y funciones Compuestos por un grupo de sentencias Compuestos por un grupo de sentencias Se les asigna un nombre Se les asigna un nombre Pueden invocarse entre sí utilizando ese nombre Pueden invocarse entre sí utilizando ese nombre Constituyen una unidad de programa Constituyen una unidad de programa

Procedimientos y Funciones (2/4) Los procedimientos y funciones se comunican con su invocador a través de parámetros. Los parámetros son un medio para pasar información, implementados a través de variables con valor. Tipos de parámetro De Entrada: su valor es proporcionado por el invocador antes de llamar al subprograma De Entrada: su valor es proporcionado por el invocador antes de llamar al subprograma De Salida: su valor es calculado dentro de un subprograma y devuelto a su invocador De Salida: su valor es calculado dentro de un subprograma y devuelto a su invocador

Procedimientos y Funciones (3/4) Ejemplo: Definición Definición procedimiento CalcularSuma( parámetro1 entero, parámetro2 entero) devuelve entero devolver parámetro1 + parámetro2 fin_procedimiento Invocación desde el programa principal u otro subprograma Invocación desde el programa principal u otro subprograma número entero a = 2 número entero b = 3 número entero c = CalcularSuma(a,b) carácter d = CalcularSuma(a,b)  ERROR

Procedimientos y Funciones (4/4) Ventajas de utilizar procedimientos Facilita el diseño descendiente y modular Facilita el diseño descendiente y modular Promueven la reutilización de código Promueven la reutilización de código Facilita la división de tareas Facilita la división de tareas Pueden comprobarse individualmente Pueden comprobarse individualmente Pueden encapsularse en bibliotecas independientes Pueden encapsularse en bibliotecas independientes

Visibilidad de Variables Variable Local: Declarada en un subprograma Declarada en un subprograma Sólo está disponible durante el funcionamiento del subprograma Sólo está disponible durante el funcionamiento del subprograma Su valor se pierde una vez que el subprograma termina Su valor se pierde una vez que el subprograma termina Variable Global: Declarada en el programa principal Declarada en el programa principal Está disponible en el programa principal y en todos los subprogramas Está disponible en el programa principal y en todos los subprogramas Su valor se pierde una vez que el programa principal termina Su valor se pierde una vez que el programa principal termina

Bibliotecas Archivo independiente que contiene un conjunto de subprogramas Pueden ser incluidas y referenciadas en el desarrollo de múltiples programas Facilitan la modularización de un programa Desarrollo  Programa Fuente Compilación  Programa Objeto Link-Edición  Programa Ejecutable

Arrays (Arreglos) (1/3) Son estructuras de datos en las que se almacenan un conjunto de datos finitos del mismo tipo Almacenan sus elementos en posiciones de memoria contiguas Almacenan sus elementos en posiciones de memoria contiguas Tienen un único nombre de variable que representa a todos los elementos Tienen un único nombre de variable que representa a todos los elementos Permiten acceso directo o aleatorio a sus elementos individuales Permiten acceso directo o aleatorio a sus elementos individuales Los arrays se clasifican en unidimensionales y multidimensionales.

Arrays (Arreglos) (2/3) Arrays unidimensionales (Vectores) Número finito de elementos Número finito de elementos Tamaño Fijo Tamaño Fijo Elementos Homogéneos Elementos Homogéneos Se accede a los elementos utilizando el nombre del array y el subíndice específico Se accede a los elementos utilizando el nombre del array y el subíndice específicoEjemplo: salarios(3) Reales  Nombre del array, de 3 posiciones que contendrán número reales salarios(3) Reales  Nombre del array, de 3 posiciones que contendrán número reales salarios[1] = 23,4  Asignación de un valor al primer elemento del array salarios[1] = 23,4  Asignación de un valor al primer elemento del array

Arrays (Arreglos) (3/3) Arrays multidimensionales Arrays bidimensionales (Matrices o Tablas) Arrays bidimensionales (Matrices o Tablas) Tienen dos índices, uno para filas y otro para columnas Tienen dos índices, uno para filas y otro para columnas Ejemplo: Ejemplo: tabla(3,3) enteros  Declaración de una matriz de 3 por 3 tabla [1][1] = 2  Elemento de la primer fila y primer columna tabla [2][3] = 5  Elemento de la segunda fila y la tercer columna

El estilo de Programación Una de las características más importantes de un buen programador Un buen estilo facilita la comprensión, corrección y mantenimiento de un programa Algunos puntos a tener en cuenta Comentarios Comentarios Elección de nombres significativos Elección de nombres significativos Identación Identación Espacios y Líneas en Blanco Espacios y Líneas en Blanco Validación usando datos de prueba Validación usando datos de prueba