U NIVERSIDAD ALAS PERUANAS FACULTAD DE INGENIERÍAS Y ARQUITECTURA ESCUELA ACADÉMICO PROFESIONAL DE INGENIERÍA INDUSTRIAL FUNDAMENTOS DE COMPUTACIÓN E INFORMÁTICA ALGORITMOS SILABO I. DATOS GENERALES CARRERA PROFESIONAL CÓDIGO DE CARRERA PROF. ASIGNATURA : : : CODIGO DE ASIGNATURA Nº DE HORAS TOTALES Nº DE HORAS TEÓRICAS Nº DE HORAS PRÁCTICA Nº DE CRÉDITOS CICLO PRE – REQUISITOS TIPO DE CURSO DURACIÓN DEL CURSO CURSO REGULAR EXAMEN SUSTITUTORIO : : : : : : : : : : : INGENIERÍA INDUSTRIAL 17 FUNDAMENTOS DE COMPUTACIÓN E INFORMÁTICA - ALGORITMOS 1703 - 17206 2 HORAS SEMANALES 1 HORA SEMANAL 2 HORAS SEMANALES 4 CRÉDITOS POR CICLO III CICLO NINGUNO OBLIGATORIO 18 SEMANAS EN TOTAL 17 SEMANAS 1 SEMANA II. DESCRIPCION DE LA ASIGNATURA Esta asignatura es de naturaleza teórico - práctica orientada a proporcionar al estudiante de sistemas e informática de ALAS PERUANAS, una visión general de su carrera, así como iniciarlo en el aprendizaje de las técnicas básicas de programación y las características más notables de los lenguajes de programación vigentes en el mercado, desde una óptica de programación independiente del lenguaje. Sin embargo, para afianzar los conocimientos, en el laboratorio se utilizará un lenguaje de programación que permita al alumno verificar cada una de las etapas en el tratamiento informático de un problema. Se divide en 5 unidades: 1. ¿PORQUÉ SE UTILIZA UNA COMPUTADORA? Formado por: HARDWARE: En el que se considera sus elementos básicos de la computadora y su funcionamiento y SOFTWARE: En el que se desarrollan las etapas en el tratamiento informático de un problema. Tipos . Virus y problemática. Lenguajes de Programación. 2. REPRESENTACIÓN DE LA INFORMACIÓN EN LAS COMPUTADORAS: En la que se desarrollan los sistemas de numeración usuales en informática. Sistema en base 2: operaciones aritméticas y representación interna de la información. 3. EL DEPARTAMENTO DE SISTEMAS E INFORMATICA Y COMO FUNCIONA, trata sobre la Clasificación y formas organizacionales de los centros de sistemas (computación) e informática. CONCEPTOS DE SISTEMAS DE INFORMACIÓN, en el que se trata los requerimientos de sistemas de información y el rol del ingeniero de sistemas e informática 4. ALGORITMOS – CONCEPTOS BASICOS, en la que se define algoritmos, sus características, notaciones. Elementos de un programa. Operadores y expresiones. Instrucciones o sentencias simples. 5. PROGRAMACIÓN ESTRUCTURADA. en la que se consideran las estructuras de control (secuencial, selectivo y repetitivo), que servirán de base para el curso de algoritmos y estructura de datos II. En cada una de las unidades de esta asignatura se desarrollan aplicaciones reales, en pseudocódigo, proporcionando el soporte necesario para la codificación en cualquier lenguaje de programación, sirviendo de articulación en el proyecto curricular que define el perfil profesional del egresado de esta casa de estudios. III. OBJETIVOS: Los objetivos generales y específicos que esperamos que el estudiante alcance al término de esta asignatura son: A) OBJETIVOS GENERALES: Entender y comprender porque se utiliza un computador Conocer el funcionamiento del departamento de sistemas e informática y los conceptos básicos de sistemas de información. Comprender y manejar las estructuras de datos y las operaciones mas usadas para el procesamiento de información en una computadora. Verificar en el laboratorio, las etapas en el tratamiento informático de un problema. B) OBJETIVOS ESPECÍFICOS: Que el estudiante sea capaz de: HARDWARE Conocer la división física de la computadora (Unidad Central del Sistema y periféricos) Diferenciar la memoria RAM y ROM Identificar los diversos tipos de periféricos :de entrda de salida, de almacenamiento y de comunicación. Conocer los elementos básicos de la UCS Comprender el funcionamiento de la CPU ( UC, UAL, y registros) Conocer os factores que influyen en la potencia de una computadora. SOFTWARE Entender los conceptos básicos de la programación, la estructura y creación de un programa. Reconocer y utilizar algoritmos-pseudocódigo como herramienta para el bosquejo de solución de un problema. Comprender y entender cada una de las fases de desarrollo de un programa Conocer los conceptos de tipos de datos, variables, instrucciones de entrada, salida y asignación. Comprender el uso de expresiones y operadores aritméticos así como funciones predefinidas o estándar. VIRUS Conocer los virus mas comunes y su problemática. Conocer las formas de infección. Conocer las formas de prevención, detección, y eliminación. LENGUAJES DE PROGRAMACIÓN Conocer el porque existen diversos lenguajes de programación Explicar la razón de la existencia de cada LP, los problemas a los que son aplicables y sus ventajas e inconveniencias. REPRESENTACIÓN DE LA INFORMACIÓN EN LAS COMPUTADORAS Comprender los sistemas de numeración matemáticos. Transformación de un sistema de numeración a otro y viceversa. Conocer las principales operaciones aritméticas binarias. Conocer los sistemas de numeración intermedios y su conversión entre ellos. Conocer los códigos de entrada/salida : BCD, EBCDIC y ASCII. Conocer como se representa internamente la información. Emplear el sistema hexadecimal en la codificación de colores. EL DEPARTAMENTO DE SISTEMAS E INFORMATICA Y COMO FUNCIONA. Detallar la forma de funcionar de los dos tipos más importantes Diseñar los organigramas tradicionales de personal para tres de los principales tipos de Centros de sistemas. Explicar en forma generalizada sus responsabilidades y métodos de control interno CONCEPTOS DE SISTEMAS DE INFORMACION Definir en qué consisten los sistemas de información Conocer la importancia multidisciplinaria del ingeniero de sistemas. ALGORITMOS: CONCEPTOS BÁSICOS Conocer y utilizar diversas formas de representar los algoritmos. Conocer adecuadamente los elementos de un programa Reconocer y utilizar algoritmos pseudocódigos como herramienta para el bosquejo de solución de un problema. Comprender y entender cada una de las fases de desarrollo de un programa. Comprender los conceptos de tipos de datos, variables, instrucciones de entrada, salida y asignación. Comprender el uso de expresiones y operaciones aritméticas asi como funciones predefinidas o estándar. Aprender a resolver utilizando pseudocódigos y su codificación en un lenguaje de programación de alto nivel. PROGRAMACIÓN ESTRUCTURADA Entender y utilizar las estructuras de control secuenciales, de decisión y de repetición en la solución de problemas. Conocer y comprender la labor de un programador, desde el análisis del problema, (planteamiento del problema), pasando por el diseño del procedimiento de solución, codificación en un lenguaje de programación, pruebas con un amplio conjunto de datos de entrada que permita la verificación de los resultados, documentación (que permita que cualquier programador sea capaz de entenderlo), hasta el mantenimiento. IV. METODOLOGIA El profesor hará la presentación introductoria del curso y del Syllabus propiamente dicho. Promoverá el diálogo constante con los alumnos para ayudar a que fijen y profundicen mejor los conocimientos que vayan adquiriendo. En todo momento resaltará la importancia de la necesidad de su participación espontánea en el curso y que no sólo deben conocer sino, investigar los diferentes temas tratados. Los temas serán enseñados mencionando su aplicación actual en la vida real y citando analogías para permitirles fijar mejor los conceptos. Se solicitará a los alumnos una monografía como mínimo sobre un tema previamente acordado con el profesor para que se familiaricen con la forma de trabajar de los profesionales de su carrera. Deberán, en todo momento, tener como fuente principal de consulta la separata que les proporcionará el profesor al inicio del curso para que le saquen copia; también podrán consultar Internet y los libros mencionados en la sección Bibliografía. Es requisito, que el alumno, en todos los Trabajos de Investigación, Prácticas, Monografías, Presentaciones, etc. haga uso intensivo de la Tecnología de la Información con énfasis en la Ofimática para Ingenieros, la misma que tiene incluida: Internet, Intranet, Red de la FISI y Correo Electrónico; V. EVALUACION El reglamento vigente de la universidad exige la asistencia obligatoria a clases y que el profesor pase lista de asistencia en cada clase que dicta, anotando las inasistencias en el registro que le proporciona la Universidad. Dada la naturaleza del curso respecto a que imparte conocimientos pero además es de suma importancia la transmisión directa de la experiencia del profesor y que los alumnos participen activamente en el aula, se reitera que es de vital importancia la asistencia a clases. La justificación de las inasistencias sólo serán aceptadas con el informe que pueda elevar, el Departamento de Bienestar Universitario, al profesor del curso con copia al Director Académico de la Carrera. Finalmente, debe quedar perfectamente entendido que sólo cuando el alumno asiste a clases, gana el derecho de ser evaluado y que en todo momento estará presente la normatividad expresada en el reglamento de la Universidad. La modalidad de Evaluación sería la siguiente: Promedio de Prácticas Calificadas (PPC), que consisten en Ejercicios dados por el profesor del curso al alumno para que haga investigación sobre los temas y las responda utilizando la forma de Hojas Escritas. Examen Parcial (EP), que consiste de una evaluación teórico - práctico de conocimiento y donde el alumno dará sus respuestas por escrito. Examen Final (EF), que consiste en la evaluación teórico - práctico de conocimiento de todo el curso y donde el alumno dará sus respuestas por escrito. Tarea Académica (TA), que consiste en trabajos del curso asignados por el docente y que fomenten la investigación en la materia del curso. La Nota Final (NF) la obtenemos de la siguiente manera: Examen Sustitutorio (ES), que consiste en la evaluación teórico - práctico de conocimiento de todo el curso y donde el alumno dará sus respuestas por escrito. La nota obtenida en el examen sustitutorio, podrá reemplazar la nota más baja que el alumno haya obtenido en su Examen Parcial o en el Examen Final y de proceder el reemplazo, se recalculará la nueva nota final. En caso la nota del Examen Sustitutorio sea más baja que la nota más baja del Examen Parcial o del Examen final, no se reemplazará ninguna de ellas, quedando el alumno con la nota obtenida hasta antes del examen Sustitutorio. Es de total aplicación el Reglamento Transitorio de Evaluación de la Universidad entregado al alumno. VI. CONTENIDO ANALITICO UNIDAD 1: ¿PORQUÉ SE UTILIZA UNA COMPUTADORA? SEMANA 01 HARDWARE Elementos básicos: El Microprocesador Central (CPU), placa principal, Bus, Memoria Principal. Funcionamiento de la CPU: Unidad de Control UC, Unidad Aritmética y Lógica UAL, Registros. Periféricos: Periféricos de entrada: Teclado: teclas de función, teclas numéricas, teclas alfanuméricas, teclas numéricas, teclas de edición, teclas especiales. Ratón, Lector de código de barras, Lector de tarjetas magnéticas, Lápiz óptico. Escáner, Tableta digitalizadora, Periféricos de salida: Pantallas de sistemas informáticos, Impresoras, Trazadores gráficos (plotters), Filmadoras / digitalizadoras. Periféricos de almacenamiento: Discos, CD Rom, cintas magnéticas, Discos ópticos escribibles, Comunicaciones: Modems. LABORATORIO 1: Proyección de videos / imágenes SEMANA 02 Clasificación de las Computadoras – atendiendo al poder de cómputo: Supercomputadoras, macrocomputadoras (mainframes), minicomputadoras, estaciones de trabajo (workdtations) , ordenadores personales(PC), calculadoras programables. LABORATORIO 2: Proyección de videos / imágenes. SEMANA 03 SOFTWARE El Software y la Resolución de problemas Tratamiento informático de un problema: Análisis del problema, Diseño general y detallado, Codificación en un lenguaje de programación, Pruebas y documentación., Mantenimiento Tipos de Software. Software de Sistema, que se encarga de gobernar la computadora. Sistema operativo Software de desarrollo, que traducen, detectan errores, optimizan, etc los programas escritos por el usuario al lenguaje de las computadoras. Compiladores e interpretes, Ensambladores, montadores y cargadores. Depuradores y trazadores. Software de aplicaciones, que permite editar gráficos y textos, manejar bases de datos, llevar el control de facturación o contabilidad de una empresa, etc. Software de ofimática (editores de texto, hojas de calculo y pequeños gestores de bases de datos). Software de edición y diseño gráfico, CAD Software de gestión empresarial, gestión de almacenes, de facturación, de nóminas, etc. Software de ingeniería y ciencias, cálculos de estructuras en ing. Civil, de modelización del clima, etc. LABORATORIO 3 : Proyección en DataDisplay de Tipos de software SEMANA 04 VIRUS Virus. Antivirus y problemática. Formas de infección. Formas de prevención, detección, y eliminación. Primera Práctica Calificada SEMANA 05 Lenguajes de Programación. ¿Porque la diversidad de lenguajes informáticos? Tipos de Lenguajes informáticos: Lenguajes de programación imperativa, Lenguajes de programación funcional, Lenguaje de programación Lógica, Lenguaje de programación orientada a objetos. SEMANA 06 REPRESENTACIÓN DE LA INFORMACIÓN EN LAS COMPUTADORAS Sistemas de numeración usuales en informática Representación posicional de los números. Sistema de numeración en base 2: Transformaciones de binario a decimal y Transformaciones de decimal a binario. Operaciones aritméticas binarias. Códigos intermedios: Base octal, base hexadecimales. Códigos de entrada/salida Representación interna de la información. Representación interna de los distintos tipos de datos. Representación interna de los datos enteros: en binario y en BCD Representación interna de los datos de tipo real. LABORATORIO 4: Aplicaciones de chequeo usando accesorios de windows Calculadora. Paint. - Codificación de colores en hexadecimal. SEMANA 07 EL DEPARTAMENTO DE SISTEMAS E INFORMATICA Y COMO FUNCIONA Clasificación y formas organizacionales de los Centros de sistemas (computación) e informática. Funcionamiento de los dos tipos más importantes. Diseño de los organigramas tradicionales de personal para tres de los principales tipos de Centros de Sistemas. Responsabilidades y métodos de control interno. El Ingeniero de Sistemas y el Mando Intermedio. DEBATE y participación del alumnado en clase. SEMANA 08 CONCEPTOS DE SISTEMAS DE INFORMACION Definición y ubicación en el contexto multidisciplinario. - Importancia del Ingeniero de sistemas. Los tipos de sistemas de información en los niveles empresariales. - Relación con las necesidades de información por niveles de ejecutivos en la empresa. - La pirámide tradicional de los requerimientos empresariales de información. Segunda Práctica Calificada SEMANA 09 Examen Parcial. UNIDAD 2: ALGORITMOS SEMANA 10 INTRODUCCION Definición de algoritmos. Características. Notaciones para describir algoritmos: pseudocódigo, Nassi sneidermann, y diagramas de flujo. pseudocódigo .- reglas. Como construir programas. Elementos de programas: Datos : definiciones y tipos. Constantes y variables: Constantes: enteras, reales, carácter, cadena de caracteres. Variables: nombre, declaración e inicialización. Tipos de datos- modificadores de tipo- real, entero, carácter y lógico Expresiones Operadores y operadores aritméticos Operadores y expresiones relacionales lógicas. Operadores y expresiones de asignación. Precedencia de los operadores. Instrucciones o sentencias simples: Sentencias de asignación, Sentencias matemáticas y Sentencias de entrada/salida. LABORATORIO 5: Instrucciones o sentencias en el lenguaje C++. SEMANA 11 UNIDAD 3 PROGRAMACIÓN ESTRUCTURADA Conceptos básicos de la programación estructurada. ESTRUCTURAS EN EL DESARROLLO DE ALGORITMOS (PSEUDOCODIGO) Enunciado de Asignación - Reglas. Enunciado de Lectura y de escritura. ESTRUCTURAS SECUENCIALES Funciones Estándar aritméticas: seno, coseno, arcotangente, exponencial, logaritmica, truncamiento, redondeo, fracción. Funciones estándar algebraicas-operaciones con cadenas: longitud de una cadena, comparación, concatenación, subcadena, búsqueda de una cadena en otra, Insertar, borrar, cambiar. Conversión de cadenas en números y viceversa. Ejercicios de Construcción de Algoritmos. Algoritmos de Aplicación SEMANA 12 LABORATORIO 6 Resolución de problemas aplicados, con estructuras secuenciales, usando el lenguaje de programación C++. Tercera Práctica Calificada SEMANA 13 ESTRUCTURAS SELECTIVAS Expresiones Lógicas. Estructura de Selección: Simple, Doble y Múltiple. IF (SI..) y CASE (CASO). Ejercicios de Aplicación. SEMANA 14 LABORATORIO 7 Resolución de Problemas aplicados con estructuras Selectivas, usando el lenguaje de programación C++. SEMANA 15 ESTRUCTURAS REPETITIVAS FOR (PARA) simples y anidados REPEAT (REPETIR). DOWHILE(HACER MIENTRAS). Simulación de la estructura FOR. Comparación entre estructuras de Repetición. Contador y acumulador - Ejercicios Prácticos. SEMANA 16 LABORATORIO 8 Resolución de Problemas aplicados, usando estructuras Repetitivas, en el lenguaje de programación C++. Cuarta Práctica calificada. SEMANA 17 Examen Final SEMANA 18 Examen Sustitutorio VII. REFERENCIAS 1. Programación Estructurada. Un enfoque algorítmico. Leobardo Lopez Román. Computec 2. Fundamentos de Programación. Algoritmos y Estructura de Datos - Luis 3. Joyanes - Editorial Mc Graw Hill - 1990. 4. Estructura de Datos y Algoritmos - Mark Allen Weiss - Editorial Limusa - 1990. 5. Estructura de datos. Seymour Lipschutz. Mc Graw Hill 6. Sistemas y Conceptos de Bases de Datos - Henry Korth - Editorial Limusa - 1990. 7. Estructura de datos – Osvaldo Cairo. Mc. Graw Hill – 1994 8. Metodología de la Programación. Tomo I – II. Osvaldo Cairo – Computec 1996 9. Programación sin secretos. España. VIII. ARTICULOS DE INTERNET: Referencias De Computación: http://www.monografias.com/trabajos/refercomp/refercomp.shtml Bases de la Teleinformática: http://www.monografias.com/trabajos4/teleinf/teleinf.shtml Redes de Computadoras: http://www.monografias.com/trabajos5/redes/redes.shtml Redes y Comunicaciones: http://www.monografias.com/trabajos3/redycomun/redycomun.shtml Internet: http://www.monografias.com/trabajos5/rnet/rnet.shtml TEMAS DE COMPUTACIÓN : Hardware y software. http://www.sandrex.net/ IX. BIBLIOGRAFÍA BASICA: 1. Deitel H. M. : Como programar en c/c++. EDI 1. 2. Hornig : Comodore 128: Consejos y Trucos. EDI 1. 3. Schmidt : Comodore 128: para principiantes. EDI 1. 4. Fournier G. J. : Introduccion a la Informatica. EDI 1. 5. Levine G. G. : Estructura Fundamental DE la Computación. EDI 1. 6. Costales B. : Introducción al lenguaje C. EDI 1. 7. Cevallos S. F. J. : Cursos de programación con C. EDI 1. 8. Freedman A. : Diccionario de computación. EDI 4. 9. Schevin G. H. : Diccionario Moderno de Informatica. EDI 1. 10. Farrando R. : 109 Programas para ordenadores personales y calculos. EDI 1. 11. Campbell M. : 1-2-3 para windows a su alcance. EDI 2.