08.05.2013 Views

INFORMATICA GA M3 S1 - Colegio de Estudios Científicos y ...

INFORMATICA GA M3 S1 - Colegio de Estudios Científicos y ...

INFORMATICA GA M3 S1 - Colegio de Estudios Científicos y ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Reforma Curricular <strong>de</strong>l Bachillerato Tecnológico<br />

Guía <strong>de</strong>l alumno <strong>de</strong> la<br />

Carrera <strong>de</strong> Técnico en Informática<br />

Profesores que elaboraron la guía didáctica <strong>de</strong>l<br />

módulo profesional <strong>de</strong> la carrera <strong>de</strong> técnico en:<br />

Informática<br />

NOMBRE ESTADO<br />

Ilych Antonio Ramos Guardado Nayarit<br />

Sergio Anonales Figueroa Morelos<br />

Artemio Lemus Ruiz Michoacán<br />

Víctor Gabriel Puc Ibarra Yucatán<br />

Sonia Patricia Ramos Saucedo Coahuila<br />

María Félix Roldán López Hidalgo<br />

Ricardo Montoya Cruz San Luís Potosí<br />

Coordinadores <strong>de</strong> Diseño:<br />

NOMBRE ESTADO<br />

Ismael Lee Cong Quintana Roo<br />

Manuel Gilberto Mén<strong>de</strong>z Monforte Yucatán<br />

Julio César Flores Olivares Nayarit


Directorio<br />

Lic. Josefina Vázquez Mota<br />

Secretario <strong>de</strong> Educación Pública<br />

Dr. Miguel Székely Pardo<br />

Subsecretaria <strong>de</strong> Educación Media Superior<br />

Lic. Luís F. Mejía Piña<br />

Director General <strong>de</strong> Educación Tecnológica<br />

Industrial<br />

Antrop. Ana Belinda Ames Russek<br />

Coordinadora Nacional <strong>de</strong> Organismos<br />

Descentralizados Estatales <strong>de</strong> CECyTEs<br />

Lic. Elena Karakowsky Kleyman<br />

Responsable <strong>de</strong> Desarrollo Académico <strong>de</strong> los<br />

CECyTEs


Objetivo General<br />

Una vez concluido este submódulo tendrás las<br />

capacida<strong>de</strong>s y competencias necesarias para solucionar<br />

problemas utilizando la lógica computacional realizando<br />

programas en el lenguaje estructurado e implantarlos en otros<br />

escenarios. Activida<strong>de</strong>s como i<strong>de</strong>ntificación, análisis, diseño <strong>de</strong><br />

soluciones <strong>de</strong> problemas, así como, la ejecución <strong>de</strong> programas,<br />

que requieren cierto grado <strong>de</strong> or<strong>de</strong>n y responsabilidad. En virtud<br />

<strong>de</strong> lo cual esta competencia está consi<strong>de</strong>rada en el nivel 2.


Índice<br />

Contiene los siguientes apartados:<br />

I. Mapa curricular<br />

II. Introducción al curso<br />

III. Desarrollo <strong>de</strong> competencias<br />

IV. Conclusiones <strong>de</strong> la guía <strong>de</strong> aprendizaje<br />

V. Fuentes <strong>de</strong> información<br />

VI. Glosario<br />

VII. Anexos


COMPETENCIA 1<br />

Resolver a través <strong>de</strong> la<br />

metodología problemas<br />

computacionales.<br />

HABILIDADES Y<br />

DESTREZAS<br />

• I<strong>de</strong>ntificar el problema.<br />

• Seleccionar el proceso <strong>de</strong><br />

solución <strong>de</strong>l problema.<br />

• Elaborar el algoritmo <strong>de</strong> la<br />

solución <strong>de</strong>l problema.<br />

• Elaborar el diagrama <strong>de</strong><br />

flujo <strong>de</strong> la solución <strong>de</strong>l<br />

problema.<br />

• Crear el pseudocódigo <strong>de</strong><br />

la solución <strong>de</strong>l problema.<br />

CONOCIMIENTOS<br />

• Lógica computacional.<br />

• Algoritmos.<br />

• Tipos <strong>de</strong> datos.<br />

• Operadores.<br />

• Variables y<br />

constantes.<br />

• Diagramas <strong>de</strong> flujo.<br />

• Pseudocódigo.<br />

ACTITUDES<br />

• Or<strong>de</strong>n<br />

Mapa Curricular<br />

CARRERA<br />

Técnico en informática<br />

MÓDULO III<br />

Sistemas básicos <strong>de</strong> información<br />

SUBMÓDULO I<br />

Aplicar los principios <strong>de</strong><br />

programación para la elaboración<br />

<strong>de</strong> programas estructurados<br />

COMPETENCIA 2<br />

Codificar algoritmos en un<br />

lenguaje <strong>de</strong> programación<br />

estructurado.<br />

HABILIDADES Y<br />

DESTREZAS<br />

• Codificar el algoritmo <strong>de</strong> la<br />

solución <strong>de</strong> un problema en<br />

un lenguaje estructurado.<br />

• Compilar el programa.<br />

• Depurar el programa.<br />

• Ejecutar el programa.<br />

CONOCIMIENTOS<br />

• Tipos <strong>de</strong> archivos.<br />

• Programación<br />

estructurada.<br />

• Sintaxis y semántica<br />

<strong>de</strong>l lenguaje C.<br />

• Palabras reservadas.<br />

• Variables y<br />

constantes.<br />

• Estructuras <strong>de</strong> control<br />

<strong>de</strong>l lenguaje C.<br />

• Funciones.<br />

• Arreglos<br />

ACTITUDES<br />

• Or<strong>de</strong>n<br />

Página 6 <strong>de</strong> 66<br />

COMPETENCIA 3<br />

Implantar los programas<br />

elaborados en un lenguaje<br />

<strong>de</strong> programación<br />

estructurado.<br />

HABILIDADES Y<br />

DESTREZAS<br />

• Localizar los programas<br />

generados.<br />

• Copiar los programa a los<br />

dispositivos <strong>de</strong><br />

almacenamiento.<br />

• Transportar los<br />

programas.<br />

• Instalar los programas a<br />

otros equipos <strong>de</strong> cómputo.<br />

CONOCIMIENTOS<br />

• Tipos <strong>de</strong> archivos.<br />

• Capacida<strong>de</strong>s <strong>de</strong><br />

dispositivos <strong>de</strong><br />

almacenamiento.<br />

• Compresión y<br />

<strong>de</strong>scompresión.<br />

• Copiado <strong>de</strong><br />

archivos.<br />

ACTITUDES<br />

• Responsabilidad


Nadie sabe <strong>de</strong><br />

lo que es capaz<br />

hasta que lo<br />

intenta.<br />

(Publio Sirio)<br />

Un mensaje para ti<br />

herramienta para la solución <strong>de</strong> problemas.<br />

En este Submódulo compren<strong>de</strong>remos el concepto <strong>de</strong><br />

problema en general. También consi<strong>de</strong>raremos las<br />

posibles soluciones a estos problemas y al final<br />

enten<strong>de</strong>remos como nos pue<strong>de</strong> auxiliar la computadora<br />

para resolverlos. La informática es un amplio campo que<br />

incluye los fundamentos teóricos, el diseño, la<br />

programación y el uso <strong>de</strong> las computadoras, como<br />

La informática es aplicada en diversos sectores <strong>de</strong> la actividad diaria como son:<br />

medicina, ingeniería, industria, en la investigación científica, el arte y a nivel<br />

empresarial.<br />

Recuerda que anteriormente la asignatura <strong>de</strong> Tecnologías <strong>de</strong> la Información y la<br />

Comunicación –TICS – <strong>de</strong>l componente <strong>de</strong> formación básica, comprendió parte <strong>de</strong><br />

estos conocimientos, pero es aquí don<strong>de</strong> <strong>de</strong>bes <strong>de</strong>mostrar tu capacidad y<br />

competencia para aplicar la metodología <strong>de</strong> la programación y elaborar programas<br />

estructurados.<br />

Las competencias adquiridas en este submódulo permitirán que ofrezcas tus<br />

servicios <strong>de</strong> creación <strong>de</strong> programas diseñados para resolver problemas<br />

específicos <strong>de</strong> una organización o lo que se conoce como aplicaciones a la<br />

medida, permitiendo implementaciones <strong>de</strong> software estructurado, en las áreas<br />

administrativas, contables, comerciales o centros <strong>de</strong> cómputo <strong>de</strong> las empresas<br />

públicas y privadas, instituciones educativas, industrias, autoempleo y Micros,<br />

pequeñas y medianas empresas – cibercafés, bancos, supermercados, cines,<br />

restaurantes, hoteles, etc. –<br />

Nuestro submódulo se complementa con dos submódulos más que son: “Utilizar<br />

un manejador <strong>de</strong> base <strong>de</strong> datos para la administración <strong>de</strong> la información” y<br />

Página 7 <strong>de</strong> 66


“Elaborar sistemas <strong>de</strong> información mediante un lenguaje <strong>de</strong> programación<br />

visual”, utilizando las aplicaciones actuales. Lo que en su conjunto te proporciona<br />

las herramientas para la creación <strong>de</strong> todo tipo <strong>de</strong> sistemas básicos <strong>de</strong> información.<br />

Todas las competencias que integran el submódulo serán <strong>de</strong>sarrolladas en un<br />

contexto práctico, ello en función <strong>de</strong> que los sitios <strong>de</strong> inserción laboral para esta<br />

área exigen que <strong>de</strong>muestres las capacida<strong>de</strong>s y habilida<strong>de</strong>s <strong>de</strong> competencia bajo<br />

estas características; sin olvidar la aplicación <strong>de</strong> conocimientos <strong>de</strong> formación<br />

básica como el idioma inglés, así como herramientas<br />

tecnológicas como el Internet. En función <strong>de</strong> la<br />

disponibilidad tecnológica <strong>de</strong>l plantel, así como <strong>de</strong> la<br />

iniciativa y perseverancia en tu propia formación, se<br />

plantea que todas las activida<strong>de</strong>s incluidas en esta guía<br />

<strong>de</strong> aprendizaje las <strong>de</strong>sarrolles en áreas <strong>de</strong> cómputo <strong>de</strong>l<br />

plantel, o en su caso, espacios públicos o privados que te permitan acce<strong>de</strong>r a esta<br />

tecnología.<br />

Como parte <strong>de</strong> la evaluación necesaria para <strong>de</strong>terminar si ya haz logrado ser<br />

competente en esta área <strong>de</strong> formación, te planteamos observar las siguientes<br />

evi<strong>de</strong>ncias:<br />

Desempeño<br />

1. Los problemas computacionales resueltos a través <strong>de</strong> la metodología.<br />

2. Los algoritmos en un lenguaje <strong>de</strong> programación estructurado codificados.<br />

3. Los programas elaborados en un lenguaje <strong>de</strong> programación estructurado.<br />

Producto<br />

1. Los problemas computacionales resueltos a través <strong>de</strong> la metodología.<br />

2. Los algoritmos en un lenguaje <strong>de</strong> programación estructurado codificados.<br />

3. Los programas elaborados en un lenguaje <strong>de</strong> programación estructurado<br />

implantados.<br />

Página 8 <strong>de</strong> 66


Simbología<br />

Página 9 <strong>de</strong> 66<br />

PRÁCTICA<br />

EJEMPLO<br />

ERRORES TÍPICOS<br />

EJERCICIO<br />

CONCLUSIONES<br />

INTRODUCCION<br />

CONTINGENCIA<br />

OBJETIVO


Módulo III<br />

Submódulo I<br />

Competencias<br />

a Desarrollar<br />

Competencias, habilida<strong>de</strong>s y <strong>de</strong>strezas<br />

Sistemas básicos <strong>de</strong> información.<br />

Aplicar los principios <strong>de</strong> programación para la elaboración <strong>de</strong><br />

programas estructurados.<br />

1. Resolver a través <strong>de</strong> la metodología problemas<br />

