COIS 270 PROGRAMACIÓN EN LENGUAJE C++ Universidad del Este, Universidad Metropolitana, Universidad del Turabo © Sistema Universitario Ana G. Méndez, 2003 Derechos Reservados Rev. AGOSTO 12 2006. Carmen G. Betancourt Escuela de Estudios Profesionales Programa Ahora Universidad del Este Tabla de Contenido PRONTUARIO -------------------------------------------------------------------------------------------------------------- 3 TALLER UNO------------------------------------------------------------------------------------------------------------- 10 TALLER DOS ------------------------------------------------------------------------------------------------------------- 13 TALLER TRES ----------------------------------------------------------------------------------------------------------- 16 TALLER CUATRO ------------------------------------------------------------------------------------------------------ 18 TALLER CINCO---------------------------------------------------------------------------------------------------------- 20 TALLER SEIS ------------------------------------------------------------------------------------------------------------ 23 TALLER SIETE----------------------------------------------------------------------------------------------------------- 25 TALLER OCHO ---------------------------------------------------------------------------------------------------------- 28 ANEJOS-------------------------------------------------------------------------------------------------------------------- 30 ANEJO A------------------------------------------------------------------------------------------------------------------- 31 HOJA DE PUNTO MÁS CONFUSO ANEJO B------------------------------------------------------------------------------------------------------------------- 32 CONOCIENDO MICROSOFT VISUAL C++ 6.0 ANEJO C------------------------------------------------------------------------------------------------------------------- 34 EL SISTEMA DE MENÚS ANEJO D------------------------------------------------------------------------------------------------------------------- 43 PALABRAS RESERVADAS EN C++ ANEJO E ------------------------------------------------------------------------------------------------------------------- 44 ESTRUCTURA DE UN PROGRAMA EN C++ Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 2 Escuela de Estudios Profesionales Programa Ahora Universidad del Este PRONTUARIO Título del curso: Programación en C ++ Código: COIS 270 Duración: Ocho (8) semanas Prerrequisito: COIS 115 Descripción: Estudio de distintas estructuras de datos (lineales y no lineales) y sus implementaciones (técnicas de búsqueda, ordenación y manejo). Se incluye pilas (stacks), colas (queues) y árboles (trees) desde la perspectiva de tipos de datos abstractos (ADT). También se estudia la programación para el procesamiento de dichas estructuras. Se requieren proyectos de programación utilizando el lenguaje C. Incluye experiencia en el laboratorio. Un semestre, 4 horas semanales. Objetivos Generales 1. Usará adecuadamente la terminología en la organización y estructura de Datos. 2. Formulará operaciones con las estructuras diseñadas. 3. Aplicará correctamente cada tipo concreto de estructura de datos. 4. Desarrollará programas complejos en una forma más sencilla eficaz. 5. Creará algoritmos de programas para de un problema dado. Texto y bibliografía sugerida Malik, D., Data Structures Using C++, Thomson Learning, 2003. Diane Zak, An Introduction to Programming with C++, Thomson Learning. Programación sin secretos. (1999). Cultural S.A. Corica, Tim, et al. (2001). A Guide to Programming in C++, (2da. ed.) NJ: Lawrenceville Press. Parette, Bill (2000). Learning Programming Fundamentals with C++ New York, New York: DDC Publishing. (1999). Getting Started with C++ Programming Language: A Primer on Stroustrup’s C++., Jain, S.K. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 3 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Schildt Herbert. (1998). The Single Easiest Way to Master C++ Programming. (3ra. ed.) New York, New York: Osborne/Mc Graw-Hill. Stangaard, Andrew C. (1997). Structured and Object-oriented Techniques: An Introduction Using C++. (2da. ed.). Empresas en general http://www.camagazine.com/cica/camagazine.nsf/eCurrent/toc CA Magazine - Artículos en inglés sobre temas relacionados al mundo de las empresas http://www.us.kpmg.com/ps/mi/ KPMG Management Issues – Artículos sobre temas variados en el campo de las empresas. http://scout.cs.wisc.edu/report/bus-econ/current/index.html Scout Report for Business and Economics – Publicado por la Universidad de Wisconsin – Madison, presenta cada dos semanas, enlaces a páginas del Internet en las áreas de negocios. http://www.marketingtools.com/- Revista American Demographics (Marketing Tools) – Variedad de artículos de análisis y presentación dentro del campo del mercadeo http://www.economist.com/Página de la prestigiosa revista The Economist; acceso limitado a artículos http://news.ft.com/ Página de la revista Financial Times http://www.stat-usa.gov/ Página del Departamento del Comercio de los Estados Unidos con datos estadísticos sobre las finanzas y los negocios. http://spin.com.mx/~rjaguado/trends.html 10 tendencias tecnológicas en la Administración de empresas http://pespmc1.vub.ac.be/CYBSWHAT.html Cibernética y teoría de sistemas http://www.washingtonpost.com/wp-srv/business/longterm/glossary/ Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 4 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Glosario de términos de negocios del Washington Post. http://www.euro.net/innovation/Management_Base/Man_Guide_Rel_1.0B1/MainTop ics.html Diccionario de Administración y Tecnología en inglés. http://wwli.com/translation/netglos/netglos.html Glosario multilingüe de términos de Internet. http://www.internet.com/home-d.htmlRevista Internet.com http://www.latintrade.com/ Revista LatinTrade.com http://www.fortune.com/fortune/ Versión digital de la Revista Fortune Computadoras en general http://www.telefonica.es/fat/lex.html Diccionario inglés-español de términos de computadora. http://www.ciberpais.elpais.es/ Sección de computadoras del Diario El País de España. http://www.el-mundo.es/navegante/diario/ Diario El Navegante – Noticias de actualidad sobre informática, actualizada diariamente. http://www.com2tv.com.ar/ Noticias sobre Informática, Comunicaciones y tecnología. http://www.starmedia.com/digital/ Información tecnológica en el portal de Starmedia. http://www.cnnespanol.com/tec/ La sección tecnológica de CNN en su sitio hispano. http://tecnologia.eud.com/ Noticias de actualidad tecnológicas en el portal de Eud. http://gasp.virtualave.net/ Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 5 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Ezine de noticias, opiniones y comentarios sobre comunicaciones, informática y tecnología. http://www.monografias.com/ Un sitio dedicado a organizar temáticamente, cientos de documentos sobre distintos temas, sobresaliendo su área de computación. http://www.maestrosdelweb.org/editorial/default.asp#compu Webmasters, Sofware, Opiniones, Tecnologías Dinámicas, Tutoriales, Computación http://www.colgado.com.ar/index4x.html Revista de cibernoticias http://www.elinformador.com/ Noticias del mundo de informática e Internet http://www.enter.com.co/ Enter: Revista de computadores e Internet de Colombia http://www.pcusers.com.ar/ PC Users Online http://www.dotcomcomputers.com/diccionario.htm Diccionario Términos de computadora ingles al español. Tiene errores ortográficos Artículos de Revista En Línea: http://www.azc.uam.mx/enlinea2/2-1.htm - La computadora como representante de la tecnología de información: ¿Qué Cambios ha causado en las organizaciones actuales? http://www.azc.uam.mx/enlinea2/1-1.htm - Los sistemas automáticos de identificación. http://www.azc.uam.mx/enlinea2/1-2.htm - Arquitectura RISC contra CISC http://www.azc.uam.mx/enlinea2/3-1.htm - La tecnología computacional y sus efectos en el ser humano. El caso de los daños por tensión repetitiva: Una visión desde la Administración. http://www.monografias.com/trabajos/gloscompu/gloscompu.shtml Glosario de términos de computación Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 6 Escuela de Estudios Profesionales Programa Ahora Universidad del Este http://www.monografias.com/trabajos5/inter/inter.shtml Artículo: Internet http://www.monografias.com/trabajos/refercomp/refercomp.shtml Referencias de computación http://www.monografias.com/trabajos4/realvirtual/realvirtual.shtml Artículo: La realidad virtual http://www.monografias.com/trabajos5/virusinf/virusinf.shtml Artículo: Seguridad Informática; Virus http://mis.about.com/compute/mis/bllnews.htm IT/MIS News; Cambia constantemente, noticias recientes del campo Buscadores http://www.elcafecito.com/ Un directorio de sitios latinoamericanos. http://www.fast.no/ Un motor de búsqueda muy potente con gran cantidad de sitios indexados. http://www.ixquick.com/ Un meta buscador muy potente. http://www.tematicos.com/top/home.cgi?referrer=maestrosw Directorio temático de recursos en español. Sección muy interesante de WebCams. http://espanol.yahoo.com/ El directorio de sitios en nuestro idioma más completo. http://www.navego.com/ Un sitio con mucha información, enlaces y secciones para el navegante. Evaluación Se le requerirá a cada estudiante la presentación de un portafolio con por lo menos un 1 proyecto que contenga todos los elementos de las destrezas aprendidas en clase. Será evaluado al finalizar cada Taller. Se le requerirá trabajos escritos o exámenes para demostrar su dominio teórico sobre implantación y desarrollo de programas utilizando Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 7 Escuela de Estudios Profesionales Programa Ahora Universidad del Este lenguaje C++. La asistencia a clase es indispensable y formará parte de la evaluación final. Entrega de 8 Ejercicios de Taller 20 puntos (c/u) = 160 puntos = 34% 100 puntos = 22% Examenes (1) y trabajos salón (50 c/u) 100 puntos = 22% Participación y Asistencia a clases 100 puntos = 22% Proyectos (1) 460 puntos = 100% Curva de Evaluación A (100-90) B (89-80) C (79-70) D (69-60) F (59-) Notas Relacionadas con las asignaciones: Este curso consiste de ocho clases de cuatro horas, que se llevarán a cabo una vez por semana. El ritmo altamente acelerado del curso requiere que los estudiantes tomen una gran cantidad de responsabilidad por los resultados de su aprendizaje. Durante los talleres se espera que el estudiante participe activamente en las discusiones y actividades de grupo. Fuera de clase, se espera que los estudiantes dediquen un mínimo de 25 horas a estudiar, hacer asignaciones, y/o proyectos. Las asignaciones de laboratorio serán discutidas en el taller siguiente. Ningún trabajo de laboratorio será aceptado más de una semana después de concluido el Taller. El estudiante deberá justificar su ausencia y reponer el material de la clase anterior. No se aceptarán más de una ausencia. Descripción de las normas del curso: • La asistencia es obligatoria. El estudiante debe excusarse con el facilitador, si tiene alguna ausencia y reponer todo trabajo. El facilitador se reserva el derecho de aceptar la excusa y el trabajo presentado y ajustar la evaluación, según entienda necesario. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 8 Escuela de Estudios Profesionales Programa Ahora Universidad del Este • Las presentaciones orales y actividades especiales no se pueden reponer, si el estudiante presenta una excusa válida y constatable (ej. médica o de tribunal), se procederá a citarlo para un examen escrito de la actividad a la cual no asistió. • Este curso es de naturaleza acelerada y requiere que el estudiante se prepare antes de cada taller, según especifica el módulo. Se requiere un promedio de 10 horas semanales para prepararse para cada taller. • El estudiante debe someter trabajos de su autoría, por lo tanto, no deberá incurrir en plagio. Debe dar crédito a cualquier referencia. • Si el facilitador realiza algún cambio, deberá discutir los mismos con el estudiante en el Taller Uno. Además, entregará los acuerdos por escrito a los estudiantes y al Programa. • El facilitador establecerá el medio y proceso de contacto. • El uso de teléfonos celulares está prohibido durante los talleres. • No está permitido traer niños o familiares a los salones de clases. • Si tienes algún impedimento que requieren acomodo razonable, por favor notifícalo a (a la) facilitador (a). Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 9 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Taller Uno Objetivos Específicos Al finalizar el Taller, el/la estudiante: 1. Definirá el concepto del lenguaje C y diferenciará entre C y C++. 2. Conocerá el trasfondo del lenguaje C y del C++. 3. Conocerá y aplicará los pasos para la solución de problemas. 4. Definirá el concepto de Algoritmos. 5. Comprenderá en qué consiste la codificación, la compilación y la corrida de un programa. 6. Comprenderá el lenguaje de máquina, de ensamblaje y de alto nivel. 7. Enumerará los tipos de Datos en C++ 8. Definirá las constantes y las variables en un programa en C++ 9. Identificará la estructura de un programa en C++. Direcciones Electrónicas Terminología, Información, descripción e historia del leguaje C++ http://www.icce.rug.nl/documents/cplusplus/ http://www.cplusplus.com/doc/tutorial/index.html Tipos y estructura de datos en C++ http://www.cplusplus.com/doc/language/tutorial/program_structure.html http://www.cppreference.com/data_types.html Tareas a realizar antes del Taller Uno 1. Lea y analice sobre: a. Hardware, Programación y Software de computadora b. ¿Cómo Resolver problemas con algoritmos? c. ¿Que son lenguajes de máquina y ensambladores? d. Concepto e historia del lenguaje C y el C++. 2. Prepare las siguientes asignaciones para entregar (20 Puntos): a. Establezca las diferencias entre C y C++ b. Defina los 5 pasos para resolver problemas con algoritmo c. Escoja un problema, el cual resolverá siguiendo los pasos del algoritmo 3. Prepárese para conocer y discutir los conceptos básicos del lenguaje C++. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 10 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Actividades 1. Presentación de los estudiantes y del(a) facilitador(a). El(La) facilitador(a) podrá seleccionar y usar una dinámica de presentación de acuerdo con la cantidad de estudiantes y su estilo particular. Se sugiere el uso de alguna dinámica para facilitar la integración del grupo y la preparación del mismo para la experiencia de aprendizaje. a. Ejemplo La entrevista: Todos los participantes deben moverse libremente por el salón y seleccionar a algún(a) compañero(a) para hacerle una entrevista sencilla de tres preguntas: b. ¿Cuál es su nombre? c. ¿Por qué seleccionó esta área de estudio? d. ¿Qué espera lograr al terminar este curso? 2. Discusión de los objetivos, de lo que se espera aprender, recursos, criterios de presentación y nota, etc. 3. Selección de un Representante Estudiantil. 4. Discusión sobre las metas y expectativas de aprendizaje de los estudiantes. 5. Discusión sobre las tareas asignadas. 6. El facilitador explicará los detalles del proyecto a presentarse en clase formalmente en el Taller Ocho (100 Puntos). a. El proyecto final consiste en un programa que asignará el facilitador para irse desarrollando a partir de la fecha con los conocimientos adquiridos en clase. 7. El facilitador introducirá los siguientes conceptos al grupo: a. Concepto del Lenguaje C y diferencia entre C y C++ b. El trasfondo del lenguaje C++ c. Repaso de los conceptos básicos de las computadoras. d. Programación y software e. La importancia del uso de los algoritmos f. Códigos de programación g. ¿Qué es un algoritmo? h. ¿En qué consiste el algoritmo del programador? i. Lenguaje de máquina, de ensamblaje y de alto nivel. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 11 Escuela de Estudios Profesionales Programa Ahora Universidad del Este j. ¿Cómo resolver problemas utilizando algoritmos? k. Conceptos de Standard Classes in C++ l. Explicará las partes que componen un programa en C++ (Anejo E). m. Explicará el uso del equipo de computadoras: i. Las reglas del Laboratorio. ii. Cada estudiante usará una computadora para acceder el sistema. iii. Cómo obtener acceso a los diferentes programas en la computadora. iv. La herramienta con la cual se trabajará (Anejo B). v. Cómo obtener acceso al programa y sobre la función de las opciones del menú de esta herramienta (Anejo C). Assessment 1. El estudiante hará su assessment llenando el Anejo A -Hoja de punto más confuso. 2. Entregará la Hoja de punto más confuso al finalizar el Taller. 3. Mediante los hallazgos, el facilitador(a) podrá repasar lo que así amerite para el próximo Taller. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 12 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Taller Dos Objetivos Específicos Al finalizar el Taller, el/la estudiante: 1. Identificará la entrada y salida de objetos 2. Señalará la lectura de data, y escritura de archivos 3. Definirá las constantes y las variables 4. Diseñara el formato de salida 5. Practicará como abrir y cerrar archivos en el programa 6. Expresará las funciones matemáticas y los operadores matemáticos en el programa Direcciones electrónicas Entrada y salida de objetos http://www.cplusplus.com/doc/language/tutorial/basic_io.html Variables y constantes http://www.cplusplus.com/doc/language/tutorial/variables.html http://www.cplusplus.com/doc/language/tutorial/constants.html http://www.icce.rug.nl/documents/cplusplus/ Tareas a realizar antes del Taller Dos 1. Analice y estudie sobre: a. Lectura de data, y escritura de archivos b. Data, tipos, clases y objetos. c. Entrada y salida de objetos 2. Prepare las siguientes asignaciones para entregar (20 Puntos): a. Definición y 3 ejemplos sobre entrada y salida de data http://www.cplusplus.com/doc/language/tutorial/basic_io.html b. Defina que son las clases c. Señale los tipos de datos en C++ d. Escriba segmento de un programa donde utilice CIN Y COUT 3. Prepárese para la discusión sobre entrada y salida de objetos de Lenguaje C++. 4. Prepárese para la discusión de los operadores y expresiones de Lenguaje C++. 5. Revisar las siguientes direcciones electrónicas: Variables y constantes Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 13 Escuela de Estudios Profesionales Programa Ahora Universidad del Este http://www.cplusplus.com/doc/language/tutorial/variables.html http://www.cplusplus.com/doc/language/tutorial/constants.html http://www.icce.rug.nl/documents/cplusplus/ Funciones de Operadores http://www.cplusplus.com/doc/language/tutorial/operators.html Entrada y salida de objetos (CIN – COUT) http://www.cplusplus.com/doc/language/tutorial/basic_io.html Actividades 1. El (la) facilitador(a) distribuirá los temas del Taller 2 entre los presentes, cada estudiante seleccionado será el experto del tema asignado para efectuar un foro de discusión donde se le harán preguntas que deben ser respondidas, la participación corresponde para todos los estudiantes. (20 puntos). Temas a discutirse: a. Tipos de data en C++ : i. Enteras ii. Coma Flotante iii. Declaración de variables iv. Caracteres v. Definición de Constates y variables b. Conceptos de “Standard Classes” en C++” i. Uso de COUT en objetos ii. Uso de CIN para entrada de datos. iii. Uso lectura de datos en cadena CIN.GETLINE iv. Lectura y escritura de archivos 2. El(la) facilitador(a) dividirá la clase en grupos de hasta cuatro estudiantes, cada grupo preparará una mini presentación (5 minutos) para la clase sobre los a. Operadores aritméticos b. Operadores relacionales c. Operadores lógicos d. Funciones matemáticas e. Funciones de cadena Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 14 Escuela de Estudios Profesionales Programa Ahora Universidad del Este 3. Discusión liderada por el (la) facilitador(a) sobre los conceptos de Bibliotecas y Directivas en C++ a. Uso de Cons y Volatile b. Uso de #Include c. El uso de la función MAIN 4. De manera individual el (la) facilitador(a) asignará a cada estudiante un ejercicio del libro, se trabajará en la máquina asignada. Laboratorio: 1. El (la) facilitador(a) orientará a los estudiantes sobre las palabras reservadas en este lenguaje (Anejo D). 2. El ejercicio asignado se entregará al (la) facilitador(a) al concluir el Taller. Assessment 1. El estudiante hará su assessment llenando el Anejo A -Hoja de punto más confuso. 2. Entregará la Hoja de punto más confuso al finalizar el Taller. 3. Mediante los hallazgos, el facilitador(a) podrá repasar lo que así amerite para el próximo Taller. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 15 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Taller Tres Objetivos Específicos Al finalizar el Taller, el/la estudiante: 1. Señalará las sentencias y bloques de control. 2. Resolverá las funciones matemáticas basicas. 3. Aplicará las sentencias condicionales para elaborar menús. 4. Identificará las sentencias condicionales IF, IF-ELSE Y SWITCH. 5. Identificará las sentencia de múltiples IF. 6. Aplicará el uso de LOOP para ejecutar secuencias. 7. Aplicará el uso de las sentencias FOR, WHILE, DO-WHILE. 8. Aplicará el uso de las sentencias BREAK, CONTINUE. Direcciones electrónicas Sentencias condicionales IF, IF-ELSE Y SWITCH, WHILE DO-WHILE, EXIT http://www.cplusplus.com/doc/language/tutorial/control.html http://www.cprogramming.com/tutorial/lesson2.html http://www.cprogramming.com/tutorial/lesson3.html Tareas a realizar antes del Taller Tres 1. Lea sobre los siguientes temas: a. Funciones y operaciones matemáticas de C++. b. Sentencias condicionales para elaborar menús. c. Sentencia IF, IF-ELSE d. Sentencias FOR, WHILE, DO-WHILE, BREAK, CONTINUE e. Repasar los conceptos en las siguientes direcciones electrónicas: Sentencias condicionales IF, IF-ELSE Y SWITCH, WHILE DO-WHILE, EXIT http://www.cplusplus.com/doc/language/tutorial/control.html http://www.cprogramming.com/tutorial/lesson2.html http://www.cprogramming.com/tutorial/lesson3.html 2. Prepare las siguientes asignaciones para entregar (20 Puntos). a. Escriba un programa utilizando ejemplos del libro que contenga las sentencia IF, IF – ELSE. 3. Prepararse para la discusión sobre sentencias de control (decisiones y condiciones). Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 16 Escuela de Estudios Profesionales Programa Ahora Universidad del Este 4. Prepararse para la discusión sobre bloques de control. Actividades 1. Discusión amplia por el (la) facilitador(a) sobre el uso de sentencias: a. Sentencias condicionales b. Sentencia condicionales para elaborar menús l c. Sentencia IF d. Sentencia IF/ELSE e. La sentencia SWITCH f. La opción DEFAULT 2. Discusión amplia por el (la) facilitador(a) sobre: a. El uso de LOOP (bucles) La sentencia WHILE La sentencia DO/WHILE El uso de FOR para LOOP b. Las opciones BREAK y CONTINUE 3. Trabajo en pequeños grupos - el (la) facilitador(a) dividirá la clase en pequeños grupos de tres a cuatro personas. Asignará a cada grupo varios ejercicios de las del libro. Un representante de cada grupo presentará sus soluciones a la clase. 4. Laboratorio: a. Cada estudiante utilizará la computadora para hacer un ejercicio de manera individual, después de recibir las instrucciones detalladas por el facilitador. (20 puntos). Assessment 1. El estudiante hará su assessment llenando el Anejo A -Hoja de punto más confuso. 2. Entregará la Hoja de punto más confuso al finalizar el Taller. 3. Mediante los hallazgos, el facilitador(a) podrá repasar lo que así amerite para el próximo Taller. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 17 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Taller Cuatro Objetivos Específicos Al finalizar el Taller, el/la estudiante: 1. Definirá el término: funciones. 2. Analizará la estructura de una función. 3. Reconocerá los prototipos y el parámetro de las funciones 4. Identificará las funciones de VOID. 5. Definirá un LOOP (bucle), las estructuras, y la declaración de un LOOP. 6. Identificará la entrada de datos con WHILE. 7. Aplicará WHILE/DO WHILE. 8. Conocerá la sentencia BREAK y CONTINUE Direcciones electrónicas Funciones VOID http://www.cplusplus.com/doc/language/tutorial/functions.html http://www.icce.rug.nl/documents/cplusplus/ Estructura y declaración de un LOOP. http://www.cprogramming.com/tutorial/lesson3.html Tareas a realizar antes del Taller Cuatro 1. Lea sobre los siguientes temas: a. Funciones de VOID b. Las estructuras, y la declaración de un LOOP. c. Estructura de una función d. Revisar las siguientes direcciones electrónicas Definición, ejemplo y código, estructura de una función: Funciones VOID http://www.cplusplus.com/doc/language/tutorial/functions.html http://www.icce.rug.nl/documents/cplusplus/ 2. Prepare las siguientes asignaciones para entregar (20 Puntos). a. Utilizando las direcciones electrónicas anteriores busque en internet ejemplo de programas donde se utilice un LOOP para hacer repeticiones. Explique la lógica del LOOP. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 18 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Revisar en Internet: Estructura y declaración de un LOOP. http://www.cprogramming.com/tutorial/lesson3.html 3. Prepararse para la discusión sobre las funciones. 4. Prepararse para la discusión sobre LOOPS (arreglos). 5. Prepárese para presentar progreso en Proyecto de Grupo. Actividades 1. Discusión amplia liderada por el (la) facilitador(a) sobre el uso de funciones en C++. a. Concepto de función b. Estructura de una función c. Funciones de retorno d. Llamada a una función e. Parámetros de funciones f. Funciones VOID g. Las funciones de prototipos h. Recursividad 2. Discusión amplia liderada por el (la) facilitador(a) sobre el uso de arreglos: a. Declaración de un LOOP b. Las estructuras de un LOOP c. Entrada de datos usando WHILE d. Uso de WHILE/DO WHILE e. Sentencia BREAK Y CONTINUE 3. Desarrollo en pequeños grupos – (20 puntos) el (la) facilitador(a) dividirá la clase en pequeños grupos de 3 – 4 personas. Asignará a cada grupo varios ejercicios del libro (25 – 30 minutos). Un representante de cada grupo presentará sus soluciones a la clase. Assessment 1. El estudiante hará su assessment llenando el Anejo A -Hoja de punto más confuso. 2. Entregará la Hoja de punto más confuso al finalizar el Taller. 3. Mediante los hallazgos, el facilitador(a) podrá repasar lo que así amerite para el próximo Taller. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 19 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Taller Cinco Objetivos Específicos Al finalizar el Taller, el/la estudiante: 1. Definirá ARRAYS (arreglos) dimensionales y uni-dimensionales. 2. Definirá la declaración de estructura. 3. Identificará la inicialización de ARRAYS. 4. Conocerá el despliegue de elementos arreglos. 5. Definirá clases y objetos. 6. Conocerá las funciones, constructores y miembros Direcciones electrónicas Definición, declaración e inicialización de ARRAYS http://www.cplusplus.com/doc/tutorial/tut3-1.html http://www.cprogramming.com/tutorial/lesson8.html Constructores y miembros, clases http://www.cplusplus.com/doc/language/tutorial/classes.html http://www.cplusplus.com/doc/language/tutorial/classes2.html http://www.cprogramming.com/tutorial/lesson12.html Tareas a realizar antes del Taller Cinco 1. Lea sobre: a. ARRAYS (Arreglos) dimensionales y uni-dimensionales. b. Definición de clases y objetos. c. Conocer las funciones, los constructores y miembros d. Declaración de clases e. Realiza búsqueda en Internet sobre: o Definición, declaración e inicialización de ARRAYS o Constructores y miembros, clases 2. Prepare la siguiente asignación para entregar (20 Puntos). a. Utilizando las direcciones electrónicas, el libro de texto y los libros de referencia identifique un programa donde se utilice arreglo, escríbalo y córralo y explique dónde está el ARRAYS y que está ejecutando reste programa b. Prepararse para la discusión sobre ARRAYS (arreglos). Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 20 Escuela de Estudios Profesionales Programa Ahora Universidad del Este c. Prepararse para la discusión sobre Clases y Objetos (classes and objects). Actividades 1. Discusión amplia liderada por el (la) Facilitador(a) sobre clases y objetos: a. Definición de estructuras y objetos b. Declaración de estructuras c. Inicialización de estructuras d. Almacenando información e. Estructuras NESTED f. Clases y objetos g. Funciones h. Miembros de funciones i. Acceso a funciones j. Constructores k. Lectura de datos en cadena GET Y GETLINE 2. Discusión amplia liderada por el (la) Facilitador(a) sobre el uso e importancia de las herencias: a. Definición de herencia b. Declaración y uso de clases derivadas c. Herencias múltiples d. Polimorfismo (polymorphism) 3. Desarrollo de un programa correspondiente al tema en pequeños grupos - el (la) facilitador(a) dividirá la clase en pequeños grupos de tres a cuatro personas. Asignará a cada grupo un ejercicio. Un representante de cada grupo presentará sus soluciones a la clase. 4. Laboratorio - el (la) facilitado(a) dará instrucciones al estudiante para utilizar la computadora para realizar un programa señalado por el mismo. Este programa muestra el uso de ARRAYS claramente y le servirá al estudiante como parámetro para aplicaciones posteriores (20 puntos). Assessment 1. El estudiante hará su assessment llenando el Anejo A -Hoja de punto más confuso. 2. Entregará la Hoja de punto más confuso al finalizar el Taller. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 21 Escuela de Estudios Profesionales Programa Ahora Universidad del Este 3. Mediante los hallazgos, el facilitador(a) podrá repasar lo que así amerite para el próximo Taller. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 22 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Taller Seis Objetivos Específicos Al finalizar el Taller, el/la estudiante: 1. Definirá el concepto de INHERITANCE. 2. Conocerá la aplicación de las INHERITANCE 3. Identificar la declaración y aplicación de clases derivadas 4. Definirá polimorfismo. 5. Comparará y contrastar entre miembro PRIVATE PROTECTED Y PUBLIC CLASS. 6. Comparará y contrastar diferencia entre STATIC vs DYNAMIC BINDING. 7. Conocerá la aplicación de Uso DE #IFNDEF. Direcciones electrónicas Concepto de INHERITANCE http://www.cplusplus.com/doc/language/tutorial/inheritance.html http://www.cprogramming.com/tutorial/lesson19.html http://www.cprogramming.com/tutorial/lesson20.html Diferencia entre STATIC vs DYNAMIC BINDIN http://www.cs.wustl.edu/~schmidt/PDF/C++-dynamic-binding4.pdf http://edocs.bea.com/workshop/docs81/doc/en/core/index.html http://www.desy.de/user/projects/C++/Learning.html Tareas a realizar antes del Taller Seis 1. Lea los siguientes temas: a. aplicación de las INHERITANCE b. PRIVATE PROTECTED Y PUBLIC CLASS. c. POLYMORPHISM d. Diferencia entre STATIC Vs DYNAMIC BINDING. e. Revisará en Internet las siguientes direcciones electrónicas: a. Concepto de INHERITANCE b. Diferencia entre STATIC vs DYNAMIC BINDIN 2. Conteste las preguntas para entregar (20 Puntos). a. Diferencia entre STATIC vs DYNAMIC BINDING. b. Explique el concepto del POLYMORPHISM Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 23 Escuela de Estudios Profesionales Programa Ahora Universidad del Este c. Explique y de ejemplo de INHERITANCE 3. Prepárese para discutir el tema de Class INHERITANCE. 4. Prepárese para trabajar programas sobre INHERITANCE. Actividades 1. Discusión amplia liderada por el (la) facilitador(a) sobre los punteros: a. Concepto y ventajas del uso de INHERITANCE b. Como usar INHERITANCE c. Declaración y usando derived classes d. SINGLE / MULTIPLE INHERITANCE e. Polimorfismo f. Diferencia entre Static y Dynamic binding g. Uso de #IFNDEF 3. Desarrollo en pequeños grupos - el (la) facilitador(a) dividirá la clase en pequeños grupos de tres a cuatro personas. Asignará a cada grupo varios ejercicios del libro de texto. Un representante de cada grupo presentará sus soluciones a la clase. 4. Laboratorio - el (la) facilitado(a) dará instrucciones al estudiante para utilizar la computadora para hacer el programa asignados. Este programa debe mostrar el uso de INHERITANCE y el estudiante tiene que determinar la data que generará el programa. Assessment 1. El estudiante hará su assessment llenando el Anejo A -Hoja de punto más confuso. 2. Entregará la Hoja de punto más confuso al finalizar el Taller. 3. Mediante los hallazgos, el facilitador(a) podrá repasar lo que así amerite para el próximo Taller. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 24 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Taller Siete Objetivos Específicos Al finalizar el Taller, el/la estudiante: 1. Definirá el concepto de archivos en C++ 2. Creará archivos y tener acceso a los archivos en C++. 3. Leerá, desplegará y modificará archivos existentes. 4. Definirá la inicialización de POINTERS (punteros) y punteros matemáticos. 5. Utilizará STATIC Y DYNAMIC POINTERS en programas. 6. Señalará los arreglos (ARRAYS) de punteros. 7. Señalará los punteros NULL y VOID. Direcciones electrónicas Definición y utilización de POINTERS http://www.cplusplus.com/doc/language/tutorial/pointers.html http://www.cprogramming.com/tutorial/lesson6.html Leer, Crear, Abrir, Cerrar archivos http://www.cplusplus.com/doc/language/tutorial/files.html http://www.cprogramming.com/tutorial/lesson10.html Tareas a realizar antes del Taller siete 1. Lea sobre los siguientes temas: a. Crear archivos y tener acceso a los archivos b. Leer, desplegar y modificar archivos existentes. c. Inicialización de POINTERS (punteros) d. Punteros NULL y VOID. e. Revise las siguientes direcciones electrónicas: a. Definición y utilización de POINTERS b. Leer, Crear, Abrir, Cerrar archivos 2. Prepare las siguientes asignaciones para entregar (20 Puntos). a. Elabore un programa que lea, escriba y despliegue por pantalla la información del archivo de datos. b. Ej: un programa que lee notas de estudiante, las guarde en un archivo y luego se visualicen por pantalla. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 25 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Datos para el programa: Nombres Estudiante, Seguro social, 4 notas de Cois 270, nota final y letra. Maria Pérez, 584-22-4444, N1 = 85, N2 = 91, N3 = 88, N4 = 96, NOTA 90, LETRA ‘A’ 3. Prepárese para discutir y practicar POINTERS. 4. Prepárese para discutir y practicar apertura y cierre de archivos (File I/0). Actividades 1. Discusión amplia liderada por el (la) facilitador(a) sobre entrada y salidas de archivos: a. Acceso de data a punteros b. Aritmética de punteros c. Punteros como argumentos de funciones d. Puntero a puntero e. Punteros a funciones f. Arreglos (ARRAYS) de punteros g. Punteros a estructuras y objetos: • Uso de punteros a estructuras • Uso de un puntero para incorporarse a una estructura • Recibiendo data desde una estructura • Definición de punteros objetos • Uso de punteros para enviar mensajes a objeto • Concepto de destructores 2. Discusión en pequeños grupos: a. Concepto de archivo b. Apertura y cierre de un archivo c. Creación de un archivo d. Operaciones en archivos e. Archivos de cabecera f. Procesamiento de un archivo 3. Discusión en pequeños grupos - el (la) facilitador(a) dividirá la clase en pequeños grupos de tres a cuatro personas. Asignará a cada grupo varios ejercicios entre los Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 26 Escuela de Estudios Profesionales Programa Ahora Universidad del Este problemas del libro de texto. Un representante de cada grupo presentará sus soluciones a la clase. 4. Laboratorio - el (la) facilitador(a) dará instrucciones al estudiante para utilizar la computadora para hacer los programas asignados por el facilitador (20 Puntos). Analizar los programas de apertura, lectura y cambios de archivos, que aparecen en el libro de texto para establecer las funciones de los mismo, que le ayudarán al desarrollo del proyecto final, también el estudiante entenderá el funcionamiento de un archivo en el ambiente C++, y le proporcionará más confianza con esta herramienta. NOTA: el (la) facilitador(a) tiene la opción de entregar la prueba al final del Taller Ocho en el Taller Siete. Assessment 1. El estudiante hará su assessment llenando el Anejo A -Hoja de punto más confuso. 2. Entregará la Hoja de punto más confuso al finalizar el Taller. 3. Mediante los hallazgos, el facilitador(a) podrá repasar lo que así amerite para el próximo Taller. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 27 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Taller Ocho Objetivos Específicos Al finalizar el Taller, el/la estudiante: 1. Definirá el concepto de ADT (Abstraction Data Revisited). 2. Creará y utilizar STACK. 3. Creará un QUEUE. 4. Codificará STACK ADT. 5. Removerá elementos de un QUEUE. Direcciones electrónicas Definición y ejemplo de STACK http://www.cppreference.com/cppstack/index.html Definición y ejemplo de QUEUE http://www.cppreference.com/cppqueue/index.html Tareas a realizar antes del Taller ocho 1. Lea sobre: a. Concepto de ADT (Abstraction Data Revisited). b. Cómo crear un QUEUE c. Codificar y uso de STACK d. Revisar las siguientes direcciones electrónicas: a. Definición y ejemplo de STACK b. Definición y ejemplo de QUEUE 2. Prepare las siguientes asignaciones para entregar (20 Puntos). a. Cree y Ejecute un código donde se aplique el uso de STACK 3. Prepárese para tomar una prueba sobre los conocimientos adquiridos hasta (Talleres Uno al Ocho - 50 Puntos) 4. Prepárese para discutir sobre STACK ADT. 5. Prepárese para discutir las definiciones de los QUEUE en pequeños grupos Actividades 1. Discusión amplia liderada por el (la) facilitador(a) sobre: a. Definición de STACK ADT. b. Creación y uso de STACK. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 28 Escuela de Estudios Profesionales Programa Ahora Universidad del Este c. Código para STACK. d. Definición de QUEUE. e. Creación, inserción de QUEUE f. Creación de EMPTY LINKED LIST. g. Borrar data de UN LINKED LIST. 2. Si no ha entregado la Prueba Parcial en el Taller Siete, se dará una hora para tomar la misma durante este Taller (100 puntos). 3. Presentación de Proyectos – El tiempo aproximado por grupo es 15 – 20 minutos. Assessment Al final del curso el estudiante hará su assessment desarrollando en esta página un breve Resumen de los conceptos que más le interesaron durante los 8 Talleres. ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 29 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Anejos Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 30 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Anejo A Hoja de Punto más confuso NOMBRE: _______________________ FECHA: ____________________ COIS 270 TALLER _____ Favor de indicar cuál fue el punto que entendió mejor sobre el material del Taller Uno: ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ Favor de indicar que no entendió bien sobre el material del Taller Uno: ___________________________________________________________________ _____________________________________________________________ ________________________________________________________________ ________________________________________________________________ Indique en que formulario puede superar las dificultades que tiene, si alguna: ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ _________________________ Nombre __________________________ Firma Favor de entregar al final de cada taller Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 31 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Anejo B CONOCIENDO MICROSOFT VISUAL C++ 6.0 ¿Qué es Visual C++? Microsoft Visual C++ 6.0 es una herramienta que facilita enormemente la programación para Windows. Esta herramienta está apoyada en el lenguaje C++, tomando sus capacidades para la programación orientada a objetos como parte fundamental de las herramientas de desarrollo que integran Visual C++. Existen tres versiones de Visual C++ 6.0: Standard, Professional y Enterprise. Este libro utiliza la edición Enterprise. El 29 de junio de 1998, Microsoft presentó la versión 6.0 del sistema de desarrollo Microsoft Visual C++, que a su vez, pertenece al sistema de desarrollo Microsoft Visual. Studio 6.0 Visual C++ es una de las herramientas más productivas de C++ para desarrollo de altas prestaciones para Windows y de Web. Introdujo la tecnología IntelliSense que permite a los desarrolladores escribir código más rápido y más fácilmente. Requisitos del Sistema Los requisitos dados por Microsoft para instalar y ejecutar Visual C++ no son muy críticos, el más recomendado es: Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 32 Escuela de Estudios Profesionales Programa Ahora Universidad del Este • Procesador 500 MHz o superior (se recomienda Pentium, Pentium II o superior). • Windows 98 o superior, NT, 2000 con Service Pack 3 o posterior. • 128 MB de RAM • El espacio en disco que ocupa es aproximadamente: Edición estándar: 225 MB (típica); 305 MB (máxima) Edición profesional: 290 MB (típica); 375 MB (máxima) Edición empresa: 290 MB (típica); 375 MB (máxima) • Unidad de CD-ROM. • Pantalla (Monitor) VGA o superior. • Mouse Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 33 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Anejo C EL SISTEMA DE MENÚS Menú File Orden Descripción New Permite abrir nuevos archivos, proyectos, espacios de trabajo u otros documentos. Open Permite abrir archivos, proyectos, espacios de trabajo u otros documentos. Por defecto abre archivos de código (ccp). Close Cierra el archivo o recurso que se esté viendo en la zona de edición. Open Workspace Abre un proyecto o un espacio de trabajo creando anteriormente. Tanto la zona de vistas como la zona de edición mostrarán los mismos contenidos que se estaban visualizando la última vez. Save Workspace Guarda un proyecto o un espacio de trabajo. Se incluyen los archivos de código y recursos que hayan sido modificados, la configuración, las vistas y ventanas abiertas, etc. Close Workspace Cierra un proyecto o un espacio de trabajo. Al cerrar se pregunta si se desea cerrar todos los archivos abiertos en la zona de edición o, por el contrario, se mantienen abiertos aunque se cierre el proyecto. Save Guarda las modificaciones del archivo que se encuentre abierto y visible en la zona de edición. Save As Nos permite guardar, con otro nombre de archivo distinto del actual, las modificaciones del archivo que se encuentre abierto y visible en la zona de edición. Save All Guarda las modificaciones de todos los archivos que se encuentren abiertos en la zona de edición. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 34 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Orden Descripción Page Setup Permite configurar los márgenes y el encabezado y pie de página con los que imprimirán los listados. Print Imprime el archivo completo que se está editando o una zona previamente seleccionada del mismo. Recent Files Mantiene una lista con los últimos archivos abiertos. Recent Workspaces Mantiene una lista con los últimos proyectos y espacios de trabajo abiertos. Exit Termina la ejecución de Visual Studio. Menú Edit Orden Descripción Undo Anula las últimas modificaciones efectuadas en la ventana de edición. Redo Pone la ventana de edición en el estado en que se encontraba antes de la ejecución de la orden Undo. Cut Copia el elemento seleccionado en la zona de edición al portapapeles, borrándolo de la zona de edición. El elemento no se borrará hasta que se ejecute la orden Paste. Copy Copia el elemento seleccionado en la zona de edición al portapapeles. Paste Inserta el contenido de portapapeles (obtenido mediante una orden Cut o Copy) en la posición actual de la zona de edición. Borra el elemento seleccionado. Delete Select All Permite seleccionar todo el contenido de la ventana activa en la zona de edición, generalmente para copiar, mover o borrar. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 35 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Orden Descripción Find Busca una cadena de caracteres en la ventana de edición activa. Se puede seleccionar búsqueda con o sin mayúsculas, la dirección de búsqueda desde la posición actual, la cadena completa, que busque en todas las ventanas de edición, etc. Find in Files Permite buscar la cadena especificada en un conjunto archivos. Podemos seleccionar los archivos mediante el uso de metacaracteres, así como especificar en qué parte del árbol de directorios queremos buscar. Replace Busca una cadena de caracteres en la ventana de edición activa, permitiéndonos sustituirla por otra. Permite diversos patrones para la búsqueda y sustitución. Go To Mueve el cursor, dentro de la ventana de edición activa, a la posición elegida. Esta posición puede ser un número de línea, una marca previamente establecida, una expresión válida para el depurador, etcétera. Bookmarks Pone o quita una marca de la línea actual, asociándole un nombre. Posteriormente podremos saltar a esa marca desde cualquier parte. Advanced Dispone de varias opciones de edición. Algunas de ellas son: paso a mayúsculas o a minúsculas, ver los espacios en blanco a las tabulaciones, poner o quitar tabulaciones a un texto seleccionado, etc. Breakpoints Pone o quita breakpoints del código fuente. List Members Muestra información sobre el texto seleccionado, de forma que se pueda saber si es una clase, una función miembro, un atributo, un tipo simple, etc. Type Info Muestra el prototipo de una función seleccionada en la zona de edición. Parameter Info Muestra los parámetros de una función seleccionada en la zona de edición. Termina la palabra que se está escribiendo, si ésta es una función. Complete Word Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 36 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Menú View Orden Descripción ClassWizard Ejecuta el asistente para clases ClassWizard. Resource Symbols Permite ver los identificadores de recursos definidos en nuestra aplicación. Resource Includes Información sobre los archivos de cabecera referentes a recursos. Full Screen Muestra la zona de edición ocupando toda la pantalla. Oculta los menús y barras de herramientas de Developer Studio así como la barra de tareas del sistema operativo. Workspace Muestra la zona de vistas si ésta ha sido cerrada por algún motivo. Output Muestra la zona de resultados de compilación, enlazado, depuración y búsqueda en archivos. Permite elegir las ventanas que se desea que aparezcan cuando se está depurando un programa. Debug Windows Properties Muestra un cuadro de diálogo con las propiedades del elemento que se encuentre seleccionado o en el que se encuentre el cursor. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 37 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Menú Insert Orden Descripción New Class Permite añadir una clase a la aplicación. Es el mismo diálogo que el presentado en el asistente ClassWizard al seleccionar Add Class. New Form Permite añadir un nuevo formulario a la aplicación. Resource Permite insertar un nuevo recurso en la aplicación. Resource Copy Realiza una copia de un recurso. New ATL Object Inserta un objeto perteneciente a la biblioteca ATL en la aplicación. Menú Project Orden Descripción Set Active Project Selecciona el proyecto que queremos activo cuando el espacio de trabajo contiene más de un proyecto. Permite añadir a nuestro proyecto archivos, recursos, carpetas y otros componentes. Add to Project Source Control Permite controlar varias versiones de códigos realizadas por varios programadores simultáneamente. Dependencies Permite establecer las dependencias de un proyecto con respecto a otros. Settings Muestra un diálogo con las opciones generales, de compilación, de enlazado, de depuración, de recursos y de construcción que se van a aplicar a nuestro proyecto. Export Makefile Insert Project Workspace Crea un fichero de descripción con las órdenes necesarias para compilar y enlazar una aplicación mediante la utilidad Nmake, en lugar de hacerlo con el entorno. Into Permite añadir un proyecto existente al espacio de trabajo actual. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 38 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Menú Build Orden Descripción Compile Compila el archivo que se encuentre abierto en la zona de edición. Este archivo debe ser de código en C/C++. Build miproy.exe Compila y enlaza los archivos que componen el proyecto para obtener el archivo ejecutable o DLL. Este proceso es incremental, de forma que sólo se compilan y/o enlazan aquellos archivos que han sido modificados desde la última vez que se ejecutó una orden Build. Rebuild All Compila y enlaza todos los archivos que componen el proyecto para obtener el archivo ejecutable o DLL, ignorando si se ha realizado este proceso con anterioridad. Batch Build Realiza el proceso de compilación y enlazado de la aplicación en diferido. Clean Elimina todos los archivos de código intermedio que se hayan generado en la aplicación. Start Debug Inicia el proceso de depuración interactiva de la aplicación. Debugger Remote Connection Permite realizar la depuración a través de red. Execute miproy.exe Ejecuta la aplicación. Si el archivo ejecutable no existe lo construye mediante la orden Build miproy.exe. Set Active Configuration Permite establecer la configuración activa para un proyecto Configurations Permite crear o eliminar configuraciones de un proyecto. Profile Muestra un cuadro de diálogo que permite manejar una herramienta para la evaluación del rendimiento del código de una aplicación. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 39 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Menú Tools Orden Descripción Source Browser Activa la herramienta que muestra información sobre los símbolos de un programa (clases, funciones, variables, etc.). Close Source Browser Desactiva la herramienta que muestra información sobre los símbolos de un programa. Customize Permite configurar los iconos de las barras de herramientas, las teclas rápidas (Hot Keys) y las macros. Options Configura los directorios del compilador, las opciones del editor, etcétera. Macro Permite crear, modificar, borrar y ejecutar macros. Record Quick Macro Crea una macro sin nombre ni información asociada. Esta macro sólo estará disponible hasta que se grabe otra macro rápida. Play Quick Macro Ejecuta la última macro rápida que fue grabada. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 40 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Menú Window Orden Descripción New Abre una nueva ventana en la zona de edición. Split Divide la ventana de edición de dos mitades. Close Cierra la ventana actual de la zona de edición. Pide conformidad si el contenido de la misma no ha sido guardado. Close All Cierra todas las ventanas de la zona de edición. Pide conformidad para aquellas ventanas cuyo contenido no ha sido guardado. Next Pasa a la siguiente ventana de la zona de edición. Previous Vuelve a la ventana anterior de la zona de edición. Cascade Coloca las ventanas de la zona de edición en cascada. Tile Horizontally Muestra todas las ventanas abiertas en la zona de edición dividiendo horizontalmente el espacio. Tile Vertically Muestra todas las ventanas abiertas en la zona de edición dividiendo verticalmente el espacio. Windows Muestra un diálogo con todas las ventanas de edición abiertas para que se pueda ir a cualquiera de ellas, guardar su contenido en disco o cerrarlas. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 41 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Menú Help Orden Descripción Contents Muestra la ayuda organizada por contenidos. Search Permite buscar en la ayuda según un criterio. Index Muestra el índice de la ayuda. Keyboard Map Muestra las combinaciones de teclas que tiene asociado el entorno. Tip of the Day Muestra el cuadro de diálogo con el ‘ Consejo del día’ Technical Support Muestra la información relativa al soporte técnico (localización, teléfono, etc.), si está disponible. Microsoft on the Web Dispone de varios enlaces a algunas páginas web de Microsoft. About Visual C++ Muestra la información sobre la versión, licencia y usuario del Visual C++ y Developer Studio. Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 42 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Anejo D PALABRAS RESERVADAS EN C++ Los siguientes identificadores están reservados para ser utilizados como palabras reservadas y no se deben emplear para otros propósitos. asm double new switch auto else operator template break enum private this case extern protected throw catch float public try char for register typedef class friend return union const goto short unsigned continue if signed virtual default inline sizeof void delete int static volatile struct while do Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 43 Escuela de Estudios Profesionales Programa Ahora Universidad del Este Anejo E ESTRUCTURA DE UN PROGRAMA EN C++ # include Directiva del preprocesador # define Macros del procesador Declaraciones globales • • Funciones Variables Función principal main main () { declaraciones locales sentencias } Definiciones de otras funciones func1 (...) { ... } func2 (...) { ... } ... Rev. 12 AGOSTO.06 Prof. Carmen G. Betancourt, MPA, CSI COIS 270 Lenguaje Programación C++ 44