Académique Documents
Professionnel Documents
Culture Documents
1. Flujos.
Introducción:
Todos los programas realizados a lo largo de esta unidad de aprendizaje, obtienen la información
(datos) necesaria para su ejecución de la entrada estándar de la computadora (teclado) y muestran
el o los resultados de dicha ejecución en la salida estándar de la computadora (pantalla). No
obstante, hay situaciones en las que es necesario que el programa reciba o envié información desde
o hacia un archivo, el cual puede ser almacenado en el disco duro de la computadora. Para hacer
esta tarea posible, el Lenguaje de programación C++ proveé al programador una herramienta eficaz
y sencilla de utilizar llamada Flujos.
Nota: Antes de empezar este apartado es importante que se te recuerde que tienes que realizar,
editar y compilara todos los códigos fuente que se te vayan explicando.
Se le llama flujo de información (stream) a un objeto cuyo trabajo es servir como intermediario entre
el programa y el origen o el destino de la información es por medio de este objeto que el programa
puede leer o escribir información sin importar hacia donde se dirige o el lugar de donde proviene
El Lenguaje de programación C++ define, en su espacio de nombres std ofrece -varias clases de
objetos, mismas que poseen atributos y métodos que permiten escribir en un archivo o leer desde un
archivo. Enseguida se muestran los nombres y una breve descripción de dos de estas clases de
objetos con que cuenta el Lenguaje de programación C++.
a) Clase ofstream
La clase de objetos ofstream es una clase derivada a partir de la clase de objetos llamada ostream.
ofstream se especializa en crear y abrir un archivo y escribir dentro de él, esta clase de objetos
posee varios métodos, uno de los más importantes es el siguiente:
Para poder utilizar el método “Open” es necesario declarar un objeto que pertenezca a la clase de
objetos ofstream, como se muestra enseguida:
ofstream objeto;
Un oobjeto perte
eneciente a la clase de objetos ofstream
o acctúa como intermediarrio entre el programa y
el de
estino de la
a informació
ón, en el ca
aso de un objeto
o creaddo a partir d
de la clase ofstream el destino de
e
la in
nformación es un archhivo que se e almacenará en el miismo directtorio que ell archivo coon extinción
n
.cppp que contie go fuente del programa.
ene el códig
Para
a crear un flujo de infformación hacia
h un arrchivo por m
medio de u
un objeto d
de la clase ostream se
e
debe
en escribir las siguientes líneas de
d código:
obje
eto.open("A
ARCHIVO.doc",ios::app
p);
obje
eto<<" Tu primer arch
hivo"<<endl;
Commo puedes observar por medio o del opera ador punto (.) se invvoca al mé étodo llama ado open()),
perteneciente a un objeto o, como arg gumento de este méttodo se esccribe el nombre del a archivo y suu
exte
ensión en medio
m del operador
o comilla doblle (“”), sepaarado por medio del operador ccoma (,) se e
acceedió al objeeto llamadoo app de la clase de objetos
o llam
mada ios, po
or medio de el operador resolución n
de áámbito (::), es muy importante ac cceder a dicho objeto ya que de esta forma a se creará á un archivoo
llam
mado ARCH HIVO con extensión
e .d
doc (este archivo
a se abrirá con la aplicación Microso oft Word), y
abrirrá el archiv e programa buscará el final del archivo y e
vo creado, el enseguida por medio de objeto y
el operador de e inserción se escribirrá la caden
na de texto : “Tu prime er archivo” (sin la commilla doble)).
Obsserva que para
p escribir dentro de
el archivo con
c extens ión .doc crreado no se e utilizó al objeto cout
peroo si al opera
ador de inserción (<<)).
obje
eto.close();
El m
método clos
se() es invocado por medio del operador punto (.) y su trabajo
o es cerrarr el archivo
o
llam
mado ARCHIVO con ex xtensión .do
oc
El có
ódigo fuentte del progrrama descrrito anteriormente es e
el siguiente::
Como puedes observar, es muy sencillo crear archivos y almacenar información dentro de los
mismos utilizando el Lenguaje de programación C++.
b) Clase fstream
La clase de objetos fstream es una clase derivada a partir de la clase de objetos llamada iostream,
esta clase de objetos se especializa en leer dentro de un archivo abierto para este propósito. Esta
clase de objetos posee varios métodos, uno de los más importantes es el siguiente:
Open void open(const char *, int, int = filebuf::openprot); Permite abrir un archivo, para
lectura.
Para poder utilizar el método “Open” , es necesario declarar un objeto que pertenezca a la clase de
objetos fstream, como se muestra a continuación:
fstream objeto2;
Recuerda que la clase de objetos fstream permite implementar un flujo (stream) para abrir un archivo
y leer dentro el contenido del mimo. Un objeto perteneciente a la clase de objetos fstream actúa
como intermediario entre el programa y el origen de la información, en el caso de un objeto creado a
partir de esta clase fstream el origen de la información es un archivo almacenado en el mismo
directorio que el archivo con extensión .cpp que contiene el código fuente del programa.
Para crear, abrir y leer un archivo por medio de un objeto de la clase fstream se deben escribir las
siguientes líneas de código:
char cadena[81];
objeto2.open("ARCHIVO.doc",ios::in);
Explicacion:
La primera línea e código declara un arreglo de caracteres de tamaño igual a ochenta y uno llamado
cadena, este arreglo de caracteres recibirá y almacenará la información (caracteres) proveniente de
un archivo ya existente.
En la segunda línea de código puedes observar que por medio del operador punto (.) se invoca al
método llamado open(), perteneciente a objeto2, como argumento de este método se escribe el
nombre del archivo y su extensión en medio del operador comilla doble (“”), este es el archivo que se
abrirrá con el objetivo
o de que el programa escrito en Len nguaje C++ + lea su contenido, se eparado por
meddio del operrador coma a (,) se acc
cedió al objeto llamado o in de la cclase de ob ada ios, por
bjetos llama
meddio del operador resolución de ámbito
á (::), es muy im portante accceder a dicho objeto o ya que dee
esta
a forma el archivo
a llam
mado ARCH HIVO con ex xtensión .do
oc se abrirá á en modo de solo lecctura.
Después de qu ue el progra
ama escritoo en Lenguuaje C++ le ea el archivvo es necessario cerrarr el archivo
o,
para
a realizar es
sta acción se
s utiliza al método clo
ose() de la siguiente fo
forma:
obje
eto2.close();
El m
método clos
se() es invocado por medio del operador punto (.) y su trabajo
o es cerrarr el archivo
o
llam
mado ARCHIVO con ex xtensión .do
oc
El có
ódigo fuentte del progrrama descrrito anteriormente es e
el siguiente::
Commo puedes observar, es muy sencillo crearr archivos y almacena ar informacción dentro de estos y
postteriormentee leer esta información
n en el Leng
guaje de prrogramación C++, conn lo cual loss programas s
escrritos en este lenguaje pueden tener otra fueente de de entrada dee informació
ón diferente e al teclado
o
de la
a computad dora.
Ejercicio
o: “AGENDA
A”:
Para
a ejemplific
car lo anteriormente explicado
e se
s hará el programa de una ag genda perssonal, dicha
a
agennda guardaará en un archivo (quee a su vez se
s almacennará en el d
disco duro d
de la compu
utadora conn
exte
ensión .doc)) la siguien
nte informac
ción indicad
da en paso
os:
Nota
a: La realiz zación de esta agend da será co ompartida, es decir, uuna parte sse explicarrá y otra la
a
tend
drás que elaborar tú, por lo que es necesario que sig as realizan ndo, editand
do y compilando cada a
códiigo que se vaya mostrando, rev visa y toma a en cuenta a los 8 passos que see te presen
ntan ya que e
esto
os van a servir de base e para realizar el código fuente, cabe menccionar que la realizació
ón de estoss
pasoos no va a ser conse ecutiva, es decir, no tendrá
t la coontinuidad que se mu uestra a co
ontinuación,
ahorra sí, estos son los pa
asos:.
Paso
o 1. Datos personales
s:
Nombre.
Apellido paterno.
Apellido materno.
Teléfonoo.
Fech
ha de nacim
miento:
Día.
Mes.
Año.
Pasoo 2. La apa
ariencia de
el menú de inicio que se despleg
gará en la p
pantalla de
e la computtadora es el
e
sigu
uiente:
Commo puedes observar el e programaa debe dessplegar en la pantalla de la com
mputadora uun menú de
e
opciiones, con el objetivo de que el usuario del
d program ma escoja la acción q que el prog
grama debe
e
realiizar.
Paso
o 4. Despu ués de que el usuario del program ma ingresee el año de nacimiento
o, el progra
ama volverá
á
a mo
ostrar el meenú de opc
ciones, es decir
d la prim
mera interfacce, de esta
a forma:
Paso o 5. En cas
so de que el
e usuario del
d program ma escoja lla opción BB, el progra
ama debe d
desplegar laa
interrface que se muestrra enseguida. Esta pantalla
p mmostrará el contenido del archivvo llamado o
AGE ENDA.doc. el programma leerá ell contenido del archivoo antes meencionado, este archivvo debe ser
gene erado por el
e programa
a, toda vez que se ejec
cutó la opcción A del m
menú de opciones.
Paso o 6. Despuués de mo ostrar la infformación antes men ncionada y presionar cualquier tecla en la
a
entrada estánd dar, se volverá a mo ostrar la primer interfface, en d
donde se d
despliega e
el menú de e
opciiones, de esta forma:
Pasoo 7. En el caso de qu
ue el usuarrio del prog
grama esco
oja la opció
ón C. El prrograma de
esplegara la
a
sigu
uiente interfface:
Estaa interface indicará
i que el usuarioo decidió salir de la ap
plicación. Y después d
de presiona
ar cualquier
tecla
a desde la entrada
e esttándar de la
a computaddora, el proograma term minara.
Pasoo 8. En el caso
c de qu ue el usuario del progrrama introd
duzca una o
opción que no esté disponible en n
el m
menú de opc ciones, el programa
p de
esplegara ele siguiente
e mensaje e
en la pantallla de la com
mputadora:
En eeste caso el
e usuario del
d program ma deberá presionar ccualquier te
ecla en la e
entrada estándar de la a
commputadora y enseguida a el program
ma volverá a despleggar la prime
er interface
e, así el usu
uario tendrá
á
la po
osibilidad de
d escoger una opciónn nuevamennte.
Rea
alizando la “AgEnDa”…
“ …
Una a realizar la captura de los datos persona
a alternativa ales y la fe
echa de na acimiento ((paso 1) es s
decllarar dos es
structuras, una que almacene los s datos perrsonales, y la otra parra almacena ar los datos
s
referentes a la fecha de nacimiento. Enseguida se muesstra el códig go fuente n necesario ppara que se e
puedda declararr y definir estas dos es
structuras y posteriorm
mente se daará la expliccación del m
mismo:
Explicación:
Postteriormentee, dentro de la fun nción princcipal del pprograma se deberá á declarar un objeto o
perteneciente a la estructtura llamadda ficha, este objeto d
deberá tene
er la capaciidad de alm
macenar los
s
os persona
dato ales y la fecha
f de nacimiento
n necesarioos para la agenda p personal qu ue se estáá
realiizando (indicados en el
e paso 1).
Muy bien, ahora es tu turno para continuar realizando la Agenda personal, por favor realiza la
siguiente actividad, no olvides que se va a retomar el código fuente explicado hasta este momento
de la agenda.
Actividad de aprendizaje 9. “FlUjOs”
Ahora que conoces la forma en que el Lenguaje de programación C++ permite al programador
utilizar las clases de objetos ofstream y fstream para manipular flujos de entrada y salida de
información, realiza la siguiente actividad de aprendizaje, la cual tiene por objetivo que
practiques la declaración de objetos pertenecientes a las clases ofstream y fstream, mismos
que servirán como intermediarios entre un programa escrito en Lenguaje C++ y un archivo
creado y almacenado en el disco duro de la computadora.
Instrucciones:
1. Retoma el código fuente de la agenda personal que se te explicó y añade las
líneas de código necesarias para realizar lo que se indica en los pasos 2, 3 y 4 de
la elaboración de la agenda (observa las imágenes respectivas para que sepas de
que se está hablando).
2 Depura y compila el código fuente completo resultante y explica detalladamente en
cada una de las líneas de código el funcionamiento de las mismas.
3 Debes enviar tu archivo hasta que haya sido compilado, es decir que Dev C++ no
te haya marcado error, de lo contrario no se tomará esta actividad como válida. El
archivo que debes subir a la plataforma es el código fuente, es decir el archivo con
extensión .cpp que se realizó.
4 Si tienes problemas para la realización de esta actividad ingresa al Foro 1. “AgEnDa.” y
comparte con tus compañeros tus dudas para que te ayuden a resolverlas o si puedes
apóyalos para que ellos resuelvan los problemas que se les presentan, recuerda que
trabajar en equipo puede ayudarte para aprender mejor, también puedes acudir con tu
asesor(a), el(ella) te apoyará con mucho gusto.
5 Cuando tengas listo tu archivo guárdalo en tu PC y envíalo con tus datos en el
siguiente formato: apellidopaterno_materno_nombre_actividadnumero
Esta actividad tiene un valor de 0 puntos
Foro 1. “AgEnDa.”
Este foro es para que dialogues con tus compañeros y se apoyen en la solución de los
problemas que surjan a lo largo del desarrollo de las actividades de aprendizaje 9 y 10.
Instrucciones:
1. Si tienes alguna duda o problema plantéala en este foro para que los compañeros que
puedan y sepan la respuesta te ayuden en su solución.
2. Por otro lado, si tú conoces la forma de apoyar a alguno de tus compañeros para
resolver algún problema que presente en la realización de su actividad, apóyalo para
que pueda seguir avanzando en la construcción de su conocimiento, recuerda que las
respuestas y ayuda que des deben ser siempre de manera respetuosa.
3. Si hay alguna cuestión que nadie sepa, puedes acudir a tu asesor, él te va a orientar para
lograr tu cometido.
4. Es muy importante mencionarte que debes esperar a que tu asesor abra el foro,
después de que él lo haga puedes empezar la actividad, si alguien participa fuera de la
apertura del asesor no se tomará en cuenta la participación.
5. La participación en este foro será evaluada por tu asesor.
Esta
a actividad tiene un va
alor de 4 puntos
Explicació n:
Para dar ssolución a las necesidades planteadas en n
los pasos 7 y 8 se propone decclarar el ca aso C (case e
'C':) y el caso o default (d
default:). En el primerro caso (ca
ase C:) se invoca a la a función syystem(“cls”)
cuyo o trabajo es limpiar la
a pantalla de
d la comp putadora, ees decir borrrar el texto
o que prevviamente se e
imprrimió en la salida está
ándar. Ense eguida se muestra
m en la pantalla de la comp putadora la
a cadena de e
caraacteres “Deecidiste salir”, por med
dio del objeto cout y su
u operadorr de incisiónn (cour <<). Por último
o
se eescribió la sentencia
s de
d control break;
b cuyo
o trabajo e
es “romper”” la ejecucióón de la seentencia dee
conttrol switch y terminar así
a la ejecución del pro ograma.
En e
el segundo caso (defa ault:) se muuestra en la
a pantalla d
de la compputadora la cadena de e caracteres s
“Es una opciónn no valida””, por medio
o del objeto
o cout y su operador dde incisión (cour <<). En seguida a
se invoca a laa función sy ystem (“PA
AUSE”) cuy yo trabajo es realizarr una paussa en la ejeecución de el
grama, has
prog sta que see presione cualquier tecla en la entrada a estándarr de la co omputadora a.
Enseeguida se escribió
e la sentencia
s de
d control goto
g INICIO
O; cuyo trab
bajo es el de redireccio
onar el flujo
o
de eejecución del
d program ma hacia ele comienz zo del prog grama dond de se debió escribir la etiqueta a
INIC
CIO:, Enseg guida se muestra
m un
na sugerencia del lug gar en donnde se deb be escribir la etiquetaa
INIC
CIO y la form
ma de escribirla.:
Actividad de aaprendizaje
e 10. “ Máss FlUjOs”
Ahoora que con noces la fo
orma en qu ue el Lenguuaje de pro ogramació ón C++ perrmite al pro ogramador
utilizar las clases de objjetos ofstreeam y fstrream para manipularr flujos dee entrada y salida de e
ormación, realiza la siguiente actividad de aprenndizaje, laa cual tien
info ne por obbjetivo que
e
pracctiques la declaració
ón de obje
etos perten
necientes aa las clasees ofstream
m y fstream
m, mismoss
que servirán como inte ermediarios entre unn program
ma escrito en Lenguaaje C++ y un archivo o
creaado y almaacenado en n el disco d
duro de la ccomputado ora.
Instrucciones:
9 Cuando tengas listo tu archivo guárdalo en tu PC y envíalo con tus datos en el
siguiente formato: apellidopaterno_materno_nombre_actividadnumero
Esta actividad tiene un valor de 1 puntos
Conclusión.
Se le llama flujo de información a un objeto cuyo trabajo es servir como intermediario entre el
programa y el origen o el destino de la información, es decir, por medio de este objeto es que el
programa puede leer o escribir información desde o hacia un archivo.
Las clases de objetos ofstream y fstream, poseen atributos y métodos que permiten escribir en un
archivo o leer desde un archivo.
2. Liberia winbgim.h
Introducción
Hasta este momento la apariencia de todas las aplicaciones que has desarrollado a lo largo de esta
unidad de aprendizaje, es muy austera, únicamente muestran instrucciones o información en forma
de texto, en la pantalla de la computadora, pero es posible crear gráficos que hagan más interactiva
y atractiva la apariencia de un programa escrito en Lenguaje C++, para hacer esto posible es
necesario instalarle una nueva librería al IDE Dev C++, el nombre de esta librería es winbgim.h.
Aquí termina la introducción.
La librería winbgim.h fue creada originalmente por Konstantin Knizhnik's winbgi shareware y
posteriormente modificada por Mark Richardson y Michael Main, esta librería emula (imita) el
funcionamiento de la librería llamada graphics.h de Borland C++, la cual tiene un costo monetario.
Una de las ventajas de utilizar la librería winbgim.h en lugar de grapics.h es implementar de forma
más sencilla las funciones del mouse, por ejemplo las funcioners: mousex() y mousey(), las cuales
devuelven la coordenada de la posición en x o en y del mouse, otra ventaja de la utilización de esta
librería es que permite al programador crear aplicaciones gráficas en compiladores GNU tales como
el Entorno de desarrollo Integrado Dev C++ de la misma manera como se crean en el compilador
comercial Borland C++.
Como se mencionó anteriormente, para trabajar con la librería winbgim.h es necesario instalarla en
el IDE Dev C++, para realizar esta acción es necesario que descargues el archivo ejecutable llamado
Insta
all Winbgim
m for Dev C++
C (lo enc
cuentras en n el aparta
ado recurso os de la pá ágina principal de esta a
unid
dad de apreendizaje), este
e archivo
o se encarg gara de insstalar y con
nfigurar la liibrería winb
bgim.h, una a
vez que hayas s descargad do el archiv
vo Install Winbgim
W forr Dev C++ observa e el video tuto
orial que see
pressenta ensegguida, el cu
ual te mosttrará la form
ma de insta alar y conffigurar la lib
brería winbgim.h, y la a
form
ma en que se debe ge enerar un proyecto para crear u una aplicacción grafica a en el Devv C++. Pon n
muccha atención a la forma en que se e debe crea ar un proyeecto para ggenerar una a aplicación
n grafica, ya
a
que este mism mo procedim miento lo realizarás al
a momento o de realiza ar los pro ogramas exxpuestos en n
a unidad tem
esta mática.
Da cclic sobre el
e siguiente vínculo parra que veas
s el video tu
utorial: Tuto
orial
Commo pudiste observar, el video tutorial mu uestra que para crea ar un proyyecto que realice una a
apliccación gráffica lo primero que se
e debe haceer es guarddar el archiivo con exttensión .deev que es ele
archhivo que allmacenará la informa ación refere
ente al pro yecto de laa aplicació
ón grafica, así mismo o,
tamb bién obse ervaste que e después de dar clic sobre ell botón “Gu uardar” se abre un a archivo conn
exteensión .cpp éste es el archivo qu ue contendrá el códigoo fuente de
e la aplicacción grafica, el cual ya
a
tienee un progra
ama escrito o en Lengua
aje C++, quue es el Demmo de una aplicación grafica, pa ara observar
estee programa en ejecución es nece esario com
mpilar este ccódigo fuen
nte. El resuultado de reealizar esta
a
tarea es el sigu
uiente:
Explicación:
En la siguientee línea, en el
e código fu
uente se in
nvoco a la ffunción moveto() (a la
a cual se le
e dieron los
s
pará
ámetros 0,0 0), esta función se encarga
e de “mover” el cursor de la ventana gráfica a, es decirr,
posiicionar el cursos
c en los parámeetros indica
ados, los cuuales indica
arán la cooordenada a donde se e
movverá el cursos de la veentana gráfica.
closegraph(), se
s encarga de cerrar la ventana gráfica y a al no existirr ninguna o
otra instrucción escrita
a
es de la llav
ante ve de cierre
e de la función main() el
e programa
a termina.
esultado de
El re e editar, dep
purar y com
mpilar este código
c fuen
nte es el sig
guiente:
Esta
as son algunas de las funciones con
c que cuenta la libre
ería winbgim.h:
Actividad de aaprendizaje
e 11. “Círcculo y cuad
drado”
Ahora que con noces la fo orma en qu ue el Lenguaje de prrogramació ón C++ pe ermite al programador
impllementar fuunciones qu ue manipullan gráficos s a través de la libreería grafica
a winbgim.hh, realiza la
a
sigu
uiente activiidad de aprrendizaje, la cual tienee por objettivo que pra
actiques y analices las funciones s
circle(), moveto
o(), lineto() y rectangle
e() initwindo
ow() y close
egraph().
Instrucciones:
pura y com
1. Edita, dep mpila el cód
digo fuente
e que a continuación
n se te mueestra:
2. Explica el funcionamiento del código
c fuen
nte comple
eto a travéss de comeentarios esccritos en el
e
códigoo fuente.
3.
3
3. Debes enviar
e tu archivo hastta que hay
ya sido commpilado, ess decir que Dev C++ no te hayaa
marcado o error,
4
4. Si tienes
s alguna duuda comuníícate con tu
u asesor paara que te a
ayude a aclararla
5
5. El archiv
vo que debes subir a la plataform
ma es el quee tu asesorr te indicara
a,
6
6. Cuando tengas lis sto tu archivo guárdallo en tu PCC y envíalo con tus datos en e
el siguiente
e
formato:: apellidopa
aterno_mate erno_nombbre_activida
adnumero
Esta
a actividad tiene un va
alor de 4 puntos
Explicacion:
En eel código fuente
f se incluyó la librería graffica llamadda winbghim m.h, a travvés de la ddirectiva de
el
prep
procesador #include<> > enseguida se encue entra la decclaración y definición de la función principa
al
del p
programa (main()), la cual define
e la acción que
q realizarra este prog grama.
Enseeguida se encuentra
e escrita la sentencia
s de control w
while(), la cu
ual permitirrá que se e
ejecuten las
s
sigu
uientes línea
as de códig
go, siempre e y cuando
o no se preesione ningu una tecla e
en la entradda estándar
de la
a computad dora:
La p
primera líneea de códig magen anterior invoca a la funció
go de la im ón mousexx(), la cual devuelve laa
coorrdenada en n x del punttero del mo
ouse (este valor
v siemp
pre será de
e tipo int), e
el valor es a
almacenado
o
en la
a variable lllamada x.
Enseguida se invoca
i a la función lla
amada delaay() la cuall realiza un
n retardo o pausa en lla ejecución
n
del pprograma, el valor de la misma se indica dentro
d de lo
os paréntessis de la funnción y se expresa enn
milissegundos, en
e el ejempplo se realiz
zará un reta
ardo de un milisegund do.
La tercera líne
ea de códig go de la ima
agen anterrior invoca a la funció
ón mouseyy(), la cual devuelve la
a
coorrdenada en n y del puntero del mo ouse(este valor
v siemp
pre será de
e tipo int) e
el valor se a
almacenará
á
en la
a variable lllamada y.
Ense
eguida se invoca nuev
vamente a la función delay(),
d exp
plicada ante
eriormente..
Una a vez que en las va ariables de e tipo ente ero llamaddas x e y se tiene almacenad do el valor
correspondientte a la coorrdenada ac ctual del puntero del m
mouse, se invoca, en el siguiente e renglón, a
unción llamada lineto()), a la cual se le pasa
la fu an como arg gumento la
as variabless x e y, porr lo anteriorr,
estaa función se
s encargará de dibu ujar una lín
nea recta ddesde la pposición actual del cu ursor, en la a
venttana grafica
a (no confundir con el puntero de el mouse).
El re
esultado de
e editar, dep
purar y com
mpilar el cód
digo fuente
e completo e
es el siguie
ente:
Commo puedes observar se dibujo una línea a recta en la ventan na grafica (por defauult siempre
e
commenzará una aplicació mera vez en las coord
ón por prim denadas (00,0), es de
ecir, desde la esquina
a
supe erior izquie
erda de la ventana
v graafica), hastta la coord enada actu
ual del pun
ntero del m
mouse, (esto
o
depe ende de la a posición del punteroo), si llegaras a movver el punteero del moouse mientrras se está
á
ejeccutando la aplicación,
a podrás verr que se dibujará una línea siguiendo la tra
ayectoria que realices
s,
un eejemplo se muestra a continuació
c ón:
1.- ¿
¿Por qué see dibuja una
a línea rectta desde la coordenad
da (0,0), hasta la posicción actual que tenga
el pu
untero del mouse?.
m
2.- ¿
¿qué pasa con
c la posic ción del cursor de la ventana
v gra
afica si desp
pués de que se realizó
ó una línea
tu m
mueves el puntero del mouse.
m
3.- ¿
¿Cómo se modificaría
m el funcionaamiento dell programa anterior si se aumentta el retardo
o o pausa
realiizado por la
a función de a siguiente forma:
elay(): de la
dela
ay(50);
Chat 1. “Dibujando líneas rectas.”
Este chat es para que dialogues en tiempo real con tus compañeros y con tu asesor, en él
puedes compartir las dudas que te hayan surgido al respecto del programa para hacer líneas,
así como en la solución de las tres preguntas planteadas anteriormente, el objetivo del mismo
es que socialices el conocimiento para crear aprendizaje colaborativo:
Instrucciones:
1. Tu asesor indicará el día y hora para la realización de este chat, él estará moderando y
compartiendo contigo y con tus compañeros este espacio sincrónico.
2. Si tienes alguna duda con respecto al funcionamiento del programa para dibujar líneas
rectas con el mouse o con alguna de las tres preguntas arriba planteadas, proponla en
este chat para que los compañeros que puedan y sepan la respuesta te ayuden en su
solución.
3. Por otro lado, si tú conoces la forma de apoyar a alguno de tus compañeros para
resolver algún problema de los antes mencionados, apóyalo para que pueda seguir
avanzando en la construcción de su conocimiento, recuerda que las respuestas que des
deben ser siempre de manera respetuosa.
4. La participación en este chat será evaluada por el asesor.
Como te habrás dado cuenta es muy sencillo realizar un programa escrito en Lenguaje C++ con una
ventana grafica, ahora muy probablemente puedes crear un programa que calcule y grafique los
resultados de un problema de ingeniería.
Si deseas saber más acerca de la librería grafica winbgim.h se te recomienda leer la siguiente nota
informativa, esta contiene la explicación acerca de todas las funciones con que cuenta esta librería y
suficientes ejemplos para ayudarte y profundizar aún más en este tema.
Da clic sobre el siguiente vínculo para que puedas ver la nota: “Librería winbgim”
e 12 “Analiizando y deescribiendoo.”
Actividad de aaprendizaje
Instrrucciones:
1
1. A continnuación se te
t presentaa un código fuente, el rresultado e
en pantalla d
del mismo y un
archivo ejecutable, analiza cuidadosameente cada u uno de elloss y despuéss realiza lo que se te
indica:
El re
esultado de
e editar, dep
purar y com
mpilar este código
c fuen
nte es el sig
guiente:
Descarga el archivo ejecu
utable de es
ste program
ma dando cclic sobre ell siguiente vvínculo: “Cllic”
3 Ya que
q hayas hechoh el análisis de estas
e tres ffases en e
el diseño de el programaa retoma ele
códig
go fuente anterior,
a edítalo, comp pilado, depúúralo y explica detalla
adamente e en cada una a
de la
as líneas de e código el funcionam miento de laas mismass, a través d de comentaarios. Si no
o
hacees la explica
ación de las s líneas de código no se te tomará esta actiividad como o válida.
4 Debees enviar tuu archivo ha asta que ha aya sido coompilado, ees decir que e Dev C+++ no te hayaa
marccado error, de lo contra ario no se tomará
t esta
a actividad como válidda.
5 El arrchivo que debes sub bir a la pla
ataforma ess el código o fuente, ess decir el a
archivo conn
exten
nsión .cpp que
q se reallizó.
6 Cuanndo tengas s listo tu arc
chivo guárd dalo en tu PC y envía alo con tuss datos en el siguiente
e
formato: apellidopaterno_m materno_no ombre_activvidadnume ero
Esta
a actividad tiene un va
alor de 4 puntos
Activvidad integradora 2. “C
Calculando
o y graficand
do”
Ha lllegado el momento
m d poner en práctica los conocim
de mientos quue has apre endido en e esta unidadd
temáática, realiz
za la siguiente activida
ad, la cual tiene
t por ob
bjetivo que desarrolless aplicacion
nes gráficas
s
a tra
avés de lo os métodos s declaradoos y definidos dentro o de la librería gráficca winbgimm.h, para laa
solu
ución de pro oblemas de e ingeniería.
Instrrucciones:
1. Realiz
za un progrrama escrito
o en Lengu
uaje C++ a través de el paradigm
ma de la Pro
ogramaciónn
Orienttada a Obbjetos, capaaz de calc
cular la traayectoria d
de un proyyectil lanza
ado en tiro
o
parabóólico.
2. Las es
specificacio
ones para el
e programaa son las sig
guientes:
a) De
ebe solicitarr al usuarioo, los valore
es para la vvelocidad in
nicial y el á
ángulo de laanzamientoo,
que
e se utilizarran para realizar los cálculos.
b) De
ebe calcularr por lo me enos 30 pun ntos de la ttrayectoria del proyecctil en tiro p
parabólico y
moostrar los re
esultados en la pantalla de la com mputadora.
c) De
ebe graficarr en una ventana gráfic ca los resu ltados obteenidos en el inciso b
3. Depurra y comp pila el código fuentee completo nte y explicca detalladdamente en
o resultan n
cada una
u de las líneas
l de código el fun
ncionamien nto de las m
mismas a tra avés de comentarios.
4. Debess enviar tu
u archivo hasta
h que haya sido compilado, es decir que Dev C++ no tee
haya mmarcado eerror, de lo
o contrario no se tom
mará esta actividad coomo válidaa.
5. El arc
chivo que debes subir a la plattaforma ess el código fuente, ess decir el a
archivo con
n
extens
sión .cpp qu
ue se realiz
zó.
6. Como o una ayud da para la realización
n de este ccódigo fuen nte se te p
presentan la
as fórmulas
s
para calcular
c las
s coordenaddas de un móvil
m en tiro
o parabólico
o:
7. Si tienes problemas para la realización de esta actividad ingresa al foro “Tiro parabólico”,
comparte con tus compañeros tus dudas y si puedes, ayúdalos a resolver las preguntas que
tengan, recuerda que trabajar en equipo puede ayudarte para aprender mejor, también
puedes acudir con tu asesor(a), el(ella) te apoyará con mucho gusto.
8. Cuando tengas listo el archivo guárdalo en tu PC y envíalo con tus datos en el siguiente
formato: aellidopaterno_materno_nombre_actividadnumero
Foro 2. “Tiro parabólico”
Este foro es para que dialogues con tus compañeros y se apoyen a resolver las dudas que
surjan en la realización de la actividad integradora 2, el objetivo de esta actividad es que
realices aprendizaje colaborativo con tus compañeros.
Instrucciones:
1. Si tienes alguna duda o problema plantéala en este foro para que los compañeros que
puedan y sepan la respuesta te ayuden en su solución.
2. Por otro lado, si tú conoces la forma de apoyar a alguno de tus compañeros para
resolver algún problema que presente en la realización de su actividad, apóyalo para
que pueda seguir avanzando en la construcción de su conocimiento, recuerda que las
respuestas que des deben ser siempre de manera respetuosa.
3. Si hay alguna cuestión que nadie sepa, puedes acudir a tu asesor, él además de moderar
este espacio te va a orientar para lograr tu cometido.
4. Tu asesor evaluará las participaciones en las que apoyes a alguno de tus compañeros.
C++ es un lenguaje de programación orientado a objetos, diseñado en el año 1980 por Bjarne
Stroustrup, es una extensión del lenguaje de programación C, donde la Programación
Orientada a Objetos o POO se usa, para diseñar aplicaciones y programas informáticos, este
lenguaje está basado en varias técnicas, incluyendo herencia, abstracción, polimorfismo y
encapsulamiento. En la Programación Orientada a Objetos (POO), un objeto se define como
la unidad que representa y realiza las acciones de un objeto de la vida real.
Una clase de objetos se conceptualiza como una plantilla que sirve para crear múltiples
objetos con características similares.
Una estructura al igual que una clase de objetos representa una plantilla, a partir de la cual se
pueden generar objetos, a las variables que definen las características de los objetos se les
llama miembros en lugar de atributos y estos son públicos por default, por lo anterior cualquier
método o función puede acceder al contenido que almacenan las estructuras e incluso
modificarlo, como consecuencia de esto ya no es necesario declarar y definir métodos para
acceder o modificar a los miembros de una estructura.
El mecanismo de la herencia permite al programador crear una clase, modificando una o más
clases ya existentes, estas modificaciones generalmente consisten en añadir nuevos atributos
y métodos a la clase que se está creand. La clase de la que se parte, recibe el nombre de
clase base, y la nueva clase que se obtiene se denomina clase derivada, está última a su vez
puede ser clase base en un nuevo proceso de herencia.
La amistad (friend) es un mecanismo que probé el Lenguaje C++ por medio del cual el
programador puede otorgar un permiso o privilegio a un método (función) que no pertenezca a
una clase de objetos, con esto, el método tendrá la capacidad de acceder (leer y modificar) a
los atributos de la clase de objetos, aun cuando los atributos de la clase de objetos hayan sido
declarados como privados.
Para finalizar no resta más que Felicitarte por concluir esta unidad de aprendizaje, muchas gracias
por tu esfuerzo y dedicación.