ALGORITMOS Y ESTRUCTURA DE DATOS I

Tamaño: px
Comenzar la demostración a partir de la página:

Download "ALGORITMOS Y ESTRUCTURA DE DATOS I"

Transcripción

1

2 UNIVERSIDAD TECNOLÓGICA DEL PERÚ Vicerrectorado de Investigación ALGORITMOS Y ESTRUCTURA DE DATOS I TINS INGENIERÍA INDUSTRIAL, INGENIERÍA DE SISTEMAS TEXTOS DE INSTRUCCIÓN (TINS) / UTP Lima - Perú 1

3 ALGORITMOS Y ESTRUCTURA DE DATOS I Desarrollo y Edición: Vicerrectorado de Investigación Elaboración del TINS: Diseño y Diagramación: Soporte académico: Producción: Ing. Carlos Parra Terrazos Julia Saldaña Balandra Instituto de Investigación Imprenta Grupo IDAT Queda prohibida cualquier forma de reproducción, venta, comunicación pública y transformación de esta obra. 2

4 El presente material contiene una compilación de contenidos de obras Algoritmos y Estructura de Datos publicadas lícitamente, resúmenes de los temas a cargo del profesor; constituye un material auxiliar de enseñanza para ser empleado en el desarrollo de las clases en nuestra institución. Éste material es de uso exclusivo de los alumnos y docentes de la Universidad Tecnológica del Perú, preparado para fines didácticos en aplicación del Artículo 41 inc. C y el Art. 43 inc. A., del Decreto Legislativo 822, Ley sobre Derechos de Autor. 3

5 4

6 PRESENTACIÓN El presente texto elaborado en el marco de desarrollo de la Ingeniería, es un material de ayuda instruccional, para las carreras de Ingeniería de: Sistemas, Industrial, Electrónica, Mecatrónica y Telecomunicaciones, para la Asignatura de Algoritmos y Estructura de Datos. Plasma la iniciativa institucional de innovación de la enseñanza-aprendizaje educativo universitario, que en acelerada continuidad promueve la producción de materiales educativos, actualizados en concordancia a las exigencias de estos tiempos. Esta primera edición apropiadamente recopilada, de diversas fuentes bibliográficas, de uso frecuente en la enseñanza de Algoritmos, está ordenada en función del syllabus de la Asignatura, arriba mencionada. La conformación del texto ha sido posible gracias al esfuerzo y dedicación académica del Profesor Ing. Carlos Parra Terrazos; contiene seis capítulos, cuyas descripciones genéricas son como sigue: Capítulo 1: Conceptos fundamentales. Antes de introducirnos en el contenido de este manual será necesario conocer los conceptos básicos que nos ayudaran a tener un panorama general y entender con mayor facilidad los siguientes capítulos. Aprenderemos a diferenciar un algoritmo de un programa y de un lenguaje de programación, así como conocer la importancia de los tipos de datos y los datos para la programación. Capítulo 2: Estructura general de un programa. En este capítulo encontraremos el concepto de Programa, las partes que lo conforman e introduciremos al estudiante en el proceso de la programación a partir de la presentación de programas en lenguaje C. También se detallarán las instrucciones y sus tipos. Capítulo 3: Estructuras de control. Durante un programa existen acciones que cambian el flujo de control de un programa estas estructuras básicas de acuerdo a la programación estructurada son: La estructura secuencial, la estructura selectiva o condicional y la estructura repetitiva o de iteración; necesarias para poder diseñar algoritmos de cualquier grado de dificultad. 5

7 Capítulo 4: Subprogramación. Modularidad es un concepto que tiene aplicaciones en la ciencia de la computación, particularmente para permitir manejar la complejidad de los programas a partir del concepto de divide y vencerás cuya implementación se lleva a cabo mediante el diseño descendente y refinamientos sucesivos así como su implementación mediante las funciones y procedimientos. Capítulo 5: Recursividad. Este capítulo nos detallará la recursividad en Algoritmos, esta herramienta es muy útil en la solución de problemas; ya que transforma a éstos en problemas más sencillos a partir de la llamada de los programas, a si mismos. Capítulo 6: Datos estructurados. Los datos se clasifican en datos simples y datos estructurados o estructuras de datos que son una forma de organizar un conjunto de datos para poder manipularlos con mayor facilidad, como si se tratase de uno solo. En esta parte se conocerán los arreglos, los registros y las cadenas de caracteres. Finalmente, al cierre de estas líneas, el agradecimiento institucional al profesor Ing. Carlos Parra Terrazos por su contribución a la elaboración del presente texto. Vicerrectorado de Investigación 6

8 ÍNDICE CAPÍTULO I: CONCEPTOS FUNDAMENTALES 1.1 CONCEPTO DE ALGORITMO, EL SOFTWARE, LENGUAJES DE PROGRAMACION RESOLUCIÓN DE PROBLEMAS CON COMPUTADORA - FASES HERRAMIENTAS DE PROGRAMACIÓN TIPOS DE DATOS CONSTANTES, VARIABLES, IDENTIFICADORES, EXPRESIONES, FUNCIONES PARTE PRÁCTICA PROBLEMAS PROPUESTOS LABORATORIO Nº CAPÍTULO II: ESTRUCTURA GENERAL DE UN PROGRAMA 2.1 ESTRUCTURA DE UN PROGRAMA EN C ESTRUCTURA DE ALGORITMO CONTADORES, ACUMULADORES PARTE PRÁCTICA PROBLEMAS PROPUESTOS LABORATORIO Nº CAPÍTULO III: ESTRUCTURAS DE CONTROL 3.1 PROGRAMACIÓN ESTRUCTURADA ESTRUCTURA DE CONTROL TIPOS PARTE PRÁCTICA PROBLEMAS PROPUESTOS LABORATORIO Nº CAPÍTULO IV: SUBPROGRAMACIÒN 4.1 PROGRAMACIÓN MODULAR SUBPROGRAMAS TIPOS VARIABLES GLOBALES Y LOCALES FUNCIONES, PASO DE PARÁMETROS PARTE PRÁCTICA PROBLEMAS PROPUESTOS LABORATORIO Nº

9 CAPÍTULO V: RECURSIVIDAD 5.1 RECURSIVIDAD CARACTERÍSTICAS VENTAJAS Y DESVENTAJAS PELIGROS EN LA RECURSIVIDAD TIPOS DE ALGORITMOS RECURSIVOS VERIFICACIÓN DE FUNCIONES RECURSIVAS LA PILA DE RECURSIÓN LLAMADA A UNA FUNCIÓN RECURSIVA PARTE PRÁCTICA PROBLEMAS PROPUESTOS LABORATORIO Nº CAPÍTULO VI: DATOS ESTRUCTURADOS 6.1 TIPOS ARREGLOS UNIDIMENSIONALES, DECLARACION Y ACCESO ARREGLOS BIDIMENSIONALES, DECLARACION Y ACCESO REGISTROS CONCEPTO DECLARACION Y ACCESO ARREGLO DE REGISTROS CADENAS DE CARACTÉRES PARTE PRÁCTICA PROBLEMAS PROPUESTOS: LABORATORIO Nº BIBLIOGRAFÍA

10 DISTRIBUCIÓN TEMÁTICA Clase N TEMA SEMANA 1 Conceptos Fundamentales 1 2 Tipo de datos 2 3 Estructura general de un programa 3 4 Estructuras de control 4 5 Selectiva doble Selectiva múltiple 5 6 Selectiva de control (SEGÚN SEA) 6 7 Iterativa (REPETIR DESDE) 7 8 Iterativa (REPETIR - MIENTRAS ) 8 9 Revisión Nivelación 9 10 E X A M E N P A R C I A L Subprogramación Procedimientos de paso de parámetros Recursividad Datos Estructurados 14 9

11 Clase N TEMA SEMANA 15 Arreglos bidimensionales Declaración y acceso Registros Cadena de caracteres Índices Nivelación Recuperación EXAMEN FINAL EXAMEN SUSTITUTORIO 21 10

12 CAPÍTULO I: CONCEPTOS FUNDAMENTALES 1.1 CONCEPTO DE ALGORITMO, EL SOFTWARE, LENGUAJES DE PROGRAMACIÓN a) CONCEPTOS DE ALGORITMO Un algoritmo es un conjunto finito de instrucciones o pasos con una secuencia lógica que sirven para ejecutar una tarea o resolver un problema. De un modo más formal, un algoritmo es una secuencia lógica finita de operaciones realizables, no ambiguas, cuya ejecución da una solución de un problema en un tiempo finito. - COMPONENTES DE UN ALGORITMO Entrada : Datos del problema a resolver. Salida : El resultado de la resolución. Procesos : Paso a seguir en la resolución. - CARACTERÍSTICAS DE UN ALGORITMO PRECISIÓN Solución clara sin ambigüedad. REPETITIVIDAD Idénticos resultados en las mismas condiciones iniciales. FINITUD Solución en un tiempo finito. EFICIENCIA Tiempo de ejecución. Requerimiento de memoria. - ALGORITMO VS LENGUAJE DE PROGRAMACIÓN Un lenguaje de programación es tan solo un medio para expresar un algoritmo. EJEMPLO Nº 1 Un cliente efectúa un pedido a una compañía, La compañía verifica en su banco de datos la ficha del cliente, si el cliente es solvente entonces la compañía acepta el pedido; en caso 11

13 contrario, rechazará el pedido. Realizar el algoritmo del ejemplo. Los pasos del algoritmo son: 1. Inicio 2. Leer el pedido 3. Verificar la ficha del cliente 4. Si el cliente es solvente, aceptar pedido; en caso contrario, rechazar pedido. 5. Fin CONCEPTO DE PROGRAMA Un programa es una secuencia de instrucciones de la CPU. Cada instrucción es un conjunto de bytes. Conjunto de instrucciones dado al ordenador para realizar un proceso determinado. EJEMPLO Nº 2 1. Leer un dato del teclado. 2. Guardar un dato en la memoria. 3. Ejecutar una operación sobre los datos. 4. Mostrar un dato en la pantalla. b) CONCEPTO DE SOFTWARE Es la parte lógica de la computación. Conjunto de programas que sirven para representar un segmento de la realidad y resolver un problema. Como por ejemplo: el Office, un sistema operativo, C++, Pascal, Java, etc. c) LENGUAJES DE PROGRAMACIÓN Son aquellos lenguajes que se utilizan para realizar algoritmos interpretables por la computadora. Características imprescindibles Estructura de Control. Programación Modular (funciones). Los principales tipos de lenguajes utilizados antes y en la actualidad son tres: 12