computacionales.<br />

2. Codificar algoritmos en un lenguaje <strong>de</strong> programación<br />

estructurado.<br />

3. Implantar los programas elaborados en un lenguaje <strong>de</strong><br />

programación estructurado<br />

COMPETENCIA I. Resolver a través <strong>de</strong> la metodología problemas<br />

computacionales.<br />

Introducción<br />

En esta primera competencia, nos enfocaremos a resolver problemas a<br />

través <strong>de</strong> la metodología <strong>de</strong> la programación.<br />

Una <strong>de</strong> las herramientas indispensables para enten<strong>de</strong>r y elaborar<br />

programas estructurados son: Algoritmos, diagramas <strong>de</strong> flujo y por<br />

supuesto los pseudocódigos. Con estas herramientas lograrás la iniciación a la<br />

programación <strong>de</strong> forma sencilla sin importar el lenguaje <strong>de</strong> programación<br />

estructurada que utilices. En este sentido, un primer acercamiento es lograr que tú<br />

adquieras capacida<strong>de</strong>s, <strong>de</strong>strezas y habilida<strong>de</strong>s para: I<strong>de</strong>ntificar el problema.<br />

Seleccionar el proceso <strong>de</strong> solución <strong>de</strong>l problema. Elaborar el algoritmo <strong>de</strong> la<br />

Solución <strong>de</strong>l problema. Elaborar el diagrama <strong>de</strong> flujo <strong>de</strong> la solución <strong>de</strong>l problema y<br />

Crear el pseudocódigo <strong>de</strong> la solución <strong>de</strong>l problema<br />

Dentro <strong>de</strong>l ámbito laboral esta competencia es muy importante ya que con ella le<br />

ayudarás a las empresas a compren<strong>de</strong>r la naturaleza <strong>de</strong> sus problemas<br />

empleando las técnicas a<strong>de</strong>cuadas para su posible solución.<br />

En esta competencia planteamos nuestro interés para que <strong>de</strong> manera organizada<br />

puedas generar tu propio aprendizaje y adquieras los conocimientos <strong>de</strong> Lógica<br />

computacional, Algoritmos, Tipos <strong>de</strong> datos, Operadores, Variables y Constantes,<br />

Diagramas <strong>de</strong> flujo y Pseudocódigo. Cabe mencionar que la manera en que<br />

abordaremos estos contenidos será realizando ejemplos, ejercicios y prácticas <strong>de</strong><br />

un grado menor hasta un grado mayor pero sobre todo será fácil <strong>de</strong> compren<strong>de</strong>r<br />

por ti.<br />

HABILIDAD 1. I<strong>de</strong>ntificar el problema.<br />

2. Seleccionar el proceso <strong>de</strong> solución <strong>de</strong>l problema.<br />

Página 10 <strong>de</strong> 66


RESULTADO DE<br />

APRENDIZAJE<br />

3. Elaborar el algoritmo <strong>de</strong> la solución <strong>de</strong>l problema.<br />

4. Elaborar el diagrama <strong>de</strong> flujo <strong>de</strong> la solución <strong>de</strong>l<br />

problema.<br />

5. Crear el pseudocódigo <strong>de</strong> la solución <strong>de</strong>l problema<br />

Resolver problemas mediante el uso <strong>de</strong> los algoritmos,<br />

diagramas <strong>de</strong> flujo y pseudocódigo.<br />

Desarrollo<br />

Normalmente la gran mayoría <strong>de</strong> los humanos, resolvemos problemas <strong>de</strong><br />

cualquier índole: matemáticos, administrativos, científicos, personales etc. Pero no<br />

pensamos cual es el proceso sistemático (paso a paso), para llegar al resultado.<br />

Las técnicas <strong>de</strong> la metodología <strong>de</strong><br />

programación te ayudan a <strong>de</strong>sarrollar<br />

procesos para resolver problemas que<br />

posteriormente sean traducidos a un<br />

lenguaje <strong>de</strong> programación.<br />

Ahora bien, para resolver un problema es<br />

necesario que i<strong>de</strong>ntifiquemos la naturaleza <strong>de</strong>l mismo. Esto es analizar el tipo <strong>de</strong><br />

problema que se quiere resolver e i<strong>de</strong>ntificar los datos que se necesitan para<br />

<strong>de</strong>sarrollar el proceso y posteriormente obtener un resultado tangible.<br />

El proceso <strong>de</strong> un problema se presenta con una herramienta llamada algoritmos,<br />

se suelen representar en forma narrativa paso a paso, pero cuando tienen su<br />

aplicación más directa es cuando se convierte en diagramas <strong>de</strong> flujo o gráficos <strong>de</strong><br />

programación.<br />

El primer objetivo <strong>de</strong> toda maquina es el manejo <strong>de</strong> información o datos. La<br />

representación <strong>de</strong> los datos utilizada <strong>de</strong>termina la forma <strong>de</strong>l algoritmo. La<br />

i<strong>de</strong>ntificación <strong>de</strong> los datos que manipula el algoritmo <strong>de</strong>be realizarse sin ninguna<br />

ambigüedad para que la maquina interprete en cada momento que tipo <strong>de</strong> datos<br />

manipula y como <strong>de</strong>be operarlos.<br />

Otra herramienta muy útil en el análisis <strong>de</strong> programación es el Pseudocódigo. Esta<br />

herramienta no es realmente un código sino una imitación y una versión abreviada<br />

<strong>de</strong> instrucciones reales para las computadoras.<br />

Cuando se tiene el algoritmo y el diagrama <strong>de</strong> flujo así como el Pseudocódigo se<br />

obtiene un resultado <strong>de</strong> escritorio. Es necesario traducirlo en un programa<br />

obteniendo un resultado visible y comprobado.<br />

Página 11 <strong>de</strong> 66<br />

Recuerda que el lenguaje<br />

humano tiene sus propias reglas<br />

<strong>de</strong> gramática, ortografía etc. Así<br />

como también el lenguaje <strong>de</strong><br />

programación tiene sus propias<br />

reglas para que pueda ser<br />

interpretado por la computadora<br />

y esta reaccionar con acciones.


Conceptos importantes que <strong>de</strong>bes compren<strong>de</strong>r:<br />

Proceso: son acciones elementales que forman un<br />

acontecimiento.<br />

Algoritmo: Es una serie <strong>de</strong> operaciones <strong>de</strong>talladas y no<br />

ambiguas, a ejecutar paso a paso, que conducen a la<br />

resolución <strong>de</strong> un problema. Describe seis características:<br />

or<strong>de</strong>n, finito, precisión, entrada, salida y eficacia.<br />

Diagrama <strong>de</strong> flujo: son la representación grafica <strong>de</strong> la<br />

solución <strong>de</strong>l problema que se <strong>de</strong>sea mecanizar<br />

Pseudocódigo: es una técnica para expresar en el<br />

lenguaje natural la lógica <strong>de</strong> un programa, es <strong>de</strong>cir su flujo<br />

<strong>de</strong> control. Utiliza palabras como: hacer, si-entonces-sino,<br />

fin si, repetir hasta, repetir mientras, hacer hasta etc.<br />

Programa: secuencia <strong>de</strong> instrucciones que una<br />

computadora pue<strong>de</strong> interpretar y ejecutar<br />

La práctica es la única forma <strong>de</strong> <strong>de</strong>sarrollar algoritmos eficientes, por eso te<br />

recomendamos que practiques mucho y <strong>de</strong>sarrolles tus propias prácticas.<br />

Práctica, diviértete y apren<strong>de</strong>.<br />

Página 12 <strong>de</strong> 66


EJEMPLO 1<br />

Observa y analiza las siguientes figuras.<br />

Figura 1. A Figura 1. B<br />

Figura 1. C<br />

Recuerda que estamos i<strong>de</strong>ntificando la problemática <strong>de</strong><br />

cada figura.<br />

Página 13 <strong>de</strong> 66


Receta <strong>de</strong> Cocina (freír huevos)<br />

EJEMPLO 2<br />

Lee y analiza el siguiente problema.<br />

Para i<strong>de</strong>ntificar el problema <strong>de</strong>bemos respon<strong>de</strong>r las siguientes preguntas:<br />

1. ¿Que entradas se requieren? (tipo y cantidad)<br />

2. ¿Cuál es la salida <strong>de</strong>seada? Tipo y cantidad)<br />

3. ¿Que método produce la salida <strong>de</strong>seada?<br />

Respuestas<br />

1. Esta constituida por los ingredientes y los utensilios empleados.<br />

2. La terminación <strong>de</strong>l plato ( huevos fritos )<br />

3. Realizar la receta <strong>de</strong> cocina<br />

Entrada<br />

<strong>de</strong> datos Proceso o<br />

Algoritmo<br />

EJEMPLO 3<br />

Lee y analiza los siguientes problemas.<br />

1.- Algoritmo, diagrama <strong>de</strong> flujo y pseudocódigo que lee dos valores numéricos y<br />

calcula primero la suma, <strong>de</strong>spués la resta, a continuación el producto y<br />

seguidamente la división <strong>de</strong> ambos valores, escribiendo finalmente el resultado<br />

obtenido en cada una <strong>de</strong> estas operaciones.<br />

DEFINICION DE PROBLEMA Y POSIBLES SOLUCIONES.<br />

Problema: operaciones aritméticas.<br />

Entrada: A, B<br />

Método: aplicar formulas <strong>de</strong> suma(S=A+B), resta(R=A-B), producto(P=A*B) y<br />

división(D=A/B).<br />

Salida: S, R, P, D<br />

ALGORITMO<br />

1.- INICIO<br />

Página 14 <strong>de</strong> 66<br />

Salida<br />

<strong>de</strong><br />

Datos


2.- LEER A, B<br />

3.- SUMA A MÁS B Y ASIGNALO A S<br />

4.- RESTA A MENOS B Y ASIGNALO A R<br />

5.- MULTIPLICA A POR B Y ASIGNALO A P<br />

6.- DIVIDE A ENTRE B Y ASIGNALO A D<br />

7.- ESCRIBIR S, R, P, D<br />

8.- FIN<br />

PSEUDOCÓDIGO DIAGRAMA DE FLUJO<br />

PROBLEMA: Operaciones _ aritméticas<br />

00: COMENZAR:<br />

10: PEDIR A<br />

20: LEER A<br />

30: PEDIR B<br />

40: LEER B<br />

50: S= A+B<br />

60: R= A-B<br />

70: P= A*B<br />

80: D= A/B<br />

90: Escribir S, R, P, D<br />

100: FIN<br />

SIMBOLOGIA EMPLEADA<br />

Conectores entre dos puntos<br />

Líneas <strong>de</strong> flujo<br />

2.- Algoritmo, diagrama <strong>de</strong> flujo<br />

y pseudocódigo que lee un valor numérico y nos dice si es par o impar.<br />

Página 15 <strong>de</strong> 66<br />

INICIO<br />

Leer A, B<br />

S= A+ B<br />

R= A - B<br />

P = A * B<br />

D = A / B<br />

Escribir<br />

S, R, P, D<br />

FIN


DEFINICION DE PROBLEMA Y POSIBLES SOLUCIONES<br />

Problema: numero par o impar.<br />

Entrada: A<br />

Método: A modulo 2=0<br />

Salida: par o impar<br />

ALGORITMO<br />

1.- INICIO<br />

2.- LEER A<br />

F<br />

3.- SI A MODULO 2 ES IGUA A 0 ENTONCES<br />

4.- ESCRIBIR PAR<br />

5.- EN OTRO CASO<br />

6.- ESCRIBIR IMPAR<br />

7.- FIN<br />

“A ES IMPAR”<br />

PSEUDOCÓDIGO<br />

PROBLEMA: Par_impar<br />

00: COMENZAR:<br />

10: PEDIR A<br />

20: LEER A<br />

30: SI A MODULO 2 = 0 ENTONCES<br />

40: ESCRIBIR “A ES PAR”<br />

50: SINO<br />

60: ESCRIBIR “A ES IMPAR”<br />

70: FIN<br />

ACLARACIÓN<br />

El modulo se utiliza en diferentes lenguajes <strong>de</strong><br />

programación:<br />

% C<br />

Mod Pascal<br />

Utilizamos en el ejemplo la sintaxis <strong>de</strong> lenguaje<br />

<strong>de</strong> programación C.<br />

Si pue<strong>de</strong>s observar las sangrías que tiene cada<br />

instrucción <strong>de</strong> los renglones esto es estructurar<br />

programas.<br />

Página 16 <strong>de</strong> 66<br />

FIN<br />

INICIO<br />

Leer A<br />

A%2 = 0<br />

V<br />

“A ES PAR”


3.- Algoritmo, diagrama <strong>de</strong> flujo y pseudocódigo que permita evaluar el siguiente<br />

menú <strong>de</strong> opciones.<br />

MENU<br />

1. OPERACIÓN SUMA<br />

2. OPERACIÓN RESTA<br />

3. MULTIPLICAR<br />

DEFINICION DE PROBLEMA Y POSIBLES SOLUCIONES<br />

Problema: Evaluar un menú <strong>de</strong> opciones<br />

Entrada: Leer A , B<br />

Método: sumar A y B. Restar A y B. multiplicar A y B<br />

Salida: S ó R ó M<br />

ALGORITMO<br />

1 INICIO<br />

2 ESCRIBIR<br />

“ MENU “<br />

“ 1 OPERACIÓN SUMA “<br />

“ 2 OPERACIÓN RESTA “<br />

“ 3 OPERACIÓN MULTIPLICAR “<br />

3 ESCRIBIR “ Elegir una opción <strong>de</strong>l menú “<br />

4 LEER OPCION<br />

5 EVALUAR SI OPCION ES IGUAL A 1 ENTONCES<br />

LEER A Y B<br />

SUMA A MÁS B Y ASIGNALO A S<br />

ESCRIBIR S<br />

6 EVALUAR SI OPCION ES IGUAL A 2 ENTONCES<br />

LEER A Y B<br />

RESTAR A Y B Y ASIGNALO A R<br />

ESCRIBIR R<br />

7 EVALUAR SI OPCION ES IGUAL A 3 ENTONCES<br />

LEER A Y B<br />

MULTIPLICAR A Y B Y ASIGNALO A M<br />

ESCRIBIR M<br />

8 EVALUAR SI OPCION ES DIFERENTE A LAS ANTERIORES<br />

ENTONCES<br />

ESCRIBIR “ NO EXISTE OPCION “<br />

9 FIN<br />

Página 17 <strong>de</strong> 66


PSEUDOCÓDIGO<br />

PROBLEMA: Evaluar un menú <strong>de</strong> opciones<br />

00: COMENZAR:<br />

10: ESCRIBIR<br />

20: “ MENU “<br />

30: “ 1 OPERACIÓN SUMA “<br />

40: “ 2 OPERACIÓN RESTA “<br />

50: “ 3 OPERACIÓN MULTIPLICAR “<br />

60: “ Elegir una opción <strong>de</strong>l menú “<br />

70: LEER OPCION<br />

80: CASO 1<br />

90: PEDIR A<br />

100: LEER A<br />

110: PEDIR B<br />

120: LEER B<br />

130: S = A + B<br />

140: ESCRIBIR S<br />

150: CASO 2<br />

160: PEDIR A<br />

170: LEER A<br />

180: PEDIR B<br />

190: LEER B<br />

200: R = A – B<br />

210: ESCRIBIR R<br />

220: CASO 3<br />

230: PEDIR A<br />

240: LEER A<br />

250: PEDIR B<br />

260: LEER B<br />

270: M = A * B<br />

280: ESCRIBIR M<br />

290: DEFAULT<br />

300: ESCRIBIR “NO EXISTE OPCION “<br />

310: FIN<br />

Página 18 <strong>de</strong> 66


DIAGRAMA DE FLUJO<br />

LEER A, B<br />

S = A + B<br />

ESCRIBIR<br />

S<br />

INICIO<br />

ESCRIBIR<br />

MENU<br />

1 OPERACION SUMA<br />

2 OPERACIÓN RESTA<br />

3 OPERACIÓN MULTIPLICAR<br />

ELEGIR UNA OPCION<br />

FIN<br />

LEER<br />

EVALUAR<br />

OPCION<br />

CASO “1” CASO “2” CASO “3” DEFAULT<br />

LEER A, B<br />

R = A - B<br />

ESCRIBIR<br />

R<br />

Página 19 <strong>de</strong> 66<br />

LEER A, B<br />

P = A * B<br />

ESCRIBIR<br />

M<br />

ESCRIBIR<br />

“NO EXISTE<br />

OPCION”


4.- Algoritmo, diagrama <strong>de</strong> flujo y pseudocódigo que lee 10 valores numéricos y<br />

suma los pares únicamente.<br />

DEFINICION DE PROBLEMA Y POSIBLES SOLUCIONES<br />

Problema: SUMA DE PARES.<br />

Entrada: NUM, SUMA=0, CONT=1<br />

Método: MIENTRAS CONT


DIAGRAMA DE FLUJO<br />

ESCRIBIR<br />

SUMA<br />

FIN<br />

F<br />

INICIO<br />

CONT=1, SUMA=0<br />

CONT


EJERCICIO 1<br />

Recursos materiales <strong>de</strong> apoyo.- Lápiz, borrador, libreta.<br />

Instrucciones para el alumno.- Lee, analiza y realiza lo<br />

que se te pi<strong>de</strong>.<br />

Instrucciones para el docente.- Se recomienda antes <strong>de</strong><br />

iniciar el ejercicio hacer una <strong>de</strong>mostración para obtener<br />

mejores resultados.<br />

1. Diseñar un Algoritmo que calcule el área <strong>de</strong> un triangulo y contesta lo que se<br />

pi<strong>de</strong> a continuación.<br />

Definición <strong>de</strong>l problema y posible solución.<br />

PROBLEMA: __________________________________<br />

ENTRADA: ___________________________________<br />

MÉTODO: ____________________________________<br />

SALIDA: ______________________________________<br />

Marca con una palomita lo que necesitas para resolver este problema.<br />

Base, Radio y Número real. Área, Base y Número real.<br />

Base, Altura y Número real.<br />

Marca con una palomita el método que se necesita para resolver el problema.<br />

Área = ( Base * Altura ) / 2 Área = ( Base * Radio ) / 2<br />

Área = ( Base * Altura ) / Radio<br />

Página 22 <strong>de</strong> 66


Realiza el algoritmo <strong>de</strong>l problema.<br />

Realiza el pseudocódigo <strong>de</strong>l problema.<br />

Realiza el diagrama <strong>de</strong> flujo <strong>de</strong>l problema.<br />

Página 23 <strong>de</strong> 66


ESCRIBIR<br />

NO EXSTE<br />

OPCION<br />

Fig. 1<br />

F<br />

V<br />

EJERCICIO 2<br />

Recursos materiales <strong>de</strong> apoyo.- Lápiz, borrador, libreta.<br />

Instrucciones para el alumno.- Lee, analiza y realiza lo<br />

que se te pi<strong>de</strong>.<br />

Instrucciones para el docente.- Se recomienda antes <strong>de</strong><br />

iniciar el ejercicio hacer una <strong>de</strong>mostración para obtener<br />

mejores resultados.<br />

SI OPCION<br />

= 3<br />

M = A * B<br />

ESCRIBIR M<br />

F<br />

LEER A, B<br />

SI OPCION<br />

= 2<br />

V<br />

LEER A, B<br />

R = A - B<br />

ESCRIBIR R<br />

FIN<br />

Página 24 <strong>de</strong> 66<br />

F<br />

INICIO<br />

ESCRIBIR<br />

MENU<br />

1 OPERACION SUMA<br />

2 OPERACIÓN RESTA<br />

3 OPERACIÓN MULTIPLICAR<br />

ELEGIR UNA OPCION<br />

LEER OPCION<br />

V<br />

SI OPCION<br />

= 1<br />

LEER A, B<br />

S = A + B<br />

ESCRIBIR S


Definición <strong>de</strong>l problema y posible solución <strong>de</strong>l diagrama <strong>de</strong> flujo <strong>de</strong> la fig. 1<br />

PROBLEMA: __________________________________<br />

ENTRADA: ___________________________________<br />

MÉTODO: ____________________________________<br />

SALIDA: ______________________________________<br />

Realiza el algoritmo <strong>de</strong>l diagrama <strong>de</strong> flujo <strong>de</strong> la fig. 1<br />

Realiza el pseudocódigo <strong>de</strong>l diagrama <strong>de</strong> flujo <strong>de</strong> la fig. 1<br />

Página 25 <strong>de</strong> 66


Analiza el siguiente pseudocódigo y realiza lo que se te pi<strong>de</strong>.<br />

00: COMENZAR<br />

10: LEER NUMERO<br />

20: FACTORIAL = 1<br />

30: CONTADOR = 1<br />

40: MIENTRAS CONTADOR < = NUMERO HACER<br />

50: INICIO<br />

60: FACTORIAL = FACTORIAL * CONTADOR<br />

70: CONTADOR = CONTADOR + 1<br />

80: FIN<br />

90: ESCRIBIR FACTORIAL<br />

100: FIN<br />

Definición y posible solución<br />

EJERCICIO 3<br />

Recursos materiales <strong>de</strong> apoyo.- Lápiz, borrador, libreta.<br />

Instrucciones para el alumno.- Lee, analiza y realiza lo<br />

que se te pi<strong>de</strong>.<br />

Instrucciones para el docente.- Se recomienda antes <strong>de</strong><br />

iniciar el ejercicio hacer una <strong>de</strong>mostración para obtener<br />

mejores resultados.<br />

¿CUAL ES EL PROBLEMA? _______________________________________<br />

¿CUÁLES SON LAS ENTRADA? ___________________________________<br />

¿CUÁL ES EL MÉTODO? _________________________________________<br />

¿CUÁL ES LA SALIDA? ___________________________________________<br />

Página 26 <strong>de</strong> 66


Realiza el algoritmo.<br />

Realiza el diagrama <strong>de</strong> flujo.<br />

Página 27 <strong>de</strong> 66


Analiza el siguiente algoritmo y realiza lo que se pi<strong>de</strong><br />

1 INICIO<br />

2 ESCRIBIR<br />

“ MENU “<br />

“ 1 VISUALIZA TU NOMBRE “<br />

“ 2 VISUALIZA TU DIRECCION “<br />

“ 3 VISUALIZA TU TELEFONO “<br />

ESCRIBIR “Elegir una opción <strong>de</strong>l menú “<br />

3 LEER OPCION<br />

4 EVALUAR SI OPCION ES IGUAL A 1 ENTONCES<br />

PEDIR NOM<br />

LEER NOM<br />

ESCRIBIR NOM<br />

EVALUAR SI OPCION ES IGUAL A 2 ENTONCES<br />

PEDIR DIREC<br />

LEER DIREC<br />

ESCRIBIR DIREC<br />

5 EVALUAR SI OPCION ES IGUAL A 3 ENTONCES<br />

PEDIR TEL<br />

LEER TEL<br />

ESCRIBIR TEL<br />

6 EVALUAR SI OPCION ES DIFERENTE A LAS ANTERIORES ENTONCES<br />

ESCRIBIR “ NO EXISTE OPCION “<br />

7 FIN<br />

Definición y posible solución<br />

EJERCICIO 4<br />

Recursos materiales <strong>de</strong> apoyo.- Lápiz, borrador, libreta.<br />

Instrucciones para el alumno.- Lee, analiza y realiza lo<br />

que se te pi<strong>de</strong>.<br />

Instrucciones para el docente.- Se recomienda antes <strong>de</strong><br />

iniciar el ejercicio hacer una <strong>de</strong>mostración para obtener<br />

mejores resultados.<br />

¿CUAL ES EL PROBLEMA? _______________________________________<br />

¿CUÁLES SON LAS ENTRADA? ___________________________________<br />

¿CUÁL ES EL MÉTODO? _________________________________________<br />

¿CUÁL ESLA SALIDA? ___________________________________________<br />

Página 28 <strong>de</strong> 66


Realiza el pseudocódigo.<br />

Realiza el diagrama <strong>de</strong> flujo.<br />

Página 29 <strong>de</strong> 66


PRACTICA 1<br />

Competencia.- 1.- Resolver a través <strong>de</strong> la metodología<br />

problemas computacionales.<br />

Habilida<strong>de</strong>s.- 1. I<strong>de</strong>ntificar el problema, 2. Seleccionar el<br />

proceso <strong>de</strong> solución <strong>de</strong>l problema, 3. Elaborar el algoritmo <strong>de</strong><br />

la solución <strong>de</strong>l problema, 4. Elaborar el diagrama <strong>de</strong> flujo <strong>de</strong><br />

la solución <strong>de</strong>l problema, 5. Crear el pseudocódigo <strong>de</strong> la<br />

solución <strong>de</strong>l problema.<br />

Recursos materiales <strong>de</strong> apoyo.- Lápiz, cua<strong>de</strong>rno,<br />

borrador.<br />

Instrucciones para docente.- Verificar que el alumno<br />

<strong>de</strong>sarrolle cada uno <strong>de</strong> los pasos indicados. Se sugiere el<br />

uso <strong>de</strong> la guía <strong>de</strong> observación TINF-04/<strong>M3</strong><strong>S1</strong>/ED1-3 y <strong>de</strong> la<br />

lista <strong>de</strong> cotejo TINF-04/<strong>M3</strong><strong>S1</strong>/EP1-3.<br />

Instrucciones para el alumno.- Realiza los pasos que se<br />

indican <strong>de</strong> una manera or<strong>de</strong>nada en cada uno <strong>de</strong> los<br />

problemas que se muestran a continuación.<br />

Paso 1. La <strong>de</strong>finición y posible solución <strong>de</strong> los problemas,<br />

Paso 2. Los algoritmos <strong>de</strong> los problemas.<br />

Paso 3. Los pseudocódigos <strong>de</strong> los problemas.<br />

Paso 4. Los diagramas <strong>de</strong> flujos <strong>de</strong> los problemas.<br />

PROBLEMA 1.<br />

Lea dos números, busque el mayor <strong>de</strong> ellos, asígnelo a la<br />

variable “c” e imprima esa variable con el texto “es mayor”.<br />

PROBLEMA 2.<br />

Determinar la suma <strong>de</strong> todos aquellos números leídos<br />

mientras no sean pares.<br />

PROBLEMA 3.<br />

Determinar el porcentaje <strong>de</strong>scontado en una compra,<br />

introduciendo por teclado el precio <strong>de</strong> la tarifa y el precio<br />

pagado.<br />

PROBLEMA 4<br />

Suponga que tiene una tienda y <strong>de</strong>sea registrar sus ventas<br />

Página 30 <strong>de</strong> 66


por medio <strong>de</strong> una computadora, lea por cada cliente:<br />

a).- El monto <strong>de</strong> la venta.<br />

b).- Calcule e imprima el IVA.<br />

c).- Calcule e imprima el total a pagar.<br />

d).- Lea la cantidad con que paga el cliente.<br />

e).- Calcule e imprime el cambio.<br />

Al final <strong>de</strong>l día <strong>de</strong>berá imprimir la cantidad <strong>de</strong> dinero que<br />

<strong>de</strong>be haber en la caja.<br />

PROBLEMA 5<br />

Evalué el siguiente menú<br />

MENU<br />

“A” Calcular el promedio <strong>de</strong> 5 calificaciones.<br />

“B” Calcular el área <strong>de</strong> un circulo.<br />

“C” Calcular el numero mayor <strong>de</strong> tres valores.<br />

PROBLEMA 6<br />

Determinar si un alumno aprueba a reprueba un curso,<br />

sabiendo que aprobara si su promedio <strong>de</strong> tres calificaciones<br />

es mayor o igual a 70; reprueba en caso contrario.<br />

PROBLEMA 7<br />

Calcule el total a pagar por la compra <strong>de</strong> camisas. Si se<br />

compran tres camisas o mas se aplica un <strong>de</strong>scuento <strong>de</strong>l 20%<br />

sobre el total <strong>de</strong> la compra y si son menos <strong>de</strong> tres camisas<br />

un <strong>de</strong>scuento <strong>de</strong>l 10%.<br />

PROBLEMA 8<br />

Una compañía <strong>de</strong> seguros esta abriendo un <strong>de</strong>partamento <strong>de</strong><br />

finanzas y estableció un programa para captar clientes, que<br />

consiste en lo siguiente: Si el monto por el que se efectúa la<br />

fianza es menor que $50,000 la cuota a pagar será por el 3%<br />

<strong>de</strong>l monto, y si el monto es mayor que $50,000 la cuota a<br />

pagar será el 2% <strong>de</strong>l monto. La afianzadora <strong>de</strong>sea<br />

<strong>de</strong>terminar cual será la cuota que <strong>de</strong>be pagar un cliente.<br />

Página 31 <strong>de</strong> 66


Conclusiones <strong>de</strong> la competencia<br />

Con los ejercicios y prácticas ejecutados durante esta competencia,<br />

<strong>de</strong>sarrollaste las habilida<strong>de</strong>s y <strong>de</strong>strezas para resolver a través <strong>de</strong> la<br />

metodología problemas computacionales don<strong>de</strong> lograste:<br />

• I<strong>de</strong>ntificar el problema.<br />

• Seleccionar el proceso <strong>de</strong> solución <strong>de</strong>l problema.<br />

• Elaborar el algoritmo <strong>de</strong> la solución <strong>de</strong>l problema.<br />

• Elaborar el diagrama <strong>de</strong> flujo <strong>de</strong> la solución <strong>de</strong>l problema.<br />

• Crear el pseudocódigo <strong>de</strong> la solución <strong>de</strong>l problema<br />

Para evaluar las habilida<strong>de</strong>s y <strong>de</strong>strezas, conocimientos y actitu<strong>de</strong>s <strong>de</strong> esta<br />

competencia se hará uso <strong>de</strong> los instrumentos <strong>de</strong> evaluación: GUIA DE<br />

OBSERVACION: TINF-04/<strong>M3</strong><strong>S1</strong>/ED1-3 y LISTA DE COTEJO: TINF-<br />

04/<strong>M3</strong><strong>S1</strong>/EP1-3<br />

Página 32 <strong>de</strong> 66


COMPETENCIA<br />

II.- Codificar algoritmos en un lenguaje <strong>de</strong> programación<br />

estructurado.<br />

Introducción<br />

El compartimiento y el pensamiento humano se rigen por métodos <strong>de</strong><br />

razonamiento lógicos que nos permiten la ejecución <strong>de</strong> acciones o<br />

tareas concretas, el compartimiento o actuación <strong>de</strong> una computadora<br />

se rigen por lo que llamamos programación. Entendiendo como tal el<br />

planteamiento, <strong>de</strong>sarrollo y puesta en marcha <strong>de</strong> soluciones a problemas<br />

concretos, mediante una secuencia <strong>de</strong> instrucciones o conjuntos <strong>de</strong> acciones<br />

lógicas que se <strong>de</strong>be ejecutar la computadora y que son transmitir a este por la<br />

figura <strong>de</strong>l programador en forma <strong>de</strong> programa.<br />

Nuestra segunda competencia esta enfocada a codificar algoritmos empleando un<br />

lenguaje <strong>de</strong> programación que en nuestro caso utilizaremos el lenguaje c++, para<br />

mostrar todos lo ejemplos y ejercicios ya que es uno <strong>de</strong> los mas usados pero<br />

sobre todo tiene una gran facilidad.<br />

Con todas las activida<strong>de</strong>s que <strong>de</strong>sarrollarás en esta competencia podrás adquirir<br />

las habilida<strong>de</strong>s <strong>de</strong>: Codificar el algoritmo <strong>de</strong> la solución <strong>de</strong> un problema en un<br />

lenguaje estructurado, Compilar el programa, Depurar el programa, y Ejecutar el<br />

programa.<br />

Al dominar estas habilida<strong>de</strong>s y ponerlas en práctica or<strong>de</strong>nadamente tú podrás<br />

también adquirir los conocimientos sobre Tipos <strong>de</strong> archivos, Programación<br />

estructurada, Sintaxis y semántica <strong>de</strong>l lenguaje C, Palabras reservadas, Variables<br />

y constantes, Estructuras <strong>de</strong> control <strong>de</strong>l lenguaje C, Funciones y Arreglos.<br />

Página 33 <strong>de</strong> 66


Manejando estas habilida<strong>de</strong>s <strong>de</strong>ntro <strong>de</strong> una empresa, tendrás un reconocimiento<br />

muy gran<strong>de</strong>, ya que podrás proponer propuestas <strong>de</strong> mejora para el software que<br />

se maneja, así como, realizar programas nuevos que facilitarán el trabajo diario.<br />

Las activida<strong>de</strong>s que aquí se presentan son para que comprendas <strong>de</strong> manera fácil<br />

todas estas habilida<strong>de</strong>s y puedas lograr llegar a un grado <strong>de</strong> dificultad más<br />

complejo.<br />

HABILIDADES<br />

RESULTADO DE<br />

APRENDIZAJE<br />

Recuerda que existen otros lenguajes <strong>de</strong><br />

programación estructura, como ejemplo te<br />

mencionamos el lenguaje <strong>de</strong> programación en<br />

“Pascal”<br />

1. Codificar el algoritmo <strong>de</strong> la solución <strong>de</strong> un problema en<br />

un lenguaje estructurado.<br />

2. Compilar el programa.<br />

3. Depurar el programa.<br />

4. Ejecutar el programa.<br />

Manipular programas mediante el uso <strong>de</strong> lenguajes <strong>de</strong><br />

programación estructurada.<br />

Desarrollo<br />

Al dominar estas habilida<strong>de</strong>s por en<strong>de</strong> tendrás que dominar y conocer uno <strong>de</strong> los<br />

lenguajes estructurales mas utilizados en el aprendizaje <strong>de</strong> programación, y te<br />

darás cuenta que cuando escribas un programa <strong>de</strong>ntro <strong>de</strong> este lenguaje es como<br />

si escribieras cualquier tipo <strong>de</strong> documento <strong>de</strong> texto, solo que este contiene una<br />

Página 34 <strong>de</strong> 66<br />

¡Sabias que!<br />

El lenguaje <strong>de</strong> programación C, ha sido<br />

utilizado para el <strong>de</strong>sarrollo <strong>de</strong> infinidad <strong>de</strong><br />

herramientas <strong>de</strong> trabajo (sistema operativos,<br />

compiladores, procesadores <strong>de</strong> texto, bases<br />

<strong>de</strong> datos etc.) Se Caracteriza por ser un<br />

lenguaje <strong>de</strong> propósito general.


serie <strong>de</strong> instrucciones y especificaciones que le indican a la computadora como<br />

resolver un <strong>de</strong>terminado problema, al compilarlo apren<strong>de</strong>rás cuales son los tipos<br />

<strong>de</strong> archivos que se generan y don<strong>de</strong> se localizan.<br />

El lenguaje en C tiene reglas y sintaxis que al momento <strong>de</strong> compilarlo si nuestro<br />

programa esta mal escrito este nos indicara el tipo <strong>de</strong> error y la línea don<strong>de</strong> se<br />

localiza, a esto se le llama <strong>de</strong>puración <strong>de</strong> programa, cuando ya no se tienen<br />

errores se proce<strong>de</strong> a la ejecución <strong>de</strong>l mismo, en el cual veremos plasmado el<br />

resultado esperado.<br />

EJEMPLO 1<br />

Observa y analiza las siguientes ventanas.<br />

Lee y analiza el siguiente problema y su pseudocódigo<br />

Página 35 <strong>de</strong> 66<br />

¡¡¡A<strong>de</strong>lante, Iniciemos!!!<br />

1.- Una tienda ofrece un <strong>de</strong>scuento <strong>de</strong>l 15% sobre el total <strong>de</strong> la compra y un<br />

cliente <strong>de</strong>sea saber cuanto <strong>de</strong>berá pagar finalmente por su compra.<br />

• Pseudocódigo<br />

Inicio<br />

Leer tc<br />

d = tc * 0.15<br />

tp = tc - d<br />

Imprimir tp<br />

Fin


Ahora observa las siguientes ventanas:<br />

Codificación<br />

Compilación<br />

Depuración<br />

Ejecución<br />

Página 36 <strong>de</strong> 66


Algunos conceptos a consi<strong>de</strong>rar son:<br />

Codificación: Es la acción <strong>de</strong> escribir las instrucciones en un lenguaje <strong>de</strong><br />

programación.<br />

Compilación: Traduce un programa escrito en lenguaje <strong>de</strong> alto nivel a código<br />

maquina, en el lenguaje C se realiza <strong>de</strong>s<strong>de</strong> el menú Compile.<br />

Depuración: Proceso <strong>de</strong> eliminación <strong>de</strong> errores y mejoramiento <strong>de</strong> un programa.<br />

Ejecución: Es la acción <strong>de</strong> correr el programa generado con extensión exe para<br />

mostrar los resultados en pantalla, en el lenguaje C se realiza <strong>de</strong>s<strong>de</strong> el menú Run.<br />

En la codificación toda línea termina con punto y coma a excepción <strong>de</strong> las líneas que<br />

abren o cierren llaves, y todo se escribe en minúsculas recomendado.<br />

Cada lenguaje <strong>de</strong> programación tiene sus instrucciones propias en este caso se están<br />

usando variables reales, printf, scanf, clrscr, getch, <strong>de</strong> los cuales cada uno tiene su<br />

propia sintaxis <strong>de</strong> uso.<br />

EJERCICIO 1<br />

Recursos materiales <strong>de</strong> apoyo.- Lápiz, borrador, cua<strong>de</strong>rno,<br />

Instrucciones para el alumno.- Lee, analiza y realiza lo que<br />

se te pi<strong>de</strong>.<br />

Instrucciones para el docente.- Revisa que el ejercicio<br />

cumpla con lo requerido, tomando en cuenta el or<strong>de</strong>n <strong>de</strong>l<br />

trabajo.<br />

1. Declara las siguientes variables en C, (Se recomienda verificar el anexo 1 <strong>de</strong> los<br />

tipos <strong>de</strong> datos).<br />

DESCRIPCION RESPUESTAS<br />

A El valor monetario <strong>de</strong> una casa<br />

B El promedio <strong>de</strong> un alumno<br />

C La edad <strong>de</strong> un alumno<br />

D El nombre completo <strong>de</strong> un maestro<br />

E La cantidad <strong>de</strong> productos comprados<br />

Página 37 <strong>de</strong> 66


2. Escribe un fragmento <strong>de</strong> programa en c para leer las siguientes variables, utiliza<br />

las funciones printf y el scanf, (se recomienda observar el anexo 4 sobre los<br />

codigos usados).<br />

3. Describe que realiza cada una <strong>de</strong> las líneas <strong>de</strong>l siguiente código, en el anexo 5<br />

se muestran algunas <strong>de</strong> las librerías que utiliza el lenguaje C.<br />

#inclu<strong>de</strong> <br />

CÓDIGO RESPUESTA<br />

#inclu<strong>de</strong> <br />

main()<br />

{<br />

int edad;<br />

clrscr();<br />

Algunas características que <strong>de</strong>ben <strong>de</strong> cumplir las variables son las<br />

siguientes:<br />

• Iniciar con una letra.<br />

• No <strong>de</strong>be <strong>de</strong> contener caracteres especiales.<br />

• Pue<strong>de</strong>n contener números y letras.<br />

• Solo es permitido el guión bajo ( _ ) como separador.<br />

• No <strong>de</strong>ben <strong>de</strong> contener espacios en blanco.<br />

• Compilador sensitivo (diferencia entre mayúsculas y<br />

printf ("dame tu edad :");<br />

scanf ("%d",& edad) ;<br />

DESCRIPCION RESPUESTAS<br />

A El valor monetario <strong>de</strong> una casa<br />

B El promedio <strong>de</strong> un alumno<br />

C La edad <strong>de</strong> un alumno<br />

D El nombre completo <strong>de</strong> un maestro<br />

E La cantidad <strong>de</strong> productos comprados<br />

Página 38 <strong>de</strong> 66


}<br />

if (edad>=18)<br />

else<br />

printf(“Pue<strong>de</strong>s votar”);<br />

printf(“Eres un niño”);<br />

getch();<br />

4. Escribir el siguiente código <strong>de</strong>purando los errores que tiene.<br />

#inclu<strong>de</strong><br />

#inclu<strong>de</strong><br />

main()<br />

{<br />

int cont=1,d;<br />

float s=0,p;<br />

clrscr();<br />

do<br />

{<br />

printf("Dame el numero %d ",cont)<br />

scanf("%d",d);<br />

s=s+d;<br />

cont+;<br />

}while(c


5. Del código anterior escribe cual seria la salida esperada.<br />

__________________________________________________________________<br />

______<br />

__________________________________________________________________<br />

______<br />

5. Contesta correctamente las siguientes preguntas.<br />

A<br />

B<br />

C<br />

PREGUNTA RESPUESTAS<br />

¿Cuál es el método abreviado para<br />

compilar el código <strong>de</strong> un programa?<br />

¿Cuál es el método abreviado para<br />

ejecutar el código <strong>de</strong> un programa?<br />

¿Cuál es la extension por <strong>de</strong>fault que<br />

utiliza el lenguaje C en un archivo <strong>de</strong><br />

código fuente?<br />

Página 40 <strong>de</strong> 66


PRÁCTICA 1<br />

Competencia.- 2.- Codificar algoritmos en un lenguaje <strong>de</strong><br />

programación estructurado.<br />

Habilida<strong>de</strong>s.- 1. Codificar el algoritmo <strong>de</strong> la solución <strong>de</strong><br />

un problema en un lenguaje estructurado, 2. Compilar el<br />

programa, 3. Depurar el programa, 4. Ejecutar el<br />

programa.<br />

Recursos materiales <strong>de</strong> apoyo.- Computadora y<br />

lenguaje <strong>de</strong> programación.<br />

Instrucciones para docente.- Verificar que el alumno<br />

<strong>de</strong>sarrolle cada uno <strong>de</strong> los problemas indicados. Se<br />

sugiere el uso <strong>de</strong> la guía <strong>de</strong> observación TINF-<br />

04/<strong>M3</strong><strong>S1</strong>/ED2-3 y la lista <strong>de</strong> cotejo TINF-04/<strong>M3</strong><strong>S1</strong>/EP2-3,<br />

así como el uso <strong>de</strong> los anexos 2, 3 y 6 don<strong>de</strong> se<br />

muestran los tipos <strong>de</strong> operadores, constantes y lo<br />

relacionado con los archivos respectivamente.<br />

Instrucciones para el alumno.- Realiza en cada uno <strong>de</strong><br />

los problemas lo se te indican <strong>de</strong> una manera or<strong>de</strong>nada.<br />

1.- Codifica<br />

2.- Compila<br />

3.- Depura<br />

4.- Ejecuta<br />

Y guárdalos en un carpeta que se llame <strong>M3</strong><strong>S1</strong> con el<br />

nombre que tienen <strong>de</strong> titulo (ejemplo problema1).<br />

Problema 1<br />

Víctor tiene la necesidad <strong>de</strong> realizar operaciones<br />

aritméticas básicas y para agilizar esto, tiene que diseñar<br />

un programa que permita leer dos valores numéricos y<br />

calcula primero la suma, <strong>de</strong>spués <strong>de</strong> la resta, a<br />

continuación el producto y seguidamente la división <strong>de</strong><br />

ambos valores, escribiendo finalmente el resultado<br />

obtenido en cada una <strong>de</strong> estas operaciones.<br />

Problema 2<br />

El maestro Gómez tiene la necesidad <strong>de</strong> saber que<br />

porcentaje <strong>de</strong> hombres y que porcentaje <strong>de</strong> mujeres hay<br />

en el grupo 5 A <strong>de</strong>l turno <strong>de</strong> la mañana, si son en total 40<br />

estudiantes <strong>de</strong> esos 25 son mujeres y 15 son hombres.<br />

Problema 3<br />

Página 41 <strong>de</strong> 66


Ricardo recibió una noticia <strong>de</strong> sus padres: que le daban<br />

un premio si su calificación en la materia <strong>de</strong> algoritmos<br />

era <strong>de</strong> mínimo <strong>de</strong> 80, por esa razón <strong>de</strong>sea saber cual<br />

será su calificación final en esa materia. Dicha calificación<br />

se compone <strong>de</strong> los siguientes porcentajes:<br />

55% <strong>de</strong>l promedio <strong>de</strong> sus tres calificaciones parciales.<br />

30% <strong>de</strong> la calificación <strong>de</strong>l examen final.<br />

15% <strong>de</strong> la calificación <strong>de</strong> un trabajo final.<br />

Problema 4<br />

Todos los lunes, miércoles y viernes, Maria entrena<br />

atletismo ya que participará en los juegos estatales <strong>de</strong> su<br />

estado, ella corre la misma ruta y cronometra los tiempos<br />

obtenidos. Determinar el tiempo promedio que María<br />

tarda en recorrer la ruta en una semana cualquiera, tú<br />

<strong>de</strong>bes <strong>de</strong> pedir los tiempos <strong>de</strong> cada día.<br />

Problema 5<br />

El empleado Miguel quiere hacer un regalo a su esposa,<br />

pero quiere saber si pue<strong>de</strong> comprarlo con un bono que le<br />

dan anualmente. Para calcular esta utilidad Miguel recibe<br />

la asignación como un porcentaje <strong>de</strong> su salario mensual<br />

que <strong>de</strong>pen<strong>de</strong> <strong>de</strong> su antigüedad en la empresa <strong>de</strong> acuerdo<br />

con la siguiente tabla:<br />

Tiempo Utilidad<br />

Menos <strong>de</strong> 1 año 5 % <strong>de</strong>l salario<br />

1 año o más y menos <strong>de</strong> 2<br />

años<br />

7% <strong>de</strong>l salario<br />

2 años o más y menos <strong>de</strong><br />

5 años<br />

10% <strong>de</strong>l salario<br />

5 años o más y menos <strong>de</strong><br />

10 años<br />

15% <strong>de</strong>l salario<br />

10 años o más 20% <strong>de</strong>l salario<br />

Cuanto recibe Miguel si al mes gana $5,000.00, la<br />

antigüedad la <strong>de</strong>bes <strong>de</strong> ir cambiando por cada uno <strong>de</strong> los<br />

tiempos, imprime el resultado <strong>de</strong> la utilidad.<br />

Problema 6<br />

Paco quiere realizar un programa que muestre un menú<br />

con los 3 primeros programas, pero no pue<strong>de</strong> disponer <strong>de</strong><br />

mucho tiempo ¿le pue<strong>de</strong>s ayudar?<br />

Problema 7<br />

Héctor tiene un problema, tiene 5 naranjas, 3 manzanas,<br />

4 mangos y 19 guayabas y quiere saber si la suma <strong>de</strong><br />

Página 42 <strong>de</strong> 66


todas las frutas es múltiplo <strong>de</strong> 3 o no ¿Le podrías ayudar?<br />

Problema 8<br />

La administración <strong>de</strong> la escuela necesita avisar a los<br />

alumnos <strong>de</strong>l colegio, que llegó la convocatoria <strong>de</strong>l servicio<br />

militar, para esto requiere evaluar cual <strong>de</strong> tres alumnos<br />

previamente localizados es el mayor, esto para que asista<br />

él en representación <strong>de</strong> los otros dos compañeros.<br />

Problema 9<br />

El maestro <strong>de</strong> matemáticas Luís quiere recompensar a<br />

los alumnos con 10 puntos extras al que Realicé un<br />

programa que pida un número y si es menor <strong>de</strong> 10 que<br />

obtenga el cubo <strong>de</strong> el y si es mayor que obtenga el<br />

cuadrado.<br />

Problema 10<br />

Una empresa <strong>de</strong> mercadotecnia realiza un estudio <strong>de</strong><br />

mercado sobre educación en su ciudad, las encuestas<br />

arrojaron información pero para agilizar su trabajo<br />

necesita realizar un programa que pida la edad <strong>de</strong> una<br />

persona, si esta edad es mayor <strong>de</strong> 6 y menor <strong>de</strong> 12 que<br />

man<strong>de</strong> el mensaje “ESTAS EN PRIMARIA”, si es mayor<br />

<strong>de</strong> 12 y menor <strong>de</strong> 15 “ESTAS EN SECUNDARIA”, si es<br />

mayor <strong>de</strong> 15 y menor <strong>de</strong> 18 “ESTAS EN CECYTEM” y si<br />

es mayor <strong>de</strong> 18 “ESTAS EN LICENCIATURA”.<br />

Problema 11<br />

Lupita necesita hacer una tarea muy importante, ya que si<br />

no la hace no tendrá <strong>de</strong>recho a presentar su examen. ¿Le<br />

ayudas?, La tarea consiste en realizar un programa que<br />

pida dos números y nos diga si es primero es múltiplo <strong>de</strong>l<br />

segundo.<br />

Problema 12<br />

Una empresa constructora quiere aplicar una estrategia<br />

para elevar sus ventas <strong>de</strong> terrenos, dando un <strong>de</strong>scuento<br />

a sus clientes, esta consiste en realizar un programa que<br />

pida el largo y el ancho <strong>de</strong> un terreno y el precio por<br />

metro cuadrado. Si el terreno tiene más <strong>de</strong> 200 metros<br />

cuadrados se hace un <strong>de</strong>scuento <strong>de</strong> 10%.<br />

Problema 13<br />

La empresa <strong>de</strong> Jugos Friolin S.A. <strong>de</strong> C.V. quiere hacer el<br />

cálculo <strong>de</strong> su nómina <strong>de</strong> manera más rápida, ya que esta<br />

se realiza manualmente. Para esto necesita crear un<br />

programa que tenga las siguientes características: que<br />

Página 43 <strong>de</strong> 66


contenga N cantidad <strong>de</strong> empleados, cada uno gana a 8<br />

pesos la hora y trabaja 40 horas a la semana, quiere<br />

calcular el sueldo neto por semana <strong>de</strong> cada empleado, y<br />

necesita saber también ¿Cuál es el sueldo promedio <strong>de</strong><br />

todos los empleados?.<br />

Problema 14<br />

Miguelito tiene una colección <strong>de</strong> bolas <strong>de</strong> billar en un<br />

estuche y escoge una al azar pero él <strong>de</strong>sea saber si esta<br />

bola que eligió tiene un número es primo o no ¿Le<br />

podrías ayudar con su problema?<br />

Problema 15<br />

Salvador es un niño bastante lento para enten<strong>de</strong>r<br />

matemáticas y ahora tiene un gran problema, la maestra<br />

Félix le <strong>de</strong>jo <strong>de</strong> tarea que se aprendiera las tablas <strong>de</strong><br />

multiplicar <strong>de</strong>l 1 hasta el 10, para ello Salvador necesita<br />

escribirlas primero, pero como no se las sabe, el quiere<br />

que tú le ayu<strong>de</strong>s mediante un programa que se las<br />

imprima en pantalla.<br />

Problema 16<br />

Juan es muy aplicado en la materia <strong>de</strong> matemáticas, para<br />

ello el maestro Puc le <strong>de</strong>ja un trabajo don<strong>de</strong> tiene que<br />

obtener un resultado <strong>de</strong> la siguiente serie<br />

1+1/2+1/3+1/4+……….1/n, pero a Juan se le olvido y una<br />

hora antes <strong>de</strong> la clase se pone a realizar el trabajo y para<br />

hacerlo mas rápido diseña un programa que entrega el<br />

resultado ¿le pue<strong>de</strong>s ayudar a Juan para que no que<strong>de</strong><br />

mal con su profesor?<br />

Problema 17<br />

Felipe ocupa su R.F.C. para a elaboración <strong>de</strong> una factura<br />

pero no sabe como sacarlo ¿Le podrías hacer un<br />

programa que le muestre como se obtiene?<br />

Problema 18<br />

A Jaime le justa mucho estar entretenido con los textos,<br />

para ello el te pone un reto. ¿Qué le digas una palabra<br />

que sea palindro mediante un programa? (las palabras<br />

palindro son aquellas palabras que significan lo mismo al<br />

ser leídas al <strong>de</strong>recho y al revés, ejemplo oso), y como tú<br />

eres mas inteligente que Jaime ¿verdad que aceptas el<br />

reto?<br />

Página 44 <strong>de</strong> 66


Problema 19<br />

Sergio es un estudiante muy <strong>de</strong>stacado, y quiere realizar<br />

un programa que le diga cual es el promedio <strong>de</strong> 50<br />

valores que tiene almacenados en un vector, también<br />

necesita saber cuantos <strong>de</strong> esos número son mayores que<br />

ese promedio, pero en este momento, él no tiene el<br />

tiempo necesario para hacerlo por lo que él, le pi<strong>de</strong> la<br />

ayuda a sus compañeros para hacerlo ¿verdad que tú si<br />

le ayudas?, <strong>de</strong> paso muestra en pantalla esos resultados<br />

y la lista <strong>de</strong> los número mayores <strong>de</strong>l promedio.<br />

Problema 20<br />

Diego tiene dos bolsas A y B con 45 canicas, cada canica<br />

tiene un número marcado, quiere sumar el número <strong>de</strong> la<br />

canica <strong>de</strong> la bolsa A con el número <strong>de</strong> la canica <strong>de</strong> la<br />

bolsa B, así sucesivamente hasta terminar con todas las<br />

canicas y va anotando en una libreta cada una <strong>de</strong> las<br />

sumatorias, ¿podrías ayudarle a imprimir mediante un<br />

programa cada una <strong>de</strong> las sumatorias?<br />

Problema 21<br />

Lupita tiene 20 monedas <strong>de</strong> diferentes valores, ella quiere<br />

comprar un regalo para su papa, el cual cuesta lo que<br />

marca la moneda <strong>de</strong> mayor valor que tiene, ¿le podrías<br />

ayudar a encontrarla <strong>de</strong> entre todas sus monedas y <strong>de</strong><br />

paso marcar la posición don<strong>de</strong> se encontró?<br />

Problema 22<br />

Manuel es un jugador fanático pero con mucha suerte, el<br />

tiene 500 monedas <strong>de</strong> diferente valor y se pone a jugar<br />

volados contra Sergio el cual tiene la misma cantidad <strong>de</strong><br />

monedas y <strong>de</strong> igual valor que las <strong>de</strong> Manuel, esté ultimo<br />

le gana todos los volados, por lo que duplica la cantidad<br />

<strong>de</strong> cada una <strong>de</strong> sus monedas, Manuel quiere separar las<br />

monedas que tenia inicialmente, pero también quiere<br />

tener las duplicadas ¿podrías ayudarle mediante un<br />

programa a imprimir los valores <strong>de</strong> las primeras 500<br />

monedas y luego con las cantidad duplicadas?<br />

Problema 23<br />

Marcos necesita sus calificaciones <strong>de</strong>l primer parcial por<br />

que su papá se las pidió, pero Rocío la encargada <strong>de</strong><br />

control escolar tiene mucho trabajo y quiere entregárselas<br />

pero el tiempo no le alcanza, ¿Podrías ayudarle a Rocío<br />

con esto? Marcos lleva 5 materias diferentes y se<br />

necesita obtener el promedio <strong>de</strong> ellas.<br />

Página 45 <strong>de</strong> 66


Problema 24<br />

Angélica <strong>de</strong>sea realizar un programa que imprima en<br />

pantalla su nombre completo, pero ella lo necesita con la<br />

primer letra <strong>de</strong> cada palabra en mayúsculas, ejemplo<br />

“María Angélica Alonso González”, pero ella no sabe<br />

como utilizar arreglos <strong>de</strong> texto en los programas ¿Podrías<br />

ayudarle con esto?<br />

Problema 25<br />

El profesor Antonio <strong>de</strong> la materia <strong>de</strong> ciencias ocultas,<br />

requiere hacer una lista <strong>de</strong> todos sus alumnos para ello<br />

va anotando en una hoja a los estudiantes conforme van<br />

llegando al salón ¿Le podrías hacer un programa que<br />

muestre la lista en pantalla y <strong>de</strong> paso también mostrarla<br />

or<strong>de</strong>nada?, ya vez que él no sabe nada <strong>de</strong> programación.<br />

Problema 26<br />

El maestro Jorge quiere realizar un programa que<br />

muestre un menú con las siguientes opciones: pedir N<br />

nombres, mostrar N nombres, consultar un nombre y salir<br />

<strong>de</strong>l menú, para así po<strong>de</strong>r tener un mejor control <strong>de</strong> sus<br />

alumnos ¿pue<strong>de</strong>s ayudarle con esto ya que el tiene<br />

muchos exámenes que revisar?<br />

Problema 27<br />

El profesor Ochoa tiene 30 alumnos y cada alumno tiene<br />

tres calificaciones en el primer parcial. Almacenar los<br />

datos en un archivo, <strong>de</strong>jando espacio para dos más y la<br />

nota final. Incluir un menú <strong>de</strong> opciones, para añadir más<br />

estudiantes, visualizar datos <strong>de</strong> un estudiante, introducir<br />

nuevas notas y calcular la nota final, (te recomendamos<br />

consultar el anexo 6, sobre lo relacionado con archivos).<br />

Recuerda todos los programas don<strong>de</strong> se<br />

utiliza algún ciclo o instrucciones<br />

repetitivas, se pue<strong>de</strong>n realizar empleado<br />

cualquiera <strong>de</strong> los tres ciclos que maneja<br />

el lenguaje C, como son:<br />

Ciclo for, ciclo while y ciclo do - while<br />

Página 46 <strong>de</strong> 66


Conclusiones <strong>de</strong> la competencia<br />

Con los ejercicios y prácticas ejecutados durante esta competencia,<br />

<strong>de</strong>sarrollaste las habilida<strong>de</strong>s y <strong>de</strong>strezas necesarias para:<br />

• Codificar el algoritmo <strong>de</strong> la solución <strong>de</strong> un problema en un lenguaje<br />

estructurado.<br />

• Compilar el programa.<br />

• Depurar el programa.<br />

• Ejecutar el programa.<br />

Para evaluar las habilida<strong>de</strong>s y <strong>de</strong>strezas, conocimientos y actitu<strong>de</strong>s <strong>de</strong> esta<br />

competencia se hará uso <strong>de</strong> los instrumentos <strong>de</strong> evaluación GUÍA DE<br />

OBSERVACIÓN: TINF-04/<strong>M3</strong><strong>S1</strong>/ED2-3 y la LISTA DE COTEJO: TINF-<br />

04/<strong>M3</strong><strong>S1</strong>/EP2-3.<br />

Página 47 <strong>de</strong> 66


COMPETENCIA<br />

III.- Implantar los programas elaborados en un lenguaje <strong>de</strong><br />

programación estructurado.<br />

Introducción<br />

Dentro <strong>de</strong> ésta competencia, nos enfocaremos a <strong>de</strong>sarrollar<br />

habilida<strong>de</strong>s como Localizar los programas generados, Copiar los<br />

programa a los dispositivos <strong>de</strong> almacenamiento, Transportar los<br />

programas e Instalar los programas a otros equipos <strong>de</strong> cómputo.<br />

Los resultados que obtendrás <strong>de</strong> esta competencia los verás plasmados <strong>de</strong>ntro <strong>de</strong><br />

la empresa una vez que te incorpores al trabajo, ya que al ponerlos en práctica <strong>de</strong><br />

una manera responsable, te darás cuenta que son muy útiles en la manipulación<br />

<strong>de</strong> programas (en manipulación, nos estamos refiriendo a la localización, copia,<br />

transportabilidad e instalación <strong>de</strong> programas); su rapi<strong>de</strong>z y eficiencia serán darán<br />

<strong>de</strong> que hablar en el ámbito laboral.<br />

La manera en que <strong>de</strong>sarrollaremos estas activida<strong>de</strong>s, estarán encaminadas a que<br />

poco a poco vayas adquiriendo todo lo necesario para po<strong>de</strong>r manipular los<br />

programas, hasta llegar a un nivel más complejo.<br />

Los conocimientos que podrás adquirir durante el <strong>de</strong>sarrollo <strong>de</strong> esta competencia<br />

son sobre Tipos <strong>de</strong> archivos, Capacida<strong>de</strong>s <strong>de</strong> dispositivos <strong>de</strong> almacenamiento,<br />

Copiado <strong>de</strong> archivos, Compresión y <strong>de</strong>scompresión <strong>de</strong> programas.<br />

¡¡¡A<strong>de</strong>lante con esta ultima competencia!!!<br />

Página 48 <strong>de</strong> 66


HABILIDADES<br />

RESULTADO DE<br />

APRENDIZAJE<br />

Implantar se refiere a poner en funcionamiento, aplicar los<br />

métodos y medidas necesarias, en otros equipos los programas<br />

realizados<br />

1. Localizar los programas generados.<br />

2. Copiar los programa a los dispositivos <strong>de</strong> almacenamiento.<br />

3. Transportar los programas.<br />

4. Instalar los programas a otros equipos <strong>de</strong> cómputo.<br />

Con estas habilida<strong>de</strong>s lograrás la manipulación <strong>de</strong> los<br />

programas generados.<br />

Desarrollo<br />

Con estas habilida<strong>de</strong>s tendrás un mejor control sobre localizar información que se<br />

encuentre en un disco duro, o en otro dispositivo <strong>de</strong> almacenamiento. Otra es la<br />

<strong>de</strong> duplicar la información y almacenarla en un medio flexible para ser<br />

transportada hasta otros equipos <strong>de</strong> cómputo, así como, instalar los archivos en<br />

otros equipos <strong>de</strong> cómputo.<br />

Antes <strong>de</strong> comenzar <strong>de</strong>bes saber que estas habilida<strong>de</strong>s las pue<strong>de</strong>s <strong>de</strong>mostrar en<br />

cualquier tipo <strong>de</strong> software <strong>de</strong> aplicación libre o comercial.<br />

Comencemos a conocer y aplicar estas habilida<strong>de</strong>s!!!<br />

Página 49 <strong>de</strong> 66<br />

EJEMPLO 1<br />

Observa y analiza las siguientes ventanas.<br />

Para localizar don<strong>de</strong> se genera el ejecutable <strong>de</strong>l programa compilado lo podrás<br />

obtener <strong>de</strong> la siguiente manera <strong>de</strong>ntro <strong>de</strong>l lenguaje <strong>de</strong> programación:


También se pue<strong>de</strong>n localizar <strong>de</strong>s<strong>de</strong> Windows realizando lo siguiente:<br />

En el menú inicio,<br />

elegir la opción buscar<br />

<strong>de</strong> menú cascada<br />

En la ventana<br />

resultado <strong>de</strong> la<br />

búsqueda, elegir la<br />

opción todos lo<br />

Archivos y carpetas<br />

Página 50 <strong>de</strong> 66<br />

Elegir el menú Options<br />

y elegir directories<br />

Dirección don<strong>de</strong> se<br />

localizan los archivos<br />

con extensión “H”<br />

Dirección don<strong>de</strong> se<br />

localizan los archivos<br />

con extensión “OBJ”<br />

Dirección don<strong>de</strong> se<br />

localizan los archivos<br />

con extensión “EXE”,<br />

que estos son los que<br />

se van a transportar.<br />

En la sección Todo o parte<br />

<strong>de</strong>l nombre <strong>de</strong>l archivo,<br />

escribir el nombre <strong>de</strong>l<br />

archivo seguido con la la<br />

palabra EXE, separado con<br />

punto:<br />

Nombre.EXE


Una <strong>de</strong> las características <strong>de</strong>l lenguaje <strong>de</strong> programación en C es que cuando tu<br />

compilas se general tres archivos mas aparte <strong>de</strong>l programa fuente (con extensión<br />

.Cpp), con el mismo nombre solo diferente extensión, .Bak, .Obj, .Exe, que este<br />

ultimo es el que nos sirve par ejecutar el programa en cualquier computadora,<br />

aunque no tenga instalado el lenguaje en el que fue diseñado.<br />

Una vez localizado el archivo con extensión .exe se proce<strong>de</strong> a copiar en un medio<br />

<strong>de</strong> almacenamiento externo como pue<strong>de</strong> ser disquete, memoria flash, CD-RW,<br />

etc.<br />

Para copiar este<br />

archivo se presiona el<br />

botón secundario <strong>de</strong>l<br />

mouse sobre él, y se<br />

elige el comando<br />

copiar.<br />

Para transportar con seguridad tus archivos almacenados en tu<br />

dispositivo <strong>de</strong> almacenamiento portátil o fijo, <strong>de</strong>bes <strong>de</strong> tomar<br />

en cuenta en no tener contacto con líquidos con este<br />

dispositivo, no exponerlo en el calor o rayos solares, estar en<br />

una temperatura fresca y seca, no tener peso encima <strong>de</strong>l<br />

dispositivo. Si el dispositivo es fijo no transportarlo con mucho<br />

movimiento, evitar el lo posible el movimiento brusco.<br />

Para instalar lo archivos transportados hacia otro equipo <strong>de</strong><br />

computo, basta con copiar estos archivos en la carpeta o disco<br />

duro <strong>de</strong>stino. Esto auxiliándote <strong>de</strong>l explorador <strong>de</strong> Windows.<br />

Página 51 <strong>de</strong> 66<br />

Se localiza el medio <strong>de</strong><br />

almacenamiento y se<br />

elige pegar empleando<br />

el botón secundario<br />

<strong>de</strong>l mouse.


EJERCICIO 1<br />

Recursos materiales <strong>de</strong> apoyo.- Lápiz, computadora,<br />

software <strong>de</strong> programación.<br />

Instrucciones para el alumno.- De acuerdo a cada<br />

indicación realiza lo que se pi<strong>de</strong>.<br />

Instrucciones para el docente.- Revisa que el ejercicio<br />

cumpla con lo requerido, realimentando las posibles<br />

contingencias.<br />

Caso 1<br />

Localiza el archivo ejecutable <strong>de</strong>l software <strong>de</strong> programación (ejemplo Tc.exe ) y<br />

Escribe paso a paso <strong>de</strong>l proceso que realizaste.<br />

Caso 2<br />

Copia el archivo <strong>de</strong>l caso 1 a un dispositivo <strong>de</strong> almacenamiento externo y<br />

transpórtalo a un equipo <strong>de</strong> cómputo que se encuentre a una distancia <strong>de</strong> 5 mts<br />

mínimo (ejemplo que se ubique en otro edificio). Anota las medidas <strong>de</strong> seguridad<br />

que utilizaste.<br />

Página 52 <strong>de</strong> 66<br />

PRÁCTICA 1<br />

Competencia 3.- Implantar los programas elaborados en un<br />

lenguaje <strong>de</strong> programación estructurado.


Habilida<strong>de</strong>s.- 1. Localizar los programas generados,<br />

2.Copiar los programa a los dispositivos <strong>de</strong><br />

almacenamiento, 3. Transportar los programas, 4. Instalar<br />

los programas a otros equipos <strong>de</strong> cómputo.<br />

Recursos materiales <strong>de</strong> apoyo.- Equipo <strong>de</strong> cómputo con<br />

lenguaje C, dispositivo <strong>de</strong> almacenamiento.<br />

Instrucciones para el alumno.- Realiza lo que se te pi<strong>de</strong><br />

<strong>de</strong> una manera responsable en el editor <strong>de</strong> lenguaje <strong>de</strong><br />

programación C, y Windows<br />

Instrucciones para el docente.- se recomienda realizar<br />

esta práctica en forma individual.<br />

1.- Localiza todos archivos ejecutables <strong>de</strong> práctica anterior<br />

<strong>de</strong> la competencia 2<br />

2.- Copia todos los archivos <strong>de</strong>l punto anterior a una carpeta<br />

<strong>M3</strong><strong>S1</strong>EXE.<br />

3.- Copia la carpeta <strong>M3</strong><strong>S1</strong>EXE a dispositivo <strong>de</strong><br />

Almacenamiento externo<br />

4.- Transporta los archivos y cópialos a otro equipo <strong>de</strong><br />

cómputo<br />

Página 53 <strong>de</strong> 66


CONCLUSIONES DE LA COMPETENCIA<br />

En esta competencia <strong>de</strong>sarrollaste las habilida<strong>de</strong>s y <strong>de</strong>strezas<br />

necesarias para:<br />

• Localizar los programas generados.<br />

• Copiar los programas a los dispositivos <strong>de</strong> almacenamiento.<br />

• Transportar los programas.<br />

• Instalar los programas a otros equipos <strong>de</strong> cómputo.<br />

Para lograr el <strong>de</strong>sarrollo <strong>de</strong> todas estas habilida<strong>de</strong>s recurrimos a diversos<br />

ejercicios y prácticas.<br />

Finalmente <strong>de</strong>bemos señalar que esta competencia será evaluada mediante la<br />

aplicación <strong>de</strong>l instrumento <strong>de</strong> evaluación guía <strong>de</strong> Observación TINF-<br />

04/<strong>M3</strong><strong>S1</strong>/ED3-3 y la lista <strong>de</strong> cotejo TINF-04/<strong>M3</strong><strong>S1</strong>/EP3-3<br />

Página 54 <strong>de</strong> 66


CONCLUSIONES DE LA GUÍA DE APRENDIZAJE<br />

Los ejercicios y prácticas que se han propuesto en esta guía <strong>de</strong><br />

aprendizaje te permitirán <strong>de</strong>sarrollar las habilida<strong>de</strong>s, <strong>de</strong>strezas,<br />

conocimientos y actitu<strong>de</strong>s necesarias para solucionar problemas<br />

utilizando la lógica computacional realizando programas en el<br />

lenguaje estructurado e implantar en otros escenarios.<br />

Para comprobar que has <strong>de</strong>sarrollado la competencia en todos los apartados<br />

señalados con anterioridad se utilizarán dos tipos <strong>de</strong> instrumentos <strong>de</strong> evaluación:<br />

las guías <strong>de</strong> observación para medir tus <strong>de</strong>sempeños y las listas <strong>de</strong> cotejo para los<br />

productos logrados<br />

Página 55 <strong>de</strong> 66


Fuentes <strong>de</strong> Información<br />

SCHILDT, H.: "C: Manual <strong>de</strong> referencia" Osborne-Mc Graw-Hill, 1990<br />

ISBN: 84-7615-535-2<br />

SEDGEWICK, R.: "Algoritmos en C++". Addison-Wesley Iberoameriacana / Díaz<br />

<strong>de</strong> Santos.<br />

ISBN: 0-201-62574-1<br />

KERNIGHAN, B. Y RITCHIE, D.: "El lenguaje <strong>de</strong> programación C". Prentice Hall.<br />

ISBN: 968-880-205-0<br />

KERNIGHAN, B. Y PIKE, R.: "La práctica <strong>de</strong> la programación". Prentice Hall.<br />

ISBN: 968-444-418-4<br />

Metodología <strong>de</strong> la Programación. Luis Joyanes Aguilar<br />

Lenguajes <strong>de</strong> Diagramas <strong>de</strong> Flujo Forsythe, Keenan, Organick, Stenberg.<br />

Introducción a la computación jose vasconcelos Santillán, publicaciones<br />

culturales, séptimo impresión, México2001.<br />

Página 56 <strong>de</strong> 66


Glosario<br />

Algoritmo: Es una serie <strong>de</strong> operaciones <strong>de</strong>talladas y no ambiguas, a ejecutar<br />

paso a paso, que conducen a la resolución <strong>de</strong> un problema.<br />

Pseudocódigo: Es una técnica para expresar en el lenguaje natural la lógica <strong>de</strong> un<br />

programa, es <strong>de</strong>cir su flujo <strong>de</strong> control.<br />

Diagrama <strong>de</strong> flujo: Son la representación grafica <strong>de</strong> la solución <strong>de</strong>l problema que<br />

se <strong>de</strong>sea mecanizar. Esta representación grafica <strong>de</strong>scribe la secuencia <strong>de</strong><br />

procesos en que se <strong>de</strong>be ejecutarse<br />

Entrada <strong>de</strong> Datos: Engloban todas aquellas instrucciones que toman datos <strong>de</strong> un<br />

dispositivos externo <strong>de</strong>positándolas posteriormente en memoria principal.<br />

Proceso: Engloban toda instrucción encargada <strong>de</strong> procesar <strong>de</strong> la información.<br />

Salida <strong>de</strong> datos: Este bloque esta formado por todas aquellas instrucciones que<br />

toman los resultados <strong>de</strong>positados en memoria principal una vez procesados los<br />

datos <strong>de</strong> entrada, enviándolas seguidamente en un dispositivo.<br />

Programación: Elaboración <strong>de</strong> programas en un lenguaje <strong>de</strong> programación<br />

Lenguaje <strong>de</strong> programación: Los lenguajes <strong>de</strong> programación son herramientas<br />

que nos permiten crear programas y software. Entre ellos tenemos Delphi, Visual<br />

Basic, Pascal, Java, C, etc.<br />

Función: Es un bloque <strong>de</strong> instrucciones que ejecuta individualmente.<br />

Variables: Son <strong>de</strong>finidas utilizando un i<strong>de</strong>ntificador <strong>de</strong> tipo seguido <strong>de</strong>l nombre <strong>de</strong><br />

la variable.<br />

I<strong>de</strong>ntificador: Es un nombre que <strong>de</strong>fine a una variable, una función o un tipo <strong>de</strong><br />

datos.<br />

Compilación: Es el proceso por el cual se traducen programas en código fuente<br />

programas en código objeto.<br />

Código fuente: Es un conjunto <strong>de</strong> líneas que conforman un bloque <strong>de</strong> texto,<br />

escrito según las reglas sintácticas <strong>de</strong> algún lenguaje <strong>de</strong> programación <strong>de</strong>stinado<br />

a ser legible por humanos.<br />

Código objeto: en programación al código resultante <strong>de</strong> la compilación <strong>de</strong>ll<br />

código fuente.<br />

Página 57 <strong>de</strong> 66


Tipos <strong>de</strong> datos usados en C++.<br />

Anexo 1<br />

TIPO BYTES DESCRIPCION RANGO<br />

Char 1 Carácter -127 a 127<br />

Unsigned char 1 Carácter 0 a 255<br />

Int 2 Entero -32767 a 32767<br />

Unsigned int 2 Entero positivo 0 a 65535<br />

Long int 4 Entero largo -2147793467 a<br />

2147793467<br />

Unsigned lon int 4 Entero largo<br />

positivo<br />

Página 58 <strong>de</strong> 66<br />

0 a 4294967925<br />

float 4 Real(flotante) Seis dígitos <strong>de</strong> precisión<br />

double 8 Real Diez dígitos <strong>de</strong> precisión<br />

void 0 Nada -


OPERADORES ARITMETICOS<br />

OPERADORES DE ASIGNACIÓN<br />

Anexo 2<br />

OPERADOR ACCION<br />

- Resta<br />

+ Suma<br />

* Multiplicación<br />

% Modulo<br />

/ División entera<br />

OPERADOR ACCION<br />

A = B Asigna el valor <strong>de</strong> B a A<br />

A *= B Multiplica A por B y asigna el resultado a la variable A<br />

A /= B Divi<strong>de</strong> A entre B y asigna el resultado a la variable A<br />

A %= B Fija A al resto <strong>de</strong> A / B.<br />

A += B<br />

A -= B<br />

Suma B y A y lo asigna a la variable A<br />

Suma B y A y lo asigna a la variable A<br />

Página 59 <strong>de</strong> 66


OPERADORES RELACIONALES<br />

OPERADOR ACCION<br />

> Mayor que<br />

>= Mayor o igual que<br />

< Menor que<br />


TABLA DE OPERADORES Y SU PRECEDENCIA<br />

( ) Izquierda a <strong>de</strong>recha<br />

! ++ -- Izquierda a <strong>de</strong>recha<br />

* / % Izquierda a <strong>de</strong>recha<br />

< >= Izquierda a <strong>de</strong>recha<br />

== != Izquierda a <strong>de</strong>recha<br />

&& Izquierda a <strong>de</strong>recha<br />

¦¦ Izquierda a <strong>de</strong>recha<br />

= += -= etc. Izquierda a <strong>de</strong>recha<br />

Página 61 <strong>de</strong> 66


TIPOS DE CONSTANTES<br />

Anexo 3<br />

Página 62 <strong>de</strong> 66


Anexo 4<br />

CODIGOS DEL PRINTF<br />

CODIGO SIGNIFICADO<br />

%c VISUALIZA UN CARACTER<br />

%d VISUALIZA DECIMAL<br />

%i VISUALIZA DECIMAL<br />

%e VISUALIZA EN NOTACIÓN CIENTÍFICA<br />

%f VISUALIZA DATOS EN PUNTO FLOTANTE<br />

%g VISUALIZA %E Ó %F LA QUE SEA MAS CORTA<br />

%o VISUALIZA OCTAL<br />

%s VISUALIZA CADENA DE CARACTERES<br />

%u VISUALIZA DECIMAL SIN SIGNO<br />

%x VISUALIZA HEXADECIMAL<br />

%% VISUALIZA SIGNO %<br />

%p VISUALIZA UN PUNTERO<br />

CODIGOS DEL SCANF<br />

CODIGO SIGNIFICADO<br />

%c LEE UN CARÁCTER<br />

%d LEE UN DECIMAL ENTERO<br />

%i LEE UN DECIMAL ENTERO<br />

%e LEE UN NUMERO EN PUNTO FLOTANTE<br />

%f LEE UN NUMERO EN PUNTO FLOTANTE<br />

%o LEE UN NUMERO OCTAL<br />

%s LEE UNA CADENA DE CARACTERES<br />

%x LEE UN NUMERO HEXADECIMAL<br />

%p LEE UN PUNTERO<br />

Página 63 <strong>de</strong> 66


Anexo 5<br />

Algunas librerías que utiliza el lenguaje C.<br />

ALLOC.H MATH.H ASSERT.H MEM.H<br />

BIOS.H PROCESS.H CONIO.H SETJMP.H<br />

CTYPE.H SHARE.H DIR.H SIGNAL.H<br />

DOS.H STDARG.H ERRNO.H STDDEF.H<br />

FCNTL.H STDIO.H FLOAT.H STDLIB.H<br />

GRAPHICS.H STRING.H IO.H SYS\STAT.H<br />

LIMITS.H SYS\TIMEB.H SYS\TYPES.H VALUES.H<br />

TIME.H<br />

Página 64 <strong>de</strong> 66


NOMBRE DE ARCHIVO<br />

Anexo 6<br />

ARCHIVOS<br />

En C se utiliza doble diagonal invertida para separar el nombre <strong>de</strong> archivo <strong>de</strong>l<br />

nombre <strong>de</strong> carpeta.<br />

VALORES DE MODO.<br />

r Abre para lectura<br />

w Abre para crear nuevo archivo(si ya existe pier<strong>de</strong> sus datos)<br />

a Abre para añadir al final<br />

r+ Abre el archivo ya existente para modificar (leer/escribir)<br />

w+ Crea un archivo para escribir/leer(si ya existe se pier<strong>de</strong>n los datos)<br />

a+ Abre el archivo para modificar (escribir/leer) al final. Si no existe es como<br />

w+.<br />

El modo pre<strong>de</strong>terminado para un archivo es <strong>de</strong> texto. Para abrir un archivo en<br />

modo binario se aña<strong>de</strong> una “b” al argumento <strong>de</strong>l modo.<br />

ABRIR ARCHIVO.<br />

Para abrir un archivo se usa la función <strong>de</strong> biblioteca “fopen()”. Esta función se<br />

encuentra en la librería “stdio.h” y dice lo siguiente:<br />

fopen regresa un puntero a “FILE”, que es una estructura <strong>de</strong>clara en “stdio.h”. Si<br />

fopen falla, regresa “NULL”.<br />

ENTRADA Y SALIDA DE ARCHIVOS FORMATEADOS<br />

SALIDA FORMATEADA A ARCHIVOS<br />

Página 65 <strong>de</strong> 66


ENTRADA DE ARCHIVOS FORMATEADA<br />

ENTRADA PARA UN CARÁCTER<br />

ENTRADA Y SALIDA DE CARACTERES<br />

ENTRADA DE UNA CADENA DE CARACTERES<br />

SALIDA PARA UN CARÁCTER<br />

SALIDA DE UNA CADENA DE CARACTERES<br />

ENTRADA Y SALIDA DIRECTAS DE ARCHIVOS<br />

SALIDA DIRECTA DE ARCHIVOS<br />

ENTRADA DIRECTA DE ARCHIVOS<br />

ALGUNAS FUNCIONES QUE SE USAN EN ARCHIVOS<br />

FUNCION FEOF: Indica que se ha leído el fin <strong>de</strong> archivo. Está <strong>de</strong>finida en la<br />

librería “stdio.h”. Devuelve un valor distinto <strong>de</strong> 0 (true) cuando se lee el carácter <strong>de</strong><br />

fin <strong>de</strong> archivo, en caso contrario <strong>de</strong>vuelve 0 (falso).<br />

Página 66 <strong>de</strong> 66


FUNCION FSEEK: Con la función “fseek()” se pue<strong>de</strong> tratar un archivo en C como<br />

un arreglo que es una estructura <strong>de</strong> datos <strong>de</strong> acceso aleatorio. “fseek()” sitúa el<br />

puntero <strong>de</strong>l archivo en una posición aleatoria, <strong>de</strong>pendiendo <strong>de</strong>l <strong>de</strong>splazamiento y<br />

el origen relativo que se pasan como argumentos.<br />

Desplazamiento: Es el número <strong>de</strong> bytes a mover; tienen que ser <strong>de</strong> tipo long.<br />

Origen: Es la posición <strong>de</strong>s<strong>de</strong> la que se cuenta el número <strong>de</strong> bytes a mover. Pue<strong>de</strong><br />

tener tres valores, que son:<br />

0: Cuenta <strong>de</strong>s<strong>de</strong> el inicio <strong>de</strong>l archivo.<br />

1: Cuenta <strong>de</strong>s<strong>de</strong> la posición actual <strong>de</strong>l puntero al archivo<br />

2: Cuenta <strong>de</strong>s<strong>de</strong> el final <strong>de</strong>l archivo<br />

Estos tres valores están representados por tres i<strong>de</strong>ntificadores:<br />

FUNCION FTELL: La posición actual <strong>de</strong>l archivo se pue<strong>de</strong> obtener llamando a<br />

esta función y pasando un puntero l archivo como argumento. La función <strong>de</strong>vuelve<br />

la posición como número <strong>de</strong> bytes (en entero largo) <strong>de</strong>s<strong>de</strong> el inicio <strong>de</strong>l archivo<br />

(byte 0)<br />

Página 67 <strong>de</strong> 66

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!