Vous êtes sur la page 1sur 7

CORPORACIN UNIVERSITARIA REMINGTON

GUIA DE APRENDIZAJE 2
Corporacin Universitaria Remington - Calle 51 51-27 Edificio Coltabaco Torre 1 - Conmutador:(574) 5111000 - Fax: (574)
5137892 Medelln - Colombia
Programa: Ingeniera de Sistemas

Mdulo: Lenguajes de Programacin I
Nivel: 02
Nmero de Crditos: 4
Modalidad: Presencial Virtual Des escolarizada
Tutora: Ingeniera Dora Alicia Echeverri Morales

estudiar a distancia supone la autodidaxia, es decir, el estudio por uno mismo, el estudio independiente, sin
necesidad de asistir a clases o lecciones presenciales de un docente en una institucin educativa y horario
definido, para lo cual se requiere un notorio grado de inters, responsabilidad, empeo y cierto contro.l
(Maya, 1993, p17).

Objetivos de la gua de aprendizaje:

Adquirir los conceptos bsicos para el manejo de lenguaje C++
Integrar los conceptos involucrados en los lenguajes anteriores y la fase de lgica.


1. Introduccin

La programacin estructurada que permite la escritura de programas fciles de leer y modificar. En esta programacin, el
flujo lgico se gobierna por las estructuras de control bsicas vista hasta hoy: secuenciales, repetitivas y de seleccin. La
programacin modular permite la descomposicin de un problema en un conjunto de subproblemas independientes entre s,
ms sencillos de resolver y que pueden ser tratados separadamente unos de otros. Gracias a la modularidad se pueden
probar los subprogramas o mdulos de manera independiente, depurndose sus errores antes de su inclusin en el
programa principal y almacenarse para su posterior utilizacin cuantas veces se precise.

Mdulo

Uno de los elementos principales de programacin utilizados en la representacin de cada mdulo
es la subrutina. Una subrutina es un conjunto de instrucciones de cmputo que realizan una tarea.
Un programa principal llama a estos mdulos a medida que se necesitan. Un mdulo es un
segmento, rutina, subrutina, subalgoritmo o procedimiento, que puede definirse dentro de un
algoritmo con el fin de ejecutar una tarea especfica y puede ser llamado o invocado desde el
algoritmo principal cuando sea necesario. os mdulos son independientes en el sentido de que
ningn mdulo puede tener acceso directo a cualquier otro mdulo, con excepcin del mdulo al
que llama y sus propios submdulos. Sin embargo, los resultados producidos por un mdulo pueden ser utilizados por
cualquier otro mdulo cuando se transfiera a ellos el control. Los mdulos tienen una entrada y una salida. Se pueden tomar
decisiones dentro de un mdulo que tenga repercusin en todo el flujo, pero el salto debe ser nicamente hacia el programa
principal. Al descomponer un programa en mdulos independientes ms simples se conoce tambin como el mtodo de
"Divide y vencers".

Cundo es til la modularizacin?

Este enfoque de segmentacin o modularizacin es til en dos casos:

1. Cuando existe un grupo de instrucciones o una tarea especfica que deba ejecutarse en ms de una ocasin.

2. Cuando un problema es complejo o extenso, la solucin se divide o segmenta en mdulos que ejecutan partes o tareas
especficas.

Ventajas de la Programacin Modular:

Como los mdulos son independientes, el desarrollo de un programa se puede efectuar con mayor facilidad, ya que cada
mdulo se puede crear aisladamente y varios programadores podrn trabajar simultneamente en la confeccin de un
algoritmo, repartindose las distintas partes del mismo. Se podr modificar un mdulo sin afectar a los dems Las tareas,
subalgoritmos, slo se escribirn una vez, aunque se necesiten en distintas ocasiones a lo largo del algoritmo. El uso de
mdulos facilita la proyeccin y la comprensin de la lgica subyacente para el programador y el usuario. Aumenta la
facilidad de depuracin y bsqueda de errores en un programa ya que stos se pueden aislar fcilmente. El mantenimiento
y la modificacin de la programacin se facilitan. Los mdulos reciben diferentes nombres:

- Funciones en C, C++
- Subrutinas en Basic
- Procedimientos y funciones en Pascal
- Subrutinas en Fortran y
- Secciones en Cobol.
CORPORACIN UNIVERSITARIA REMINGTON
GUIA DE APRENDIZAJE 2
Corporacin Universitaria Remington - Calle 51 51-27 Edificio Coltabaco Torre 1 - Conmutador:(574) 5111000 - Fax: (574)
5137892 Medelln - Colombia

Desarrollar programas de forma modular:

Significa que pueden identificarse las principales tareas a realizar por el programa y que se pueden disear y probar
procedimientos individuales para estas tareas. Por ejemplo: Qu transacciones se le hacen a una cuenta de ahorros?

Transacciones:

- depsito (cheque y efectivo)
- intereses
- retiro
- estado de cuenta
- cambio de libreta

Tiempo de vida de los datos

Segn el lugar donde son declaradas puede haber dos tipos de variables.

Globales: las variables permanecen activas durante todo el programa. Se crean al iniciarse ste y se destruyen de la
memoria al finalizar. Pueden ser utilizadas en cualquier procedimiento o funcin.

Locales: las variables son creadas cuando el programa llega a la funcin o procedimiento en la que estn definidas. Al
finalizar la funcin o el procedimiento, desaparecen de la memoria. Si dos variables, una global y una local, tienen el mismo
nombre, la local prevalecer sobre la global dentro del mdulo en que ha sido declarada. Dos variables locales pueden
tener el mismo nombre siempre que estn declaradas en funciones o procedimientos diferentes.

Parmetros Formales

Es un tipo especial de variables en un procedimiento a los que se pueden pasar valores desde el exterior del procedimiento.
Se declaran en la cabecera del procedimiento.

Parmetros por Valor

Son los parmetros que pueden recibir valores pero que no pueden devolverlos. Es una variable global que se conecta con
una variable local mediante el envo de su valor, despus de lo cual ya no hay relacin. Lo que le sucede a la variable local
no afectar a la global. Cuando un parmetro actual se pasa por valor, el subprograma hace una copia del valor de ste en
una posicin de memoria idntica en tamao pero distinta en ubicacin a la del parmetro actual y la asigna al parmetro
formal correspondiente. Como el subprograma trabaja a partir de sus parmetros formales, si durante la ejecucin se
modifica el valor de un parmetro formal correspondiente a un paso por valor, el contenido de la posicin de memoria del
parmetro actual no se ver alterado.

Parmetros por Variable

Son los que pueden recibir y devolver valores. Son variables globales que se conectan con una local a travs de su
contenido; al establecerse dicha conexin las variables se convierten en sinnimos, lo que afecte a la variable local le
suceder a la variable global.

PROCEDIMIENTOS

Son subprogramas, es decir, mdulos que forman parte de un programa y realizan una tarea especfica. Un procedimiento
puede tener sus propias variables que se declaran en la seccin var del propio procedimiento. Estas se llaman variables
locales. La casilla de memoria para estas variables se crea cada vez que el procedimiento es llamado y se borran al salir del
mismo. Asi, las variables locales para un procedimiento slo se pueden usar en el cuerpo del procedimiento y no en el
cuerpo principal del programa.

FUNCIONES

La funcin es una estructura autnoma similar a los mdulos. La diferencia radica en que la funcin se usa para devolver un
solo valor de un tipo de dato simple a su punto de referencia. La funcin se relaciona especificando su nombre en una
expresin, como si fuera una variable ordinaria de tipo simple. Las funciones se dividen en estndares y definidas por el
usuario.

- Estndar: Son funciones proporcionadas por cualquier lenguaje de programacin de alto nivel, y se dividen en aritmticas
y alfabticas.

- Definidas por el usuario: son funciones que puede definirlas el programador con el propsito de ejecutar alguna funcin
especfica, y que por lo general se usan cuando se trata de hacer algn clculo que ser requerido en varias ocasiones en
la parte principal del algoritmo.

CORPORACIN UNIVERSITARIA REMINGTON
GUIA DE APRENDIZAJE 2
Corporacin Universitaria Remington - Calle 51 51-27 Edificio Coltabaco Torre 1 - Conmutador:(574) 5111000 - Fax: (574)
5137892 Medelln - Colombia
Semejanzas entre Procedimientos y Funciones.

- La definicin de ambos aparece en la seccin de subprogramas de la parte de declaraciones de un programa y en ambos
casos consiste en una cabecera, una parte de declaraciones una parte de instrucciones.

- Ambos son unidades de programa independientes. Los parmetros, constantes y variables declarados en una funcin o
procedimiento son locales a la funcin o al procedimiento, solamente son accesibles dentro del subprograma.

- Cuando se llama a una funcin o a un procedimiento, el nmero de los parmetros reales debe ser el mismo que el
nmero de los parmetros formales y los tipos de los parmetros reales deben coincidir con los tipos de los
correspondientes parmetros formales, con una excepcin: se puede asociar un parmetro real de tipo entero con un
parmetro formal por valor de tipo real.

Diferencias entre Procedimientos y Funciones.

- Mientras que a un procedimiento se le llama mediante una instruccin de llamada a procedimiento, a una funcin se la
llama usando su nombre en una expresin.

- Puesto que se debe asociar un valor al nmero de una funcin, tambin se le debe asociar un tipo. Por tanto, la cabecera
de una funcin debe incluir un identificador de tipo que especifique el tipo del resultado. Sin embargo, no se asocia ningn
valor con el nombre de un procedimiento y, por tanto, tampoco ningn tipo.

- Las funciones normalmente devuelven un nico valor a la unidad de programa que la llama. Los procedimientos suelen
devolver ms de un valor, o pueden no devolver ninguno si solamente realizan alguna tarea, como una operacin de salida.

- En los procedimientos, los valores se devuelven a travs de parmetros por variable, pero el valor de una funcin se
devuelve mediante la asignacin al nombre de la funcin de dicho valor en la parte de instrucciones de la definicin de la
funcin.




2. Actividades y estrategias de aprendizaje-

Actividad 1: Reconozco los conceptos variable y tipo de datos en un programa en C++.
Descripcin: En grupo colaborativo con un compaero que me asigna mi tutor, leo cuidadosamente los ejercicios que
encuentro a continuacin y sigo las instrucciones. Consulto el sitio y el documento APUNTE_DE_PROGRAMACION_IIpara
la guia2.pdf.para desarrollar adecuadamente el taller.

EJERCICIO 1. VARIABLES (15 MIN)

a. Indique las reglas que impone C++ para los nombres de las variables.
b. Elabore un diagrama que describa la sintaxis de la declaracin de una variable. De dos ejemplos
c. Defina la diferencia entre declaracin y definicin de una variable. De dos ejemplos
d. Confeccione una tabla que muestre para cada uno de los tipos elementales, la cantidad de bytes de memoria que
requiere almacenarlo y el conjunto de valores que permite representar.

EJERCICIO2. EXPRESIONES

Programacin Modular
CORPORACIN UNIVERSITARIA REMINGTON
GUIA DE APRENDIZAJE 2
Corporacin Universitaria Remington - Calle 51 51-27 Edificio Coltabaco Torre 1 - Conmutador:(574) 5111000 - Fax: (574)
5137892 Medelln - Colombia
1. Indique cuales son los valores de las variables al finalizar cada uno de los siguientes segmentos de cdigo C++,
asumiendo que todas han sido declaradas como enteras.

a) a=2; a++;
b) a=2; b=a++;
c) a=2; b=++a;
d) a=2; b=1; b+=a;
e) b=1; b*=5;
f) a=2; b += --a + 5;
g) b=2; a += b--;
h) a = 2; b = 3; c = 5; a++; b += a; c *= b; b -= 3; a %= 2; c /= 5;
i) a = 1; b = 2; b++; b = ++a; a *= 2; b += a; a = ++b + 2;
j) a = 1; b = 4; a++; b += a; a *= 4; b -= a; ++b; a = ++b; b = --a + b;

2. Reescriba las porciones de cdigo del inciso (1) utilizando solamente los operadores =, +, -, *, / y %

3. Indique cuales son los valores de las variables al finalizar cada uno de los siguientes segmentos de cdigo en C++,
asumiendo que a y b se declararon como enteras y v de tipo boolean.

a) a=1; b=2; v=(a++<b);
b) a=1; b=2; v=(++a<b);
c) a=1; b=2; v=(++a>=b);
d) a=1; v= (a%2 == 0);
e) a=1; v= (a != 1);
f) a=1; b=2; v=(b++<10 && a==1);
g) a=1; b=2; v=(b==1 && a>=1);
h) a=1; b=2; v=(b<10 || a++==2);
i) a=1; b=2; v=(--b<=1 || a<=10);
j) a=1; b=2; v=(a--==2 || b==1);
k) a=1; b=2; v=!(a==1 && ++b==1);

Actividad 2. Reconozco las estructuras condicionales y su sintaxis en C++.
Descripcin: En grupo colaborativo con un compaero que me asigna mi tutor, considero los siguientes fragmentos
extrados de un programa. Asumo la siguiente declaracin de variables:

int a,b;
char c;

a = 1;
b = 1;
if (a>b) ;

a = 1;
b = 1;
if (3>5)
a = 3
else
b + 3 = a;
if (true)
System.out.println("Verdadero");
else
System.out.println("Falso");
a= 1;
b= 1;
if (3 < 3)
if (!(2>3) )
a = 1;
else
a = 2;
else
a=3;




a = 1;
b = 1;
if (3>5)
a = 3
else
b + 3 = a;
a= 1;
b= 1;
if (a > b)
b = a;
a = 0;
else
a = b;
b = 0;
if (a == b)
{ a=1;
b=2; }
else
{a=2;
b=1; }


a=1; b=3;
switch(a){
case 1: a= a+b;
break;
case 2: a= a-b;
break;
case 3: a= a*b;
break;
}
a=2; b=3;
switch(a){
case 1: a= a+b;
case 2: a= a-b;
case 3: a= a*b;
break;
}



a) Justifique si los fragmentos corresponden a instrucciones sintcticamente correctas.
b) Determine el valor final de cada variable al completarse la ejecucin del bloque.

Actividad 3. Reconozco las estructuras cclicas y su sintaxis en C++.
Descripcin: En grupo colaborativo con un compaero que me asigna mi tutor, realizo la declaracin y la inicializacin de
las variables n y s convenientemente, analizo si los siguientes segmentos de instrucciones son equivalentes en trminos del
mbito y los valores de las variables:

CORPORACIN UNIVERSITARIA REMINGTON
GUIA DE APRENDIZAJE 2
Corporacin Universitaria Remington - Calle 51 51-27 Edificio Coltabaco Torre 1 - Conmutador:(574) 5111000 - Fax: (574)
5137892 Medelln - Colombia
float sum=0;
for (int i = n; 1/i > s; i--);{
sum = sum + 1/i;
float sum=0;
for (int i = n; 1/i > s; i--){
sum = sum + 1/i;
}
for (float sum=0,int i = n;
1/i > s; i--){
sum = sum + 1/i;
}


Realizo un cuadro comparativo entre las estructuras de control en C++:


Valores iniciales,
operaciones previas
Condicin para
seguir repitiendo
Cuando se
comprueba
Cambios que hay
que hacer
pueden quedar
Campos vacos?
FOR
WHILE
DO WHILE


Actividad 4. Reconozco la Modularidad en un programa en C++.
Descripcin: En grupo colaborativo con un compaero que me asigna mi tutor, en cada uno de los programas siguientes,
indico que tipo de estructuras se utilizan para llevar a cabo la funcin que realiza dicho programa. Describo la relacin entre
el archivo .h y las funciones que se utilizan.

I. Programa: Conversin de Grados Faharenheit a Grados Celcius

Cdigo Archivo .h Funcin
1. #include<stdio.h>
2. #include<conio.h>
3. Int c, f;
4. main ()
5. {
6. printf ("\n ####Programa que convierte de Grados Faharenheit a Grados
Celcius###.\n\n");
7. for(f=0;f<=300;f+=20)
8. {
9. c=((f-32)/1.8);
10. printf("\n%d Faharenheit es igual a %d grados celcius. \n",f,c);
11. getch();
12. }
13. }



II. Programa: Impresin del nmero de repeticiones de un carcter

Cdigo Archivo .h Funcin
1. #include<stdio.h>
2. #include<conio.h>
3. main()
4. {
5. int n,i;
6. char x[3];
7. printf("inserte un caracter" );
8. scanf("%s",& x);
9. printf("inserte el nmero de repeticiones" );
10. scanf("%d", & n);
11. i=1;
12. while(i<=n)
13. {
14. printf("%s", x);
15. i++;
16. }
17. getch();
18. }


III. Programa: Imprime un mensaje de presentacin, pregunta cmo se llama y le saluda

Cdigo Archivo .h Funcin
1. # include <stdio.h>
2. # include <conio.h>

CORPORACIN UNIVERSITARIA REMINGTON
GUIA DE APRENDIZAJE 2
Corporacin Universitaria Remington - Calle 51 51-27 Edificio Coltabaco Torre 1 - Conmutador:(574) 5111000 - Fax: (574)
5137892 Medelln - Colombia
3. # include <math.h>
4. main()
5. {
6. int a,d=0,s=0,q=0,h;
7. float n,r;
8. char op;
9. printf("estructura multiple segun caso hacer");
10. printf("\n\n *|*| menu |*|*");
11. printf("\n \n Ao bisiesto---[a] \n Salario de 8 horas---[b] ");
12. printf("\n Raiz cuadrada de un numero ---[c] ");
13. printf("\n \n \n seleccione una opcion: ");
14. scanf("%s",&op);
15. switch(op)
16. {
a. case 'a':
b. printf("introducir el ao: ");
c. scanf("%f",&a);
d. if(a%4==0 && a%100!= 0 || a%400==0)
e. printf("el ao introducido es bisiesto");
f. else
g. printf ("el ao introducido no es bisiesto");
h. break;
i. case'b':
j. printf("inserte cuanto gana durante una hora: ");
k. scanf("%d",&h);
l. d=8*h;
m. s=d*6;
n. q=s*2;
o. printf ("\n Al dia va a ganar= %d", d);
p. printf ("\n A la semana va a ganar= %d", s);
q. printf ("\n A la quincena va a ganar= %d", q);
r. break;
17. case'c':
a. printf("introduce un numero: ");
b. scanf("%f",&n);
c. r=sqrt(n);
d. printf(" el resultado de la raiz cuadrada del numero insertado es: %f",r);
e. }
18. getch();
19. }


Actividad 5. Identifico la compilacin de un programa en C++
Descripcin: Con mi grupo colaborativo realizo un diagrama de flujo que represente el modelo de compilacin en C de los
diferentes procesos por los que pasa un programa, indico el cdigo que toma en cada paso y la extensin del mismo.

Actividad 6. Identifico los formatos de salida en un programa en C++
Descripcin: Con mi grupo colaborativo realizo una tabla donde describo los formatos de salida que toman los argumentos
de acuerdo al carcter de formato utilizado. Utilizo una tabla para clasificarlos.

TIPO DE ARGUMENTO CARCTER DE FORMATO FORMATO DE SALIDA


Actividad 7. Investigo acerca de un entorno integrado de desarrollo para C++ de software libre.
Descripcin: Con mi grupo colaborativo investigo acerca de software para el desarrollo de proyectos en C++, busco un
manual de procedimiento para el usuario, realizo una presentacin en Prezi.com y socializo con el resto del grupo teniendo
en cuenta la explicacin de las diferentes caractersticas y la forma de utilizarlo adecuadamente.
CORPORACIN UNIVERSITARIA REMINGTON
GUIA DE APRENDIZAJE 2
Corporacin Universitaria Remington - Calle 51 51-27 Edificio Coltabaco Torre 1 - Conmutador:(574) 5111000 - Fax: (574)
5137892 Medelln - Colombia

Realizo un programa de ejemplo que expongo a mis compaeros.

Actividad 8. Codifico un programa en C++ teniendo en cuenta la sisntaxis.
Descripcin: Con mi grupo colaborativo realizo la codificacin del programa que corresponde a la siguiente indicacin:

Problema: Vctor tiene la necesidad de realizar operaciones aritmticas bsicas y para agilizar esto, tiene que disear un
programa que permita leer dos valores numricos y calcula primero la suma, despus de la resta, a continuacin el producto
y seguidamente la divisin de ambos valores, escribiendo finalmente el resultado obtenido en cada una de estas
operaciones-

Evidencia de las Actividades. Elaboro un documento con los resultados y el anlisis de las actividades desarrolladas y
lo subo al sitio en el link o enlace Evidencias de aprendizaje desde la opcin subir archivo.


3. Criterios de Evaluacin

1. Participa en las actividades.
2. Conforma y participa en las actividades como equipo colaborativo.
3. Desarrolla un pensamiento sistmico, crtico y prospectivo.
4. Argumenta con precisin criterios profesionales.
5. Consulta y selecciona la informacin relevante.
6. Obtiene la capacidad para resolver las diferencias con base en el dilogo.
7. Utiliza los ambientes de aprendizaje y las TIC, como herramientas que facilita su proceso de formacin.
8. Utiliza los desarrollos tecnolgicos como herramienta de trabajo que coadyuven a la optimizacin de los recursos en
su quehacer profesional.
9. Identifica sus saberes previos.
10. Recoge Evidencias de las actividades para ser enviadas o entregadas al tutor(a).

4. Bibliografa


"C++ para programadores", de Herbert Schildt, ed. McGraw-Hill.

"Curso de Programacin C++", de Fco. Javier Ceballos, ed. ra-ma

"El Lenguaje de Programacin C++", de Bjarne Stroustrup, ed. Addison-Wesley

"Aprenda C++ como si estuviera en Primero", Escuela Superior de Ingenieros, Tecnun

Anlisis y Diseo orientado a objetos de Grady Booch.

La Biblia del Turbo C, Scout Zimmerman Beverly B Zimmerman.

Microsoft C/C++ 7 manual de referencia, William Murria Chrir H. Pappas.

Programacin en C++ para Windows, Anthony Porter.

Programacin y diseo en C++, James P Cohoon, Jack W Davinsson.

Tcnicas estructuradas y orientadas a objetos, Andrew C, Staugaard, Jr Prentice may

Bibliografa en el sitio: https://sites.google.com/site/lenguajedeprogramacioncur/bibliografia


Direccin del sitio: https://sites.google.com/site/lenguajedeprogramacioncur/home

Documentos: lenguaje de Programacion C PRESENTACION COMPLETA.pdf, presentacion C.pdf,

Elaborada por: Dora Alicia Echeverri Morales Fecha: 26/04/2012


Adaptada por:

Fecha:

Vous aimerez peut-être aussi