14 Lenguaje máquina. Lenguaje de bajo nivel (ensamblador). Lenguajes de alto nivel: C, C++, Visual Basic, Java, Pascal, Prolog. 1.2 RESOLUCIÓN DE PROBLEMAS CON COMPUTADORA - FASES Actualmente la resolución de problemas con computadoras facilita el trabajo del usuario, debido a la gran velocidad de esta herramienta (computadora). El siguiente esquema nos muestra las fases de la resolución de problemas con computadora. 13

15 FASE Nº 01: ANÁLISIS DEL PROBLEMA EJEMPLO Nº 3 Imprimir la hipotenusa, teniendo los lados de un triangulo rectángulo. Variables: LADO1, LADO2 y LADO3 (tipo reales). Entradas: Valores de los lados (variable LADO1 y variable LADO2). Salida: Valor de la hipotenusa (variable LADO3). FASE Nº 02: DISEÑO DEL ALGORITMO 14

16 EJEMPLO Nº 4 Determine a los números menores que 90 y múltiplos de 9, así como su sumatoria. Definicióndel Problema problema Especificacione s de entrada Especificacione s de salida Imprimir múltiplos de 9 y su suma siempre y cuando sea menor que 90 TOTAL = 0 NUM = 9 LIMITE = 90 NUM, TOTAL FASE Nº 03: SOLUCIÓN DEL PROBLEMA POR COMPUTADORA Traducción del algoritmo al lenguaje de programación. La complejidad depende mucho del lenguaje escogido. Imprescindible: Conocimiento de la sintaxis del lenguaje. Buenos diseños del Algoritmo + Traducción casi automática Lenguaje estructurado FASE Nº 04: VERIFICACIÓN Y DEPURACIÓN 15

17 FASE Nº 05: DOCUMENTACIÓN Descripción de qué hace el programa y cómo lo hace. Documentación interna: Comentarios: líneas informativas incluidas en el código. Tarea que realiza. Datos de entrada y salida. Condiciones de error. Codificación auto documentada. Nombres de variables y funciones con significado. Estructura fácil de leer. Documentación externa: Manuales, estructura y especificaciones del programa, historia de las modificaciones, etc. FASE Nº 06: MANTENIMIENTO 1.3 HERRAMIENTAS DE PROGRAMACIÓN Son aquellas que permiten realizar aplicativos, programas, rutinas, utilitarios y sistemas para que la parte física del computador u ordenador, funcione y pueda producir resultados. 16

18 Un ejemplo claro son los Lenguajes de Programación, las librerías, los utilitarios, los generadores de reportes, pantallas, etc. Las herramientas más usadas para desarrollar algoritmos son: Lenguaje natural. Organigramas. Diagramas Nassi Shneiderman (N - S). Pseudocódigo. Otros LENGUAJE NATURAL: Es un lenguaje utilizado para describir los pasos de cómo realizamos algo, de una forma sencilla. Ventajas: Facilidad de comprensión. Inconvenientes: o El lenguaje natural no es universal, un algoritmo de lenguaje natural en inglés, por ejemplo, sería completamente inútil para los hispanohablantes. o El lenguaje natural es ambiguo y, por tanto, susceptible de errores. o El lenguaje natural es demasiado amplio, lo que para una persona puede ser una instrucción sencilla puede no serlo para otra y desde luego no lo será para una computadora. EJEMPLO Nº 5 El algoritmo para encontrar las raíces de una ecuación de segundo grado podría describirse así: x = (-b + b 2 4ac) / (2a) 1. Definir los coeficientes de la ecuación de segundo grado: a, b y c. 2. Determinar el valor del discriminante: b 2 4ac. 3. Si el discriminante es cero sólo hay una solución: -b/ (2a). ORGANIGRAMAS: Los organigramas o diagramas de flujo permiten describir los algoritmos de forma grafica. 17

19 Utilizan una serie de bloques que indican distintas circunstancias y flechas que muestran bajo qué condiciones se pasa de un bloque a otro. 18

20 DIAGRAMA DE FLUJO VS PSEUDOCÓDIGO: Estructuras Pseudocódigo Diagrama de flujo Inicio Begin Begin Entrada y salida de Datos Read x Write x Read x Sentencia Calcular x = y+3 Secuencia de sentencias Se escribe en líneas separadas Calcular x = y+3 Calcular z = 2*x Selección IF condición entonces Acción 1 ELSE Acción 2 Repetición DO WHILE Acción 1 Fin End 19

21 Una vez diseñado el algoritmo y representado mediante una herramienta de programación se debe: Solución del Problema por Computadora Codificación del programa Ejecución del programa Comprobación del programa Programa fuente Programa Objeto Programa ejecutable Compilador (Compiler) Montador (Linker) 1.4 TIPOS DE DATOS Un dato es la expresión general que describe los objetos con los cuales opera la computadora. Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple carácter, tal como b, un valor entero tal como 35. El tipo de dato determina la naturaleza del conjunto de valores que puede tomar una variable. - Medidas objetivas de atributos de entidades. - Cifras/hechos crudos (en bruto) sin interpretar o analizar. - No son estímulos de acción. DATOS VS INFORMACIÓN DATOS VS INFORMACIÓN - Resultado de haber organizado o analizado los datos de alguna manera lógica. - Reduce la incertidumbre. - Impulsa a la acción. 20

22 EJEMPLO Nº 6 DATOS Soles 1250 unidades José Perez Lima Dólares unidades... PROCESAMIENTO DE DATOS INFORMACIÓN Cliente: José Perez Sucursal: Lima Compras del mes: 1250 unidades= Soles CLASIFICACIÓN DATOS SIMPLES ESTANDAR REAL NUMERICO ENTERO CHARACTER LOGICO (BOOLEAN) TIPO DE DATO DATOS ESTRUCTURADOS DEFINIDOS X ENUMERATIVO EL PROGRAMADOR SUBRANGO ARRAYS ESTATICOS REGISTRO ARCHIVO (FICHERO) CONJUNTO) CADENA (STRING) LISTA (PILA/COLA) DINAMICOS LISTA ENLAZADA ARBOL GRAFO 21

23 - TIPOS DE DATOS SIMPLES DATOS NUMÉRICOS Permiten representar valores escalares de forma numérica, esto incluye a los números enteros y los reales. Este tipo de datos permiten realizar operaciones aritméticas DATOS LÓGICOS Son aquellos que sólo pueden tener dos valores (cierto o falso) ya que representan el resultado de una comparación entre otros datos (numéricos o alfanuméricos). DATOS ALFANUMÉRICOS Es una secuencia de caracteres alfanuméricos que permiten representar valores identificables de forma descriptiva, esto incluye nombres de personas, direcciones, etc. Es posible representar números como alfanuméricos, pero estos pierden su propiedad matemática, es decir no es posible hacer operaciones con ellos. Este tipo de datos se representan encerrados entre comillas. Representación Carácter Enteros Reales Tipo Char Unsigned char Int Short int Unsigned int Long Unsigned long Float Double Long double Longitud de byte a 127 Rango a a a a a E±38 1.7E± E-4932 a 1.1E

24 POR QUÉ ESTUDIAR LOS DATOS? DATOS DE SALIDA DATOS DE ENTRADA ALGORITMO LOS PROGRAMAS OPERAN SOBRE DATOS ALGORITMOS + ESTRUCTURA DE DATOS = PROGRAMA NIKLAUS WIRTH 1.5 CONSTANTES, VARIABLES, IDENTIFICADORES, EXPRESIONES, FUNCIONES - CONSTANTES Constantes: Valores que durante la ejecución de un programa no cambian su valor. Ejemplo: pi = VARIABLES Definición 1: Valores que cambiarán durante la ejecución del programa. Definición 2: Es un espacio en la memoria de la computadora que permite almacenar temporalmente un dato durante la ejecución de 23

25 un proceso, su contenido puede cambiar durante la ejecución del programa. CLASIFICACIÓN DE LAS VARIABLES * POR SU USO DE TRABAJO Variables que recibe el resultado de una operación matemática completa y que se usan normalmente dentro de un programa. Ejemplo: Suma a + b /c CONTADORES Se utilizan para llevar el control del número de ocasiones en que se realiza una operación o se cumple una condición. Con los incrementos generalmente de uno en uno. Ejemplo: Cont Cont + 1 Num Num + 2 ACUMULADORES Forma que toma una variable y que sirve para llevar la suma acumulativa de una serie de valores que se van leyendo o calculando progresivamente. Ejemplo: Suma Suma + cant IDENTIFICADORES Para poder reconocer una variable o una constante en la memoria de la computadora, es necesario darle un nombre con el cual 24

26 podamos identificarla dentro de un algoritmo, esto se llama un identificador. Ejemplo: área pi * radio ^ 2 Los identificadores son: el radio, el área y la constante es pi. EXPRESIONES Se definen como una combinación de constantes, variables, símbolos de operación, paréntesis, y nombres de funciones especiales. Una expresión consta de operandos y operadores. Ejemplo: x + (y+10)+ z/2 Las expresiones se clasifican en: o Aritméticas o Lógicas o Carácter Operador Significado Tipo de operandos Tipo resultado ** Exponenciación Entero o real Entero o real + Suma Entero o real Entero o real - Resta Entero o real Entero o real * Multiplicación Entero o real Entero o real / División Real Real Div División entera Entero Entero Mod módulo Entero Entero 25

27 Reglas de prioridad Operadores de relación Operador < > = <= >= <>,!= Significado Menor Mayor Igual Menor o igual Mayor o igual Distinto Operadores lógicos Operador lógico Not And Or Expresión lógica Not p P y Q P o Q Significado Negación Conjunción disyunción Ejemplo: Not 4 > 5 produce un error ya que el operador no se aplica a 4 Not (4 > 5) produce un valor verdadero. Ejemplo: P and Q. P or Q. 26

28 FUNCIONES Las funciones pueden tener cualquier número de variables, incluso cero. Para evaluar una función sin variables se debe escribir un par de paréntesis después de su nombre (por ejemplo fun()). Las funciones sin variables pueden servir como algoritmos de cálculo que devuelven un valor real. FUNCIONES MATEMÁTICAS Función Abs(x) Arctan(x) Cos(x) Exp(x) Ln(x) Log10(x) Round(x) Sin(x) Sqr(x) Sqrt(x) Trunc(x) Descripción Absoluto Tangente inversa Coseno Exponencial Log neperiano Log decimal Redondeo Seno Cuadrado Raíz cuadrada Truncamiento 1.6 PARTE PRÁCTICA PROBLEMAS PROPUESTOS 1. Diseñar un algoritmo para cambiar la rueda de un auto. 2. Diseñar un algoritmo para preparar una torta 3. Diseñar un algoritmo para organizar una fiesta 4. Diseñar un algoritmo para organizar un paseo 5. Diseñar un algoritmo para organizar un concierto 6. Realizar el algoritmo para determinar el mayor de tres números enteros 27

29 7. Realizar el algoritmo para calcular la superficie de un círculo. 8. Realizar el algoritmo para calcular el perímetro y la superficie de un rectángulo dadas las base y la altura del mismo. 9. Escribir un algoritmo que lea un nombre de una marca de automóviles seguida del nombre de su modelo e informe del modelo seguido del nombre. 10. Realizar el algoritmo para determinar la hipotenusa de un triángulo rectángulo conocidas las longitudes de los catetos. 11. Se desea un algoritmo para convertir metros a pies y pulgadas. (1 metro = Pulgadas, 1 pie = 12 pulgadas). 12. Escribir un algoritmo que permita calcular el área de un triangulo conocidos sus tres lados. 13. Diseñar un programa para calcular el área y el perímetro de un triangulo rectángulo conociendo la longitud de sus catetos. Si a, b y c representan los tres lados de un triangulo, entonces la formula que determina su área será: A = [p (p-a) (p-b) (p-c)] 1/2 Donde p representa el semiperímetro del triangulo que se calcula con la formula: p = (a+b+c)/2 14. Una empresa desea transmitir datos mediante el teléfono pero en forma cifrada ante la posibilidad de que los teléfonos estén intervenidos. La empresa le ha solicitado que escriba un programa que cifre sus datos que consisten en números enteros de cuatro dígitos. El cifrado debe hacerse de la siguiente manera: Intercambiar el primer digito con el tercero, y el segundo con el cuarto. A continuación imprimir el entero cifrado. 15. Escribir un programa que lea un numero de 4 cifras y o invierta. Así, por ejemplo, si el número leído es 2345 se debe convertir en Diseñar un programa para convertir una cantidad de nuevos soles a billetes enteros de S/.100, S/. 50, S/.20, S/.10, S/.5 y monedas de S/.1. Suponga que la cantidad es mayor que S/ Por ejemplo: en S/.1289 hay 12 billetes de S/.100, 1 billete de S/.50, 1 billete de S/.20, 1 billete de S/.10, 1 moneda de S/.5 y 4 monedas de S/

30 17. Diseñar un programa para convertir una cantidad entera de segundos a horas, minutos y segundos. Suponga que la cantidad de segundos es mayor que 3600 sg. 18. Diseñar un programa para convertir grados Centígrados (C) a grados Fahrenheit (F). Considere que: F = 9C/ Diseñar un programa para convertir grados sexagesimales (S) a grados centesimales (C) y radianes (R). Considere que: S/180 = C/200 = R/π. 20. Escriba un programa que permita calcular el área de un triangulo conocido sus tres lados. 21. Escriba un programa que permita leer una medida en pies y la convierta en centímetros, metros, pulgadas y yardas. Considere los siguientes factores de conversión. 1 pie = 12 pulgadas 1 yarda = 3 pies 1 pulgada = 2.54 centímetros 1 metro = 100 centímetros 22. Escriba un programa que permita lea una temperatura en grados Centígrados(C) y la convierta en sus equivalentes en grados Fahrenheit (F), grados kelvin (K) y grados Rankine (R). Utilice las siguientes formulas: F = 9/5 C + 32 K = C R = C Un curso se evalúa de la siguiente forma: se toman 5 prácticas, un examen parcial y un examen final. El promedio final se calcula con la siguiente formulas: PF = (3PP + 2EP + 3EF)/7 Donde: PF = promedio final PP = promedio de la 5 practicas EP = examen parcial EF = examen final Escriba un programa que calcule el promedio final del curso. 29

31 24. Escriba un programa para calcular el monto a pagar por un artículo. Los datos de entrada son: el precio de venta y el número de unidades adquiridas. Considere un descuento fijo de 20% y 19% de IGV. El programa deberá mostrar el monto del descuento y el monto a pagar. 25. Escriba un programa para efectuar repartos proporcionales de una suma de dinero a 5 personas en funciones de sus edades. El programa deberá solicitar la suma de dinero y las edades de las 5 personas. El monto que le corresponde a cada persona se calcula con la formula: edadp montot MontoP = edadt Donde: montot = monto del dinero a repartir montop = monto correspondiente a una persona edadp = edad de la persona edadp = suma total de edades Imprimir el monto de dinero correspondiente a cada persona. 26. Escribir un programa para determinar el interés generado por un capital C que representa un préstamo a una taza de interés anual del T% durante N años. Mostrar el monto total obtenido al cabo de los N años y el interés generado I. Use las siguientes formulas: M = C (1+ T/100) N I = M C Donde: M = Monto total obtenido al cabo de los N años C = Capital prestado I = Interés generado al cabo de los N años N = Numero de años 27. Escriba un programa que ingrese un valor de a y b y calcule los valores de c y d de acuerdo con las siguientes formulas: c = (4a 4 + 3ab +b 2 ) / (a 2 + b 2 ) ; d= (3c 2 + a +b) / 4 30

32 LABORATORIO Nº 1 Este laboratorio tiene como objetivo que el alumno aprenda a convertir el pseudo código a código TURBO C++ para su ejecución. PASOS A SEGUIR: Paso 1: Ingresar a inicio programas Turbo C o en otro compilador de C que le indique el docente Paso 2: Hacer click en programa Turbo C++ Paso 3: Una vez abierto el programa haga click en File y en New, generando una nueva hoja de trabajo. 31

33 Paso 4: Para guardar la hoja se hace click en File Save as Paso 5: Al hacer click en Save As saldrá una pantalla en donde se colocara el nombre del archivo y nos indica la ruta en donde va a ser guardada el archivo. 32

34 Paso 6: Una vez colocada el nombre y la ruta presionar OK. Paso 7: Una vez guardada la hoja proceder a transcribir el siguiente código de programa. #include <iostream.h> #include <conio.h> Int main( ) float base, altura, area, perímetro; cout<<"base: "; cin>>base; cout<<"altura: "; cin>>altura; área = base * altura ; perímetro = 2 * (base + altura) ; cout<<"el Area es :" << area << endl ; cout<<"el perímetro es : " << perímetro << endl; getch(); return 0; 33

35 Paso 8: Para compilar el programa hacer click en Project - Compile Otra manera de compilar es presionar en el teclado Alt + F9. 34

36 Paso 9: Si no hubiera error aparecerá un cuadro con un visto indicando OK, que indica Status: Success, quiere decir que no hay error de caso contrario aparecerá Status: There are errors, indicando la posición en donde esta el error. Paso 10: Ejecutar el programa se realiza haciendo click en Debug Run. Otra manera de ejecutar o correr el programa es presionando las teclas Control + F9. 35

37 Paso 11: Mostrará el programa ejecutando los comandos escritos: 36

38 CAPÍTULO II: ESTRUCTURA GENERAL DE UN PROGRAMA CONCEPTO DE PROGRAMA Es un conjunto de instrucciones, ordenes dadas a la máquina que producirán la ejecución de una determinada tarea, en esencia es un medio para seguir un fin. DESARROLLO DE UN PROGRAMA 1. Definición y Análisis del problema 2. Diseño de algoritmos: Diagrama de flujo. Diagrama de N-S. Pseudocódigo. Otros 3. Codificación del Programa. 4. Depuración y verificación del Programa. 5. Documentación. 6. Mantenimiento. PARTES CONSTITUTIVAS DE UN PROGRAMA El programador debe establecer el conjunto de especificaciones que debe contener el programa: entrada, salida y algoritmos de resolución. ENTRADA PROGRAMA Algoritmo de resolución SALIDA INSTRUCCIONES Y TIPOS DE INSTRUCCIONES CONSISTE EN DEFINIR: LAS ACCIONES O INSTRUCCIONES, se deben escribir y posteriormente almacenar en memoria en el mismo orden en que han de ejecutarse; es decir en secuencia. 37

39 Un programa es lineal si se ejecutan secuencialmente, sin bifurcaciones decisión y comparación INSTRUCCIÓN 1 INSTRUCCIÓN 2... INSTRUCCIÓN N En el caso de algoritmos las instrucciones se suelen conocer como acciones y se tendría: Acción 1 Acción 2. Acción N Y es no lineal cuando se interrumpe la secuencia mediante instrucciones de bifurcación: Acción 1 Acción 2. Accion x Acción N. TIPOS DE INSTRUCCIÓN 1. Instrucciones de inicio / fin 2. Instrucciones de asignación 3. Instrucciones de lectura 4. Instrucciones de escritura 5. Instrucciones de bifurcación 6. Fin - Instrucciones de asignación A 80 la variable A toma el valor de 80 Cuál será el valor que tomara la variable C tras la ejecución de las siguientes instrucciones? 38

40 A 12 A contiene 12 B A B contiene 12 C B C contiene 12 Antes de la ejecución de las tres instrucciones A, B, C son indeterminados. Cuál es el valor de la variable AUX al ejecutarse la instrucción 5? 1. A B AUX A B 5. B AUX; En la instrucción 1, A toma el toma el valor de 10 - Instrucciones de lectura de datos (entrada) Cuál será el significado de las siguientes instrucciones? a) Read numero, horas, tasa número horas 32 tasa 1200 b) Read A, B, C A 100 B 200 C 300 Esta instrucción lee datos de un dispositivos de entrada - Instrucciones de escritura de resultados (salida) - A B C 300 Write A, B, C Esta instrucción se escribe en un dispositivo de salida 39

41 2.1 ESTRUCTURA DE UN PROGRAMA EN C. - Los programas en C pueden constar de uno o varios archivos. - Cada archivo puede contener uno o varios espacios de nombres. - Un espacio de nombres puede contener tipos como clases, estructuras, interfaces, enumeraciones y delegados, además de otros espacios de nombres. A continuación, se muestra el esqueleto de un programa en C que contiene todos estos elementos. 40

42 EJEMPLO Nº 7 /* Comentarios de un párrafo completo comprendidos entre /*...*/, Sirven para aclarar el programa o una parte del programa */ // Comentarios de 1 sola línea. // Zona de ficheros de cabecera de las librerías. Ejemplo: /* El primer programa en C */ #include <stdio.h> int main( void ) printf( Bienvenido a C!" ); return 0; /* indica que el programa terminó con éxito */ EJEMPLO Nº 8 /* Programa de suma */ #include <stdio.h> int main() /* la función main inicia la ejecución del programa */ int entero1; /* primer número introducido por el usuario */ int entero2; /* segundo número introducido por el usuario */ int suma; /* variable en la cual se almacena la suma */ printf( "Introduzca el primer entero\n" ); /* indicador */ scanf( "%d", &entero1 ); /* lee un entero */ printf( "Introduzca el segundo entero\n" ); /* indicador */ scanf( "%d", &entero2 ); /* lee un entero */ suma = entero1 + entero2; /* asigna el total a suma */ printf( "La suma es %d\n", suma ); /* imprime la suma */ return 0; /* indica que el programa terminó con éxito */ /* fin de la función main */ 41

43 DEFINICIONES DE ARCHIVOS DE CABECERA DE LAS LIBRERÍAS iostream.h Flujo de entrada/salida lim its.h L im ites enteros definidos e im plantados math.h F unciones m atem áticas stdio.h Entrada/Salida stdlib.h Funciones de utilería Un comentario dentro del programa se utilizan para explicar brevemente lo que hace el programa y facilitar así el recordar que es lo que se están tratando de programar. Los comentarios deben ser escrito en cualquier lugar donde pueda haber confusión. En C debe ser escrito entre /* y */. Un comentario también se muestra en una sola línea de código; pero se representa así: // - VARIABLE GLOBAL Una declaración global de una variable, hace que la variable sea disponible para el uso en todas las funciones del archivo fuente. BUCLE INFINITO INICIO Suma = 0 Leer N 1 - BUCLES Suma Suma + N Es un segmento de un algoritmo o programa, cuyas instrucciones se repiten un Escribir suma número determinado de veces mientras se cumple una determinada condición (existe o es verdadera la condición)

44 Un bucle consta de tres partes: o o o Decisión Cuerpo de bucle Salida de bucle. TIPOS BUCLES Pueden existir varios bucles. Bucles anidados, cuando están dispuestos de tal modo que unos son interiores a otros, los Bucles independientes son cuando son externos unos a otros. Bucles anidados Bucles Independientes inicio IN IC IO Bucle A Bucle B Bucle C fin FIN Bucles Cruzados inicio fin 43

45 2.2 ESTRUCTURA DE ALGORITMO Los algoritmos deben ser escritos en lenguajes similares a los programas. Un algoritmo constará de dos componentes: Una cabecera de programas y un bloque algoritmo. La cabecera de programa es una acción simple que comienza con la palabra algoritmo. Esta palabra estará seguida por el nombre asignado al programa completo. El bloque algoritmo es el resto del programa y consta de dos componentes o secciones: las acciones de declaración y las acciones ejecutables. Las declaraciones definen o declaran las variables y constantes que tengan nombres. Las acciones ejecutables son aquellas que posteriormente deberá realizar la computadora cuando el algoritmo convertido en programa se ejecute. Algoritmo Cabecera del programa Sección de declaración Sección de acciones 2.3 CONTADORES, ACUMULADORES. CONTADORES DEFINICIÓN 1: Se utilizan para llevar el control del número de ocasiones en que se realiza una operación o se cumple una condición. Con los incrementos generalmente de uno en uno. DEFINICIÓN 2: Un contador es una variable cuyo valor se incrementa o decrementa en una cantidad constante cada vez que se produce un determinado suceso o acción. Los contadores se utilizan con la finalidad de contar sucesos o acciones internas de un bucle; deben realizar una operación de inicialización y posteriormente las sucesivas de incremento o decremento del mismo. 44

46 La inicialización consiste en asignarle al contador un valor. Se situará antes y fuera del bucle. Representación de contadores: Son variables que se utilizan para contar. Normalmente su valor se incrementa o decrementa en 1. Ejemplos: contador contador + 1 índice índice 1 EJEMPLO Nº 9 BEGIN econ 0 DO WHILE econ <10 READ er, et esun er+et econ econ+1 END END DO ACUMULADORES DEFINICIÓN 1: Forma que toma una variable y que sirve para llevar la suma acumulativa de una serie de valores que se van leyendo o calculando progresivamente o o Se utilizan para almacenar el resultado de sumas sucesivas. Su valor se incrementa en cantidades variables. Ejemplos: total total + valor DEFINICIÓN 2: Es una variable que suma sobre sí misma un conjunto de valores, de esta manera obtiene la suma de todos ellos en una sola variable. La diferencia entre un contador y un acumulador es que mientras el primero va aumentando en una cantidad fija 45

47 predeterminada, el acumulador va aumentando en una cantidad variable. Representación: <Nombre del acumulador> <nombre del acumulador> + <valor variable> EJEMPLO Nº10: BEGIN econ 0,eAcu 0 DO WHILE econ<=10 READ enume eacu eacu+enume econ econ+1 ENDDO WRITE eacum END 46

48 2.4 PARTE PRÁCTICA PROBLEMAS PROPUESTOS 1.- Encontrar el valor de la variable VALOR después de la ejecución de las siguientes operaciones: a.- VALOR 4.0 * 5 b.- x 3.0 y 2.0 c.- VALOR 5 X 3 VALOR VALOR * X 2.- Deducir el resultado que se produce con las siguientes instrucciones: var. entero: X,Y X 1 Y 5 Write X,Y 3.- Deducir el valor de las expresiones siguientes: X A +B+C X A +B*C X A +B/C X A B/C X A +B mod C X (A +B)/C X A +(B/C) Siendo A=5, B=25, C= Cómo se intercambian los valores de dos variables, A y B? 5.- Calcular el valor de las siguientes expresiones: a. 8+7*3+4*6 b. -2^3 c. ( * 4) / 5 d. 2^2 *3 e. 3+2 * (18-4^2) f. 16*6-3*2 47

49 6.- Se tienen tres variables A, B y C; escribir las instrucciones necesarias para intercambiar entre sí sus valores del modo siguiente: B toma el valor de A C toma el valor de B A toma el valor de C Nota: Solo se debe utilizar una variable auxiliar. 7- Deducir el valor que toma la variable tras la ejecución de las instrucciones: A 4 B A B A Qué se obtiene en las variables A y B después de la ejecución de las siguientes instrucciones? A 5 B A+6 A A+1 B A Qué se obtiene en las variables A, B y C después de ejecutar las instrucciones siguientes? A 3 B 20 C A+B B A+B A B-C 10.- Que se obtiene en A y B tras la ejecución de? A 10 B 5 A B B A 11. Se desea calcular independiente la suma de los números pares e impares comprendidos entre 1 y Leer una serie de números distintos de cero (el último número de la serie es -99) y obtener el número mayor. Como resultado se debe 48

50 visualizar el número mayor y un mensaje de indicación de número negativo, caso de que se haya leído un número negativo. 13. Calcular y visualizar la suma y el producto de los números pares comprendidos entre 20 y 400, ambos inclusive. 14. Leer 500 números enteros y obtener cuántos son positivos. 15. Se trata de escribir el algoritmo que permita emitir la factura correspondiente a una compra de un artículo determinado, del que se adquieren una o varias unidades. El IGV a aplicar es del 19% y si el precio bruto es mayor a s/.50000, se debe realizar un descuento del 5 por Sumar los números pares del 2 al 100 e imprimir su valor. 17. Sumar cinco números introducidos por teclado. 18. Calcular la media de tres números e imprimir su resultado. 19. Dados diez números enteros, visualizar la suma de los números pares de una lista, cuántos números pares existen y cuál es la media aritmética de los números impares LABORATORIO Nº 2 Este laboratorio tiene como objetivo que el alumno aprenda la Estructura de Los Programas Del Turbo C++. ESTRUCTURA DE UN PROGRAMA: INCLUSIÓN DE ARCHIVOS DE CABECERA Para muchas tareas especificas el lenguaje C dispone de librerías de funciones preempacadas listas para ser usadas. Pero antes de utilizar cualquier de estas funciones debemos informar al compilador sobre las características de la función. Todo lo que tenemos que hacer es averiguar en que archivo de cabecera se encuentra el prototipo de la función a utilizar e incluir el archivo en nuestro programa mediante la directiva. 49

51 #include <nombre_archivo_cabecera> Un archivo de cabecera se reconoce porque tiene extensión.h (como iostream.h, conio.h, string.h, etc.). Si las funciones a utilizar están en distintos archivos de cabeceras debe incluir todos ellos mediante una directiva #include para cada uno. Ejemplo: // Importamos la cabeceras de los módulos que necesitamos #include <iostream.h> // entrada / salida define las variables cin y cout (consola) #include <string> // de la biblioteca estándar (STL) CUERPO DEL PROGRAMA Es la parte donde se desarrollan las instrucciones que conforman el programa. Aquí esta la parte medular del programa. Aquí es donde su algoritmo se convierte en programa. La estructura general de un programa simple en C++: Inclusión de archivos de cabecera int main () declaración de variables y constantes cuerpo del programa 50

52 EXPLICACIÓN DE NUESTRO PROGRAMA Para lograr explicar con mayor claridad se repite el código anterior incluyendo un número de línea. 1. //Programa //propósito: Estructura Secuencial 3. #include <iostream.h> 4. #include <conio.h> 5. int main() // muestra mensaje endl permite un salto de línea 8. cout <<"Bienvenidos al primer programa " <<endl; 9. cout <<"utilizando C++"; 10. getch(); 11. return 0; 12. Las líneas 1, 2,7 son comentarios que en tiempo de ejecución son ignoradas por el compilador. Las líneas 3 y 4 se conocen como directivas de procesador del compilador #include La línea 5 indica el inicio de la función principal main (). Las líneas 6 y 12 indican el inicio y el fin de bloque de la función principal. La línea 8 muestra en pantalla el mensaje Bienvenidos al Primer programa y un salto de línea. La línea 9 muestra en pantalla el mensaje utilizando C++, La línea 10 invoca a la función getch ( ) que espera a que el usuario pulse una tecla. La línea 11 pasa el valor 0 de regreso al sistema operativo. Esto le indica al sistema operativo que el programa fue efectuado con éxito. DECLARACIÓN DE VARIABLES Y CONSTANTES Todos los programas manejan datos. Estos datos se almacenan en localizaciones de memorias llamadas variables. En esta sección se informa al compilador sobre las variables que serán utilizadas en el programa (a esto se llama declarar variables). En C ++ permite declarar variables en cualquier parte del programa con tal que la variable se declare antes de ser utilizada. 51

53 VARIABLES Es un espacio en la memoria de la computadora que permite almacenar temporalmente un dato durante la ejecución de un proceso, su contenido puede cambiar durante la ejecución del programa. Una variable tiene las siguientes características: 1. Un nombre. 2. Un tipo de dato asociado. 3. Un valor inicial. 4. Una dirección de memoria. CONSTANTES Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa. 52

54 LOS COMENTARIOS Con fines de documentación se pueden añadir comentarios a un programa. Los comentarios no generan código máquina sino que son ignorados por el compilador. Se considera como comentario: Al texto que sigue a los dos slash // hasta el final de las línea. Al texto ( una o mas líneas ) encerrado entre /* y */ Ejemplo: // Este es un comentario de una sola línea. /* Este es el otro comentario de una sola línea * / /* Este es el ejemplo de un comentario de dos líneas */ 53

55 ENTRADA Y SALIDA BÁSICA EN C++ La entrada/salida (input/output) en C++ se hace mediante los objetos cin y cout. La forma más simple de entrada/salida se efectúa mediante las operaciones << (operador de inserción) y >> (operador de extracción). Toda la información que necesita el compilador sobre cin y cout se encuentra en el archivo de cabecera iostream.h, el que debe ser incluido en todo programa que use cin y cout escribiendo al principio del programa la línea: Donde: #include <iostream.h> Cout es un flujo de datos que conecta el programa con la pantalla. Cuando un programa desea enviar algo a la pantalla lo hace insertando los datos en el flujo cout y este a su vez se encarga de enviar los datos a la pantalla. Cin es un flujo de datos que conecta el teclado con el programa. Cualquier entrada desde el teclado es enviada primero al flujo cin. Luego el programa puede extraer (leer) datos desde este flujo. 54

56 Pantall Cout << Variable Teclad Cin >> Variable SALIDA A LA PANTALLA CON COUT Salida de constantes: Cout << constantes; Donde la constante puede ser cualquier tipo de constante incluyendo las constantes de cadena. Recuerde que las constantes de cadena van encerradas entre comillas dobles, así para imprimir en la pantalla una constante de cadena escribiríamos: Cout << aquí va la cadena a imprimir ; Salida de variables: Cout << variable; Notas: La salida de cout se puede concatenar para hacer la salida de distintas variables o cadenas en una sola sentencia. En una sentencia se puede enviar secuencias de escape con la finalidad de mover el cursor al principio de la siguiente línea, hacer sonar a alarma del sistema, etc. 55

57 SECUENCIA DE ESCAPE Las secuencias de escape proporcionan un determinado significado al enviar ciertos caracteres especiales a la pantalla, a un archivo de disco o a la impresora. Todas las secuencias de escape comienzan con la barra invertida \. Secuencia de escape \n \r \t \a \` \ \\ Descripción Nueva línea. Coloca el cursor al principio de la segunda línea. Retorno de carro. Coloca el cursor al principio de la línea actual. Tabulador horizontal. Mueve el cursor al siguiente tabulador. Alerta. Hace sonar la campana del sistema. Imprime una comilla simple (`). Imprime una comilla doble ( ). Imprime una barra invertida (\) ENTRADA DESDE EL TECLADO DE CIN La entrada o lectura desde el teclado para cualquier variable se hace mediante la sentencia: Cin >> variable; 56

58 Notas: La entrada con cin se puede concatenar para poder hacer la entrada de distintas variables o cadenas en una sola sentencia. Cin desprecia los caracteres blancos (espacios, tabuladores y saltos de línea) al realizar la entrada desde el teclado. Esto significa que no se puede leer con cin cadenas que contengan espacios en blanco pues cin únicamente leerá la parte de la cadena hasta el primer blanco. Si se desea leer cadenas que contengan espacios en blanco use la función gets. LA FUNCIÓN GETS PARA LA ENTRADA DE CADENAS Gets (cad); La función gets lee una cadena de caracteres ingresada desde el teclado, incluyendo espacios en blanco, y lo almacena en la variable de cadena cad. Para usar la función gets debe incluirse el archivo de cabecera stdio.h. 57

59 OPERADORES DE INCREMENTO Y DECREMENTO operador Acción Suma 1 a su operando Resta 1 a su operando Uso de ++ y en expresiones simples Sea n una variable cualquiera. Expresión Forma equivalente 1 Forma equivalente 2 n = n + 1; n = n 1; n ++; n --; ++ n; -- n; Uso de ++ y en otras expresiones En expresiones de asignación u otras que no sean del tipo simple se cumple que: Si ++ ó están antes del operando, primero se suma o resta 1 al operando antes de continuar con lo que sigue. Si ++ ó están después del operando, primero se usa el valor del operando y luego se le suma o resta 1. 58

60 CAPÍTULO III: ESTRUCTURAS DE CONTROL 3.1 PROGRAMACIÓN ESTRUCTURADA DEFINICIÓN La programación estructurada es una forma de programar de forma clara, para ello utiliza únicamente tres estructuras: secuencial, selectiva simple e iterativa; siendo innecesario y no permitiéndose el uso de la instrucción o instrucciones de transferencia incondicional (GOTO). VENTAJAS DE LA PROGRAMACIÓN ESTRUCTURADA - Los programas son más fáciles de entender. Un programa estructurado puede ser leído en secuencia, de arriba hacia abajo, sin necesidad de estar saltando de un sitio a otro en la lógica, lo cual es típico de otros estilos de programación. - Los programas quedan mejor documentados internamente. - Reducción de los costos de mantenimiento. - Aumento de la productividad del programador. DESVENTAJAS DE LA PROGRAMACIÓN ESTRUCTURADA - Es relativamente difícil de aprender ya que es para expertos. 3.2 ESTRUCTURA DE CONTROL TIPOS En lenguajes de programación, las estructuras de control permiten modificar el flujo de ejecución de las instrucciones de un programa. Con las estructuras de control se puede: De acuerdo a una condición, ejecutar un grupo u otro de sentencias (IF-ELSE y CASE OF) Ejecutar un grupo de sentencias HACER MIENTRAS exista una condición (DO-WHILE) 59

61 Ejecutar un grupo de sentencias REPETIR -HASTA que exista una condición (REPEAT-UNTIL) TIPOS SECUENCIAL SELECTIVA SIMPLE ITERACIÓN SECUENCIAL La estructura secuencial se refiere a la ejecución de una secuencia de instrucciones en el orden en que aparecen, de forma que cada instrucción se ejecuta exactamente una vez. EJEMPLO Nº 11 BEGIN REAL base, altura, área, perímetro READ base, altura área base*altura perímetro 2*(base+altura) WRITE área, perímetro END Esta secuencia de instrucciones permuta los valores de x e y, con ayuda de una variable auxiliar, intermedia. 1º Guardamos una copia del valor de x en auxiliar. 2º Guardamos el valor de y en x, se pierde el valor anterior de x pero no importa porque tenemos una copia en auxiliar. 3º Guardamos en y el valor de auxiliar, que es el valor inicial de x. El resultado es el intercambio de los valores de x e y, en tres operaciones secuenciales. ESTRUCTURA SELECTIVA Las estructuras de selección son estructuras de control utilizadas para la toma de decisiones dentro de un programa. A estas estructuras se les conoce también como estructuras selectivas o estructuras de decisión. 60

62 TIPOS DE ESTRUCTURA SELECTIVA ESTRUCTURA SELECTIVA SIMPLE ESTRUCTURA DE SELECCION ESTRUCTURA SELECTIVA DOBLE ESTRUCTURA SELECTIVA MULTIPLE SELECTIVA SIMPLE IF (SI) La estructura selectiva simple SI (en ingles IF) ejecuta una determinada acción cuando se cumple una determinada condición. La selección SI evalúa la condición. - Si la condición es verdadera, entonces ejecuta la acción S1 (o acciones caso de ser S1 una acción compuesta y constar de varias acciones) - Si la condición es falsa, entonces no hace nada. DIAGRAMA DE FLUJO: condición falsa verdadera accion S1 61

63 SINTAXIS: SINTAXIS EN ESPAÑOL SI <condición> <acción S1> FIN _ SI SINTAXIS EN INGLES IF <condición> <acción S1> ENDIF EJEMPLO Nº 12: PSEUDOCÓDIGO: Construya un algoritmo en pseudocódigo tal que, dado los valores enteros P y Q, que deben leerse del teclado, determine si los mismos satisfacen la siguiente expresión: En este caso debe escribir por pantalla los valores P y Q. ALGORITMO Problema VARIABLES p, q SON ENTEROS BEGIN WRITE p WRITE q IF p^3 + q^4-2*p^2<680 WRITE Los Valores de p y q son: WRITE p=, p, q=, q END_SI END 62

64 EN C++: Según una calificación imprimir si es aprobada #include <stdio.h> #include <conio.h> int main () float Cal; clrscr(); printf ("Introduzca la calificación: "); scanf ("%f", &Cal); if ( Cal >= 11 ) printf("aprobó."); return 0; SELECTIVA DOBLE ( SI - SINO) La estructura de selección doble permite seleccionar una ruta de dos rutas posibles en base a la verdad o falsedad de una condición. Si la condición es verdadera, entonces ejecuta la acción S11 (o acciones caso de ser S11 una acción compuesta y constar de varias acciones) Si la condición es falsa, entonces ejecuta la acción S21 (o acciones caso de ser S21 una acción compuesta y constar de varias acciones) DIAGRAMA DE FLUJO si Condición? no acción S11 acción S21 63

65 SINTAXIS: PSEUDOCODIGO EN ESPAÑOL SI SI_NO FIN_SI <condicion> <accion S11> <accion S12> <accion S2n> <acción 21> <acción 22> <acción S1n> PSEUDOCODIGO EN INGLES IF <condición> <acción S11> <acción S12> <acción S2n> ELSE <acción 21> <acción 22> <acción S1n> ENDIF EJEMPLO Nº 13 La siguiente estructura de selección doble determina si una persona es mayor o menor de edad: IF edad >= 18 estado "Mayor de edad ELSE estado "Menor de edad ENDIF WRITE estado Esto imprime "Mayor de edad", si la persona tiene 18 años a más e imprime "Menor de edad" si la persona tiene menos de 18 años. En cualquiera de los casos, después se efectuará la impresión EN C++: Imprimir si un número es par o impar #include <stdio.h> #include <conio.h> int main() 64

66 int num; clrscr(); printf("introducir un número:\n"); scanf("%d",&num); if ( num % 2 == 0 ) printf("%d es par.",num); else printf("%d es impar.",num); return 0; SELECTIVA MULTIPLE IF ELSE- IF ( SI SINO - SI) Puede contener instrucciones sencillas o compuestas. Pueden estar incluidas una o más instrucciones If - else. Al incluir una o más instrucciones de if en una instrucción de if existente se crean las instrucciones anidadas If. EJEMPLO Nº 14 Este algoritmo lee tres números A, B, C, imprimiendo el valor del más grande. Se supone que los tres valores son diferentes. Read (A, B, C) // Entrada de valores if A > B // Se determina el valor más grande mediante comprobación // por pares then if A > C then MAX A (A > B, A > C) else MAX C (C > A > B) else if B > C then MAX B (B > A, b > C) else MAX C (C > B > A) Write `El valor más grande es`, MAX // Se imprime el valor más grande Exit // Termino 65

67 EJEMPLO Nº 15 #include<iostream.h> int main ( ) char codigo; cout << "Introduzca un código especificado: "; cin >> codigo; if (codigo == 'S' ) cout << "El componente tiene calificación de exploración espacial. "; else if (codigo == M ) cout << "El componente tiene calificación de militar. "; else if (codigo == C ) cout << "El componente tiene calificación de comercial. "; else if (codigo == 'J' ) cout << "El componente tiene calificación de juguete. "; else cout << "Se insertó un código invalido. "; cout << endl; getch(); return 0; SELECTIVA DE CONTROL CASE OF ( SEGÚN SEA) Esta sentencia se utiliza para elegir entre diferentes alternativas. Esta se compone de varias sentencias simples, cuando se ejecuta, una y solo una de las sentencias simples se selecciona y ejecuta. 66

Preliminares. Tipos de variables y Expresiones

Preliminares. Tipos de variables y Expresiones Preliminares. Tipos de variables y Expresiones Felipe Osorio Instituto de Estadística Pontificia Universidad Católica de Valparaíso Marzo 5, 2015 1 / 20 Preliminares Computadoras desarrollan tareas a un

Más detalles

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Tema 2 Conceptos básicos de programación. Fundamentos de Informática Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis

Más detalles

1 Estructura básica de un programa C++

1 Estructura básica de un programa C++ Elementos básicos de un lenguaje de alto nivel: C++ CONTENIDOS 1. Estructura básica de un programa C++. 2. Tipos de datos simples. 3. Constantes y variables en C++. Declaración. 4. Operadores y expresiones.

Más detalles

Creación de Funciones de Conducción

Creación de Funciones de Conducción Creación de Funciones de Conducción Requerimientos Para el desarrollo de esta actividad se requiere que: Contemos con un robot BoeBot armado con placa Arduino. Repetición En estos momentos habremos notado

Más detalles

U i n d id d a 3. El Element os á bá i s cos de un programa

U i n d id d a 3. El Element os á bá i s cos de un programa Programación Digital U id d 3 El t bá i Unidad 3. Elementos básicos de un programa 1. Concepto de Programa Es un conjunto de instrucciones (órdenes dadas a la computadora), que producirán la ejecución

Más detalles

TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA

TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA Programa: Algoritmo (secuencia no ambigua, finita y ordenada de instrucciones para la resolución de un determinado problema) traducido

Más detalles

Ejemplos de conversión de reales a enteros

Ejemplos de conversión de reales a enteros Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print

Más detalles

Tema 5 Sentencias de control de flujo. Fundamentos de Informática

Tema 5 Sentencias de control de flujo. Fundamentos de Informática Tema 5 Fundamentos de Informática Sentencias de Control Tipos de sentencias de control: Comprobación lógica para bifurcar el flujo de un programa. Sentencias de control condicional o alternativo Comprobación

Más detalles

Modulo 1 El lenguaje Java

Modulo 1 El lenguaje Java Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto

Más detalles

Informática I. While & do While

Informática I. While & do While Asignatura: Informática I Trabajo práctico Nº5 While & do While Estructura repetitiva MIENTRAS o while En C la sentencia while (condición o expresión) instrucciones; es seguramente la más utilizada. La

Más detalles

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.

Más detalles

ESTRUCTURA DE DATOS: ARREGLOS

ESTRUCTURA DE DATOS: ARREGLOS ESTRUCTURA DE DATOS: ARREGLOS 1. Introduccion 2. Arreglos - Concepto - Caracteristicas 3. Arreglos Unidimensionales 4. Arreglos Bidimensionales 5. Ventajas del uso de arreglos 6. Ejemplo 1. Introducción

Más detalles

Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS

Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS Aprendiendo a programar Microcontroladores PIC en Lenguaje C con CCS Por Andrés Raúl Bruno Saravia Entrega Nº 5. Cómo declaramos una variable en Lenguaje C? En C siempre se deben declarar las variables.

Más detalles

Diseño de algoritmos

Diseño de algoritmos Diseño de algoritmos Jose Jesus García Rueda. Adaptado de El algoritmo, una iniciación a la programación (http://www.desarrolloweb.com/manuales/67/ http://www.desarrolloweb.com/manuales/67/) ) y de Diseño

Más detalles

Estructuras de Control - Diagrama de Flujo

Estructuras de Control - Diagrama de Flujo RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS Ingeniería en Computación Ingeniería en Informática UNIVERSIDAD NACIONAL DE SAN LUIS DEPARTAMENTO DE INFORMÁTICA AÑO 2015 Índice 1. Programación estructurada 2 1.1.

Más detalles

Una variable de clase escalar tiene un nivel de indirección igual a 1. Por ejemplo, las variables i, b y x definidas como se muestra a continuación.

Una variable de clase escalar tiene un nivel de indirección igual a 1. Por ejemplo, las variables i, b y x definidas como se muestra a continuación. Descripción de la semántica de ALFA En esta descripción sólo se mencionarán los aspectos en los que el lenguaje de programación ALFA pueda diferir de otros lenguajes de programación de alto nivel. Se sobreentienden

Más detalles

construcción de programas Prof. Eliana Guzmán U.

construcción de programas Prof. Eliana Guzmán U. Unidad II. Metodología para la construcción de programas Prof. Eliana Guzmán U. Semestre: A-2015 Introducción Resolver un problema con una computadora conduce a la escritura de un programa y a su ejecución.

Más detalles

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014 Tecnologías en la Educación Matemática jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR 1 Datos Los algoritmos combinan datos con acciones. Los datos de entrada

Más detalles

Capítulo 4 Procesos con estructuras de repetición

Capítulo 4 Procesos con estructuras de repetición Estructura de contador Capítulo 4 Procesos con estructuras de repetición Esta es una operación que incrementa en una unidad el valor almacenado en la variable c, cada vez que el flujo del diagrama pasa

Más detalles

2.1.- EJEMPLO DE UN PROGRAMA FORTRAN

2.1.- EJEMPLO DE UN PROGRAMA FORTRAN 2.1.- EJEMPLO DE UN PROGRAMA FORTRAN Con el presente apartado comenzaremos a conocer cómo se escribe un programa en lenguaje FORTRAN bajo el entorno de programación FORTRAN. En primer lugar conozcamos

Más detalles

Conciliación bancaria en CheqPAQ Cargado de estado de cuenta

Conciliación bancaria en CheqPAQ Cargado de estado de cuenta Conciliación bancaria en CheqPAQ Cargado de estado de cuenta Introducción Con la finalidad de mantenerte informado respecto a todos los cambios y mejoras de los productos de CONTPAQ i, ponemos a tu disposición

Más detalles

ARREGLOS DEFINICION GENERAL DE ARREGLO

ARREGLOS DEFINICION GENERAL DE ARREGLO ARREGLOS DEFINICION GENERAL DE ARREGLO Conjunto de cantidades o valores homogéneos, que por su naturaleza se comportan de idéntica forma y deben de ser tratados en forma similar. Se les debe de dar un

Más detalles

Algoritmos y Diagramas de Flujo 2

Algoritmos y Diagramas de Flujo 2 Algoritmos y Diagramas de Flujo 2 Programación Java NetBeans 7.0 RPC Contenido 2.1 Algoritmo...1 Fase de creación de un algoritmo...1 Herramientas de un algoritmo...2 2.2 Diagrama de Flujo...2 Símbolos

Más detalles

SIIGO Pyme. Templates. Cartilla I

SIIGO Pyme. Templates. Cartilla I SIIGO Pyme Templates Cartilla I Tabla de Contenido 1. Presentación 2. Qué es un Template? 3. Qué Aspectos se Deben Tener en Cuenta Antes de Diseñar o Modificar un Template? 4. Cuáles son las Formas que

Más detalles

EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO)

EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO) EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO) Luis José Sánchez 1. Realiza un programa que sume los 100 números siguientes a un número entero y positivo introducido por teclado. Se debe

Más detalles

7. Manejo de Archivos en C.

7. Manejo de Archivos en C. 7. Manejo de Archivos en C. Los datos que hemos tratado hasta el momento han residido en la memoria principal. Sin embargo, las grandes cantidades de datos se almacenan normalmente en un dispositivo de

Más detalles

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí

Más detalles

GUÍA DE TRABAJO Tecnología en Sistemas de Información

GUÍA DE TRABAJO Tecnología en Sistemas de Información 1. IDENTIFICACIÓN Asignatura Laboratorio Lógica y Programación Guía No. 1 Área Básica de la Ingeniería Nivel II Código LLI22 Pensum 10 Correquisito(s) LPI24 Prerrequisito(s) Créditos 2 TPS 2 TIS 4 TPT

Más detalles

Examen escrito de Programación 1

Examen escrito de Programación 1 Examen escrito de Programación 1 Escuela de Ingeniería y Arquitectura Departamento de Informática e Ingeniería de Sistemas 2 de septiembre de 2015 Se debe disponer sobre la mesa en lugar visible un documento

Más detalles

TEMA 2: Representación de la Información en las computadoras

TEMA 2: Representación de la Información en las computadoras TEMA 2: Representación de la Información en las computadoras Introducción Una computadora es una máquina que procesa información y ejecuta programas. Para que la computadora ejecute un programa, es necesario

Más detalles

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03.

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03. INFORMÁTICA Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial Curso 2013-2014 v1.0 (05.03.14) A continuación figuran una serie de ejercicios propuestos, agrupados

Más detalles

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

En cualquier caso, tampoco es demasiado importante el significado de la B, si es que lo tiene, lo interesante realmente es el algoritmo. Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa

Más detalles

Instructivo. VIDEOS EN: www.vimeo.com/apolosoft INTRODUCCION

Instructivo. VIDEOS EN: www.vimeo.com/apolosoft INTRODUCCION RUBROS Instructivo INTRODUCCION Se puede definir los Rubros como los ítems que ayuda a construir los pagos constituidos o no como salario que se aplican al momento de realizar el cálculo de la Nómina.

Más detalles

Formularios. Formularios Diapositiva 1

Formularios. Formularios Diapositiva 1 Formularios Crear un formulario utilizando el Asistente para formularios Modificación en vista Diseño Adición de Controles a un Formulario Adición de un Subformulario a un formulario Formularios Diapositiva

Más detalles

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero.

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Uso de Ficheros Todas las estructuras de datos vistas hasta ahora utilizan la

Más detalles

MATERIAL 2 EXCEL 2007

MATERIAL 2 EXCEL 2007 INTRODUCCIÓN A EXCEL 2007 MATERIAL 2 EXCEL 2007 Excel 2007 es una planilla de cálculo, un programa que permite manejar datos de diferente tipo, realizar cálculos, hacer gráficos y tablas; una herramienta

Más detalles

DIAGRAMA DE FLUJO DE DATOS

DIAGRAMA DE FLUJO DE DATOS DIAGRAMA DE FLUJO DE DATOS AUTOR: CORDOVA NERI, TEODORO Lima Perú Córdova Neri, Teodoro 2 Diagrama de Flujo de Datos INTRODUCCIÓN La presente guía denominada DIAGRAMA DE FLUJO DE DATOS, ilustra una de

Más detalles

Se guardan en archivos con extencion c y los cabezales con extension h

Se guardan en archivos con extencion c y los cabezales con extension h Se guardan en archivos con extencion c y los cabezales con extension h Tipos de Variables: Tipo Tamaño(bytes) Limite inferior Limite superior char 1 -- -- unsigned char 1 0 255 short int 2-32768 +32767

Más detalles

Estructuras de Control - Diagrama de Flujo

Estructuras de Control - Diagrama de Flujo Introducción a la Programación - Introducción a la Computación - Fundamentos de la Informática Ing. Electrónica - T.U.G. - T.U.E. - T.U.R. - T.U.W.- Prof. Tec. Elect. - T.U.T - T.U.M Área de Servicios

Más detalles

Distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos: mientras, haga-mientras, repita-hasta, para.

Distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos: mientras, haga-mientras, repita-hasta, para. ESTRUCTURAS DE REPETICIÓN OBJETIVOS Aprender a construir grandes y complejos problemas a través de la ejecución repetida de una secuencia de proposiciones llamados ciclos o estructuras repetitivas. Distinguir

Más detalles

8. Sentencia return y métodos

8. Sentencia return y métodos 92 A. García-Beltrán y J.M. Arranz 8. Sentencia return y métodos Objetivos: a) Describir el funcionamiento de la sentencia return b) Interpretar el resultado de una sentencia return en el código fuente

Más detalles

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ;

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ; TEMA 5. CONTROL DE FLUJO DEL PROGRAMA 5.1 Sentencias Una sentencia es una expresión seguida de un punto y coma. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ; El ; es obligatorio

Más detalles

Centro de Capacitación en Informática

Centro de Capacitación en Informática Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.

Más detalles

Escuela Politécnica Superior de Elche

Escuela Politécnica Superior de Elche Práctica 0 (Repaso) Estándar de programación y Diagramas de flujo.:::1 Sesión:::. a. Estándar de normalización En este apartado se sugieren una serie de normas que ayudarán a que el código sea más fácil

Más detalles

Introducción al tipo de dato ARRAY

Introducción al tipo de dato ARRAY CONTENIDOS. Introducción al tipo de dato ARRAY. Definición, Características, Declaración, Acceso e Inicialización.. Arrays multidimensionales Definición, Declaración, Acceso e Inicialización. Introducción

Más detalles

Introducción a la Programación en MATLAB

Introducción a la Programación en MATLAB Introducción a la Programación en MATLAB La programación en MATLAB se realiza básicamente sobre archivos M, o M-Files. Se los denomina de esta forma debido a su extensión.m. Estos archivos son simple archivos

Más detalles

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto INFORMÁTICA INFORMÁTICA 1 Sesión No. 4 Nombre: Procesador de Texto Contextualización La semana anterior revisamos los comandos que ofrece Word para el formato del texto, la configuración de la página,

Más detalles

Curso 0 de Informática

Curso 0 de Informática Curso 0 de Informática 2015-2016 Tema 1: Introducción a la Informática y Conceptos básicos 1 Motivación (I): En los procesos industriales, cada vez es mayor el uso de sistemas informáticos para: Monitorización,

Más detalles

Vectores. 27/05/05 Programación Digital I 1

Vectores. 27/05/05 Programación Digital I 1 Vectores Material Original: Prof. Flor Narciso Modificaciones: Prof. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Programación

Más detalles

CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS

CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS 4.1 Antecedentes históricos El lenguaje de programación BASIC (Beginner's All purpose Symbolic Instruction Code)

Más detalles

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL OBJETIVO Mejorar el nivel de comprensión y el manejo de las destrezas del estudiante para utilizar formulas en Microsoft Excel 2010. 1) DEFINICIÓN Una fórmula de Excel es un código especial que introducimos

Más detalles

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda:

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda: Apuntes de ACCESS Campos de Búsqueda: Los campos de búsqueda permiten seleccionar el valor de un campo de una lista desplegable en lugar de tener que escribirlos. El usuario sólo tiene que elegir un valor

Más detalles

Charla N 6: Utilidades de Consulta de datos.

Charla N 6: Utilidades de Consulta de datos. 1 Charla N 6: Utilidades de Consulta de datos. Objetivos Generales: La manipulación de los datos organizados en forma de lista, donde la lista relaciones diferentes ocurrencias de una información común,

Más detalles

Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C

Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C Directivas del procesador Main() { Declaraciones Definiciones proposiciones }

Más detalles

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática Tema 1 Introducción. Arquitectura básica y Sistemas Operativos Fundamentos de Informática Índice Descripción de un ordenador Concepto básico de Sistema Operativo Codificación de la información 2 1 Descripción

Más detalles

Ejercicio 1 (2 puntos. Tiempo: 25 minutos)

Ejercicio 1 (2 puntos. Tiempo: 25 minutos) Fecha de publicación de notas: jueves 18 de Julio. Fecha de revisión: viernes 19 de Julio a las 10:00h. Despacho C-209. Ejercicio 1 (2 puntos. Tiempo: 25 minutos) Se desea desarrollar un programa en C

Más detalles

UNIDADES DE ALMACENAMIENTO DE DATOS

UNIDADES DE ALMACENAMIENTO DE DATOS 1.2 MATÉMATICAS DE REDES 1.2.1 REPRESENTACIÓN BINARIA DE DATOS Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS. Los computadores sólo

Más detalles

CONTENIDOS. 2. Entidades primitivas para el desarrollo de algoritmos.

CONTENIDOS. 2. Entidades primitivas para el desarrollo de algoritmos. Introducción a la ciencia de la computación y a la programación 1. La computadora CONTENIDOS 2. Entidades primitivas para el desarrollo de algoritmos. 3. Metodología a seguir para la resolución de problemas

Más detalles

PROGRAMACIÓ DIDÁCTICA: Secuanciación, Temporalización y Unidades Didácticas

PROGRAMACIÓ DIDÁCTICA: Secuanciación, Temporalización y Unidades Didácticas Departamento de Informática PROGRAMACIÓN DIDÁCTICA Curso 11-12 1 CONSEJERÍA DE EDUCACIÓN I.E.S. NERVIÓN Departamento de Informática CICLO FORMATIVO: TÉCNICO SUPERIOR EN DESARROLLO DE APLICACIONES MULTIPLATAFORMA.

Más detalles

Contenido. Capítulo 1. Introducción a lenguaje C 1

Contenido. Capítulo 1. Introducción a lenguaje C 1 Contenido Capítulo 1. Introducción a lenguaje C 1 Introducción... 2 Qué es un lenguaje de programación?... 2 Tipos de lenguajes de programación... 2 Introducción a lenguaje C... 2 Historia de lenguaje

Más detalles

Introducción a la Firma Electrónica en MIDAS

Introducción a la Firma Electrónica en MIDAS Introducción a la Firma Electrónica en MIDAS Firma Digital Introducción. El Módulo para la Integración de Documentos y Acceso a los Sistemas(MIDAS) emplea la firma digital como método de aseguramiento

Más detalles

Tema 2. Software. Informática (1º Ingeniería Civil) jcarmur@unex.es

Tema 2. Software. Informática (1º Ingeniería Civil) jcarmur@unex.es Tema 2. Software Informática (1º Ingeniería Civil) Curso 2011/2012 Javier Carmona Murillo jcarmur@unex.es Índice Introducción. Programas e instrucciones. Tipos y estructuras de datos. Algoritmos. Proceso

Más detalles

GENERACIÓN DE CÓDIGO

GENERACIÓN DE CÓDIGO GENERACIÓN DE CÓDIGO INTRODUCCION La generación de código es la fase más compleja de un compilador, puesto que no sólo depende de las características del lenguaje fuente sino también de contar con información

Más detalles

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016!

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016! INFORMÁTICA Práctica4. ProgramaciónbásicaenC. GradoenIngenieríaenElectrónicayAutomáticaIndustrial Curso2015H2016 v2.1(18.09.2015) A continuación figuran una serie de ejercicios propuestos, agrupados por

Más detalles

Matemática de redes Representación binaria de datos Bits y bytes

Matemática de redes Representación binaria de datos Bits y bytes Matemática de redes Representación binaria de datos Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS. Los computadores sólo pueden entender

Más detalles

LABORATORIO 1 OPERACIONES DE ENTRADA Y SALIDA

LABORATORIO 1 OPERACIONES DE ENTRADA Y SALIDA LABORATORIO 1 OPERACIONES DE ENTRADA Y SALIDA 1 OBJETIVOS Al finalizar esta actividad, serás capaz de: Entender el funcionamiento del compilador. Definir variables y efectuar asignaciones de valores con

Más detalles

Bases de datos en Excel

Bases de datos en Excel Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Bases de datos en Excel Hojas de cálculo Tema 5 Bases de datos en Excel Hasta ahora hemos usado Excel básicamente para realizar cálculos

Más detalles

República Bolivariana de Venezuela Aldea Universitaria Liceo Fray Pedro de Agreda. Lenguaje C++ Contadores y Acumuladores

República Bolivariana de Venezuela Aldea Universitaria Liceo Fray Pedro de Agreda. Lenguaje C++ Contadores y Acumuladores República Bolivariana de Venezuela Aldea Universitaria Liceo Fray Pedro de Agreda Prof. Elías Cisneros. Lenguaje C++ Contadores y Acumuladores Usted es libre de: * Copiar, distribuir y comunicar públicamente

Más detalles

Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011

Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011 Módulo 2. Fundamentos de Programación Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011 1 CONTENIDO Tema 1. Conceptos generales de algorítmica Tema 2. Sentencias

Más detalles

Estructuras de repetición hacer-mientras y repita hasta

Estructuras de repetición hacer-mientras y repita hasta Estructuras de repetición hacer-mientras y repita hasta Programación 1 Cátedra de Programación Departamento de Computación Escuela de Ingeniería de Sistemas Hacer mientras Diagrama de flujo Acciones S1

Más detalles

Contenidos. Funciones (suplemento) Funciones. Justificación del uso de Funciones

Contenidos. Funciones (suplemento) Funciones. Justificación del uso de Funciones Contenidos 1. Justificación del uso de funciones. 2. Declaración de funciones: prototipos. 3. Prototipos y ficheros de cabecera. 4. Polimorfismo (sobrecarga de funciones). 5. Argumentos formales y actuales.

Más detalles

Presentaciones. Con el estudio de esta Unidad pretendemos alcanzar los siguientes objetivos:

Presentaciones. Con el estudio de esta Unidad pretendemos alcanzar los siguientes objetivos: UNIDAD 8 Presentaciones Reunión. (ITE. Banco de imágenes) as presentaciones son documentos formados por una sucesión de páginas, llamadas diapositivas, que transmiten información estructurada de manera

Más detalles

Ejercicios. 1. Definir en Maxima las siguientes funciones y evaluarlas en los puntos que se indican:

Ejercicios. 1. Definir en Maxima las siguientes funciones y evaluarlas en los puntos que se indican: Ejercicios. 1. Definir en Maxima las siguientes funciones y evaluarlas en los puntos que se indican: 2. Graficar las funciones anteriores, definiendo adecuadamente los rangos de x e y, para visualizar

Más detalles

1 La Resolución de Problemas utilizando la Computadora

1 La Resolución de Problemas utilizando la Computadora La Resolución de Problemas utilizando la Computadora Lissette Alvarez Abril-Julio, 2004 El Computador es una máquina que no puede trabajar por si sola, únicamente realiza aquellas órdenes que el hombre

Más detalles

DEPARTAMENTO: Informática. MATERIA: Programación. NIVEL: 1º Desarrollo de Aplicaciones Multiplataforma

DEPARTAMENTO: Informática. MATERIA: Programación. NIVEL: 1º Desarrollo de Aplicaciones Multiplataforma DEPARTAMENTO: Informática MATERIA: Programación NIVEL: 1º Desarrollo de Aplicaciones Multiplataforma 1. Objetivos. Competencias Profesionales, Personales y Sociales 1.1 Objetivos del ciclo formativo La

Más detalles

Fórmulas y funciones

Fórmulas y funciones Fórmulas y funciones Uso de fórmulas Las fórmulas son el corazón y el alma de la hoja de cálculo. Si no las necesitáramos sería lo mismo que trabajáramos en un procesador de textos. Excel 2007 ofrece un

Más detalles

1 ELEMENTOS BASICOS DEL LENGUAJE

1 ELEMENTOS BASICOS DEL LENGUAJE 1 ELEMENTOS SICOS DEL LENGUJE Contenido: Variables su declaracion y asignacion Caracteres en java Secuencias de escape y comentarios Tipos de datos Operadores aritméticos, relacionales y lógicos Entrada

Más detalles

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1 Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1.1 Ejercicio 1: Máquina Expendedora (3.5 ptos.)... 1 1.2 Ejercicio 2: Clase Circulo (1.0 pto.)... 3 1.3 Ejercicio

Más detalles

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

Introduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por

Más detalles

Curso PHP Módulo 1 R-Luis

Curso PHP Módulo 1 R-Luis Lenguaje PHP Introducción Archivos HTML y PHP: Crear un archivo php es tan sencillo como cambiarle la extensión a un archivo html, por ejemplo podemos pasar de index.html a index.php sin ningún inconveniente.

Más detalles

SOLUCION EXAMEN junio 2006

SOLUCION EXAMEN junio 2006 SOLUCION EXAMEN junio 2006 1. Explique razonadamente si las siguientes afirmaciones son verdaderas o falsas: I) (1 p) En UNIX únicamente se distinguen dos tipos de procesos: los procesos de usuario y los

Más detalles

NOTAS TÉCNICAS SOBRE EL SIT: Documentos de Gestión

NOTAS TÉCNICAS SOBRE EL SIT: Documentos de Gestión NOTAS TÉCNICAS SOBRE EL SIT: Documentos de Gestión Introducción...2 Tipos de documentos...2 Datos de Cabecera...3 Nuevo Documento... 3 Modificar Documento... 4 Añadir, modificar y eliminar Artículos...5

Más detalles

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle:

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle: PL/SQL (Procedural Language/Structured Query Language) PL/SQL es el lenguaje de programación que proporciona Oracle para extender el SQL estándar con otro tipo de instrucciones y elementos propios de los

Más detalles

Operación Microsoft Access 97

Operación Microsoft Access 97 Trabajar con Controles Características de los controles Un control es un objeto gráfico, como por ejemplo un cuadro de texto, un botón de comando o un rectángulo que se coloca en un formulario o informe

Más detalles

Capítulo 9. Archivos de sintaxis

Capítulo 9. Archivos de sintaxis Capítulo 9 Archivos de sintaxis El SPSS permite generar y editar archivos de texto con sintaxis SPSS, es decir, archivos de texto con instrucciones de programación en un lenguaje propio del SPSS. Esta

Más detalles

Operaciones básicas, fórmulas, referencias absolutas, relativas y mixtas.

Operaciones básicas, fórmulas, referencias absolutas, relativas y mixtas. Módulo 3 Herramientas de Cómputo Operaciones básicas, fórmulas, referencias absolutas, relativas y mixtas. Operaciones Básicas Las operaciones básicas que se realizan en una hoja de cálculo son: Seleccionar

Más detalles

GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD

GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD Manual de usuario 1 - ÍNDICE 1 - ÍNDICE... 2 2 - INTRODUCCIÓN... 3 3 - SELECCIÓN CARPETA TRABAJO... 4 3.1 CÓMO CAMBIAR DE EMPRESA O DE CARPETA DE TRABAJO?...

Más detalles

Instructivo de Microsoft Excel 2003

Instructivo de Microsoft Excel 2003 Instructivo de Microsoft Excel 2003 El presente instructivo corresponde a una guía básica para el manejo del programa y la adquisición de conceptos en relación a este utilitario. Que es Microsoft Excel?

Más detalles

Tema 7: Programación con Matlab

Tema 7: Programación con Matlab Tema 7: Programación con Matlab 1. Introducción Matlab puede utilizarse como un lenguaje de programación que incluye todos los elementos necesarios. Añade la gran ventaja de poder incorporar a los programas

Más detalles

Lenguaje C. Tipos de Datos Simples y Estructuras de Control

Lenguaje C. Tipos de Datos Simples y Estructuras de Control Lenguaje C Tipos de Datos Simples y Estructuras de Control Lenguaje C C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolución del anterior lenguaje

Más detalles

Tema 4. Gestión de entrada/salida

Tema 4. Gestión de entrada/salida Tema 4. Gestión de entrada/salida 1. Principios de la gestión de E/S. 1.Problemática de los dispositivos de E/S. 2.Objetivos generales del software de E/S. 3.Principios hardware de E/S. 1. E/S controlada

Más detalles

Web de Letras Manual de usuario. Gestiona tus letras por internet

Web de Letras Manual de usuario. Gestiona tus letras por internet Web de Letras Manual de usuario Gestiona tus letras por internet Introducción al Sistema 1. Introducción 2 2. Ingreso al Sistema 3 3. Ingreso a la Opción Registro de Planillas 4 3.1 Digitar Planilla 4

Más detalles

Mi primer proyecto en Dev-C++

Mi primer proyecto en Dev-C++ Mi primer proyecto en Dev-C++ Para realizar esta actividad deberás disponer de un ordenador en el que esté instalado el Dev-C++. Debes ir realizando cada uno de los pasos indicados, en el mismo orden en

Más detalles

Contenidos. Archivos en C++ Archivos en C++ Introducción

Contenidos. Archivos en C++ Archivos en C++ Introducción Contenidos 1. Introducción. 2. Manipulación de ficheros. 3. Organización de archivos. 4. Tipo de almacenamiento. 5. Biblioteca de flujos. 6. Operaciones asociadas a archivos: Abrir fichero, Cerrar fichero,

Más detalles

Tema: FUNCIONES, PROCEDIMIENTOS Y RECURSIVIDAD.

Tema: FUNCIONES, PROCEDIMIENTOS Y RECURSIVIDAD. Programación I, Guía 6 1 Facultad : Ingeniería Escuela : Computación Asignatura: Programación I Tema: FUNCIONES, PROCEDIMIENTOS Y RECURSIVIDAD. Objetivos Utilizar la sintaxis de las funciones definidas

Más detalles

Resolución de Problemas

Resolución de Problemas Resolución de Problemas con algoritmos Colaboratorio de Computación Avanzada (CNCA) 2015 1 / 27 Contenidos 1 Introducción 2 Elementos de algoritmos Elementos Variables Estructuras de Control Condicionales

Más detalles

CLASE # 5 TÉCNICAS DE CAJA BLANCA

CLASE # 5 TÉCNICAS DE CAJA BLANCA CLASE # 5 TÉCNICAS DE CAJA BLANCA 750105M - TÉCNICAS DE PRUEBAS DE SOFTWARE INGENIERÍA DE SISTEMAS Y COMPUTACIÓN UNIVERSIDAD DEL VALLE SEMESTRE 2013A - DOCENTE BEATRIZ FLORIAN GAVIRIA Basado Parcialmente

Más detalles

Cifras significativas e incertidumbre en las mediciones

Cifras significativas e incertidumbre en las mediciones Unidades de medición Cifras significativas e incertidumbre en las mediciones Todas las mediciones constan de una unidad que nos indica lo que fue medido y un número que indica cuántas de esas unidades

Más detalles

PROYECTOS, FORMULACIÓN Y CRITERIOS DE EVALUACIÓN

PROYECTOS, FORMULACIÓN Y CRITERIOS DE EVALUACIÓN PROYECTOS, FORMULACIÓN Y CRITERIOS DE EVALUACIÓN GESTIÓN DE PROYECTOS CON PLANNER AVC APOYO VIRTUAL PARA EL CONOCIMIENTO GESTIÓN DE PROYECTOS CON PLANNER Planner es una poderosa herramienta de software

Más detalles

UNIVERSIDAD DE ESPECIALIDADES ESPÍRITU SANTO FACULTAD DE INGENIERIA DE SISTEMAS Y TELECOMUNICACIONES SYLLABUS

UNIVERSIDAD DE ESPECIALIDADES ESPÍRITU SANTO FACULTAD DE INGENIERIA DE SISTEMAS Y TELECOMUNICACIONES SYLLABUS UNIVERSIDAD DE ESPECIALIDADES ESPÍRITU SANTO FACULTAD DE INGENIERIA DE SISTEMAS Y TELECOMUNICACIONES SYLLABUS FOR DAC 11 VER 11 05 08 DATOS GENERALES MATERIA Laboratorio de Fundamentos de Programación

Más detalles