0% encontró este documento útil (0 votos)
26 vistas20 páginas

Informe de Programacion El Ahorcado

Cargado por

jesusarturo2712
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
26 vistas20 páginas

Informe de Programacion El Ahorcado

Cargado por

jesusarturo2712
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

República Bolivariana de Venezuela

Ministerio del Poder Popular para la Educación

Instituto Politécnico Universitario

Santiago Mariño

Sede Maracay

Programación en C++,

El juego Del Ahorcado

Estudiantes:

Jesús Peña C.I. 30.556.093

Albanys Duche C.I. 31.117.030

Prof.: Danny Cifuentes


Capítulo 1

Resumen

Resumen

El propósito de este juego es hacerle resaltar y mostrar que nuestro programa


sea lo más apropiado posible, aplicando nuestros conocimientos adquiridos en
cada clase y demostrar nuestras habilidades para programar, en el cual le
presentaremos el Juego del ahorcado, donde consiste en adivinar una palabra, letra
por letra, podemos ver que por cada intento fallido se le restará una vida al
jugador, sin embargo ganará si logra adivinar las letras correspondientes o si logra
descifrar la palabra completa, dando así un propósito de diversión y
entretenimiento a los participantes.

Este juego conllevó a muchos estudios de las librerías correspondientes para


que se realizara correctamente su funcionalidad. Podemos incluir que estos juegos
se relacionan con la programación informática, y ayuda para aumentar el uso de la
programación a gran escala.

Programación en C++, El juego Del Ahorcado, librerías, palabra, letra, jugador,


adivinar

Índice

Introducción

Propósito de este Proyecto


Capítulo 2

Antecedentes

Software a realizar

Bases Teóricas y Conceptuales

Lenguajes de Programación: En términos generales, un lenguaje de


programación es una herramienta que permite desarrollar software o
programas para computadora. Los lenguajes de programación son
empleados para diseñar e implementar programas encargados de definir y
administrar el comportamiento de los dispositivos físicos y lógicos de una
computadora.
Lo anterior se logra mediante la creación e implementación de
algoritmos de precisión que se utilizan como una forma de comunicación
humana con la computadora.

Código binario: El ordenador, en el fondo, sólo entiende un lenguaje


conocido como código binario o código máquina, consistente en ceros y
unos. Es decir, sólo utiliza 0 y 1 para codificar cualquier acción.

Por supuesto, ningún programador usa código binario para expresar un


programa. En realidad hay toda una cantidad de capas de software y
hardware para conseguir que, cuando nosotros tenemos que expresar
programas, no tengamos que pensar en la complejidad de codificar de una
manera tan compleja.

Lenguaje máquina: Es el sistema de códigos interpretable


directamente por un circuito microprogramable, como el microprocesador
de una computadora. Este lenguaje se compone de un conjunto de
instrucciones que determinan acciones que serán realizadas por la
máquina. Y un programa de computadora consiste en una cadena de estas
instrucciones de lenguaje de máquina (más los datos).

Normalmente estas instrucciones son ejecutadas en secuencia, con


eventuales cambios de flujo causados por el propio programa o eventos
externos. El lenguaje máquina es específico de cada máquina o
arquitectura de la máquina, aunque el conjunto de instrucciones
disponibles pueda ser similar entre ellas.

Lenguajes de bajo nivel: Un lenguaje de programación de bajo nivel


es el que proporciona poca o ninguna abstracción del microprocesador de
una computadora. Consecuentemente, su trasladado al lenguaje máquina
es fácil. El término ensamblador (del inglés assembler) se refiere a un
tipo de programa informático encargado de traducir un archivo fuente,
escrito en un lenguaje ensamblador, a un archivo objeto que contiene
código máquina ejecutable directamente por la máquina para la que se ha
generado.
Lenguaje de alto nivel: Los lenguajes de programación de alto nivel
se caracterizan porque su estructura semántica es muy similar a la forma
como escriben los humanos, lo que permite codificar los algoritmos de
manera más natural, en lugar de codificarlos en el lenguaje binario de las
máquinas, o a nivel de lenguaje ensamblador.

El lenguaje C: Es un lenguaje de programación (considerado como


uno de los más importantes en la actualidad) con el cual se desarrollan
tanto aplicaciones como sistemas operativos a la vez que forma la base de
otros lenguajes más actuales como Java, C++ o C#.

El Lenguaje C++: Primero se le conoció como “C con clases”. Luego se


cambió a C++ que significa “incremento de C”, dando a entender que se trata de
una extensión del lenguaje de programación C. C++ es un ejemplo de lenguaje de
programación compilado, multiparadigma, principalmente de tipo imperativo y
orientado a objetos, incluyendo también programación genérica y funcional.

¿Qué es una variable en programación? Una variable es donde se almacenan


y se recuperan los datos de un programa. Así de simple. En programación, la
utilizamos para guardar datos y estados, asignar ciertos valores de variables a
otras, representar valores de expresiones matemáticas y mostrar valores por
pantallas.

¿Qué es un dato? Son empleados para crear y organizar los algoritmos que
todo sistema informático o computacional persigue, los datos son la expresión de
las características puntuales de las entidades sobre las cuales operan dichos
algoritmos. Es decir, son el input inicial, a partir del cual puede procesarse y
componerse la información.

¿Qué son Condicionales? Los condicionales son estructuras que


permiten elegir entre la ejecución de una acción u otra. Son una
condición, como bien indica su nombre, así que podemos pensar en ellos
como si fueran el “si” condicional que usamos dentro de una frase. Por
eso, utilizando la palabra en inglés, podemos expresar un condicional
dentro de un código como IF.

Operadores lógicos: Para crear condiciones, por muy simples que


sean, se necesitan los operadores lógicos. A continuación se van a
explicar de modo que, puedas escribir condiciones ajustadas a lo que
necesites.

 == significa “igual”.
 significa “mayor que”.
 < significa “menor que”.
 != significa “si es distinto”.
 && significa “Y”, la conjunción copulativa.
 || significa “O”, la conjunción adversativa.

Tipos de variables en C++

En Dev C++ podemos usar varios tipos de variables, y cada uno


corresponde a un tamaño máximo de un número, un carácter o incluso una
proposición lógica (verdadero o falso). Cuanto mayor sea el número que
pueda admitir, más espacio en memoria ocupará. A continuación se
explican estas variables:

 int: Para valores tipo números enteros, por ejemplo 520,−250,


999,−2400
 float: Para valores tipo números no enteros, o con decimales, por
ejemplo 5.25, 350.82, -0.8616, 713.32, -0.321.
 char: Para valores tipo carácter. Un carácter es un símbolo, como
los que usamos para escribir, por ejemplo ‘F’, ‘t’, ‘m’, ‘/’, ‘8’. En
este último caso el 8 será considerado como un carácter, y no un
número, debido a que esta entre comillas simples y tiene el tipo de
dato char.
 bool: Para valores de tipo booleanos, es decir verdadero o falso, o
también 0 y 1.
Estructuras Repetitivas: Las estructuras repetitivas se utilizan cuando
se quiere que un conjunto de instrucciones se ejecuten un cierto número
finito de veces, por ejemplo, escribir algo en pantalla cierta cantidad de
veces, mover un objeto de un punto a otro cierta cantidad de pasos, o
hacer una operación matemática cierta cantidad de veces.

FOR (PARA): Esta estructura ejecuta las acciones del cuerpo del bucle
un número especificado de veces, y de modo automático controla el
número de iteraciones o pasos.

WHILE (MIENTRAS): Repite el cuerpo del bucle mientras se cumpla


una determinada condición.

DO WHILE (HACER MIENTRAS): La estructura do while cumple la


misma función que la estructura while. La diferencia está en que la
estructura while comprueba la condición al inicio y repetir lo hace al
final. Es por ello que la estructura do while se ejecuta por lo menos una
vez.

¿Qué es una librería en programación? En este sentido, una librería


es un conjunto de archivos que se utiliza para desarrollar software. Suele
estar compuesta de código y datos, y su fin es ser utilizada por otros
programas de forma totalmente autónoma. Simple y llanamente, es un
archivo importable.

Librerías estáticas: Estas se graban en un programa como ejecutables.


Sirven exclusivamente para esto; después, podemos borrarlas sin
problemas, ya que el programa seguirá funcionando con la función
necesaria.

¿Qué es una libreria dinámica? Una librería dinámica es aquella que


se carga a la hora de arrancar un programa. A diferencia de las bibliotecas
estáticas, las bibliotecas dinámicas utilizan recursos independientes al
ejecutable que las llama.

¿Qué es un Namespace? Es una forma de crear un bloque, y que todas las


funciones que estén dentro del mismo, estén asociadas a ese namespace (o espacio
de nombres), al cual se le asigna un nombre para identificarlo.

Arreglo: Un arreglo es un conjunto de datos, los cuales se almacenan


en memoria de manera y para diferenciar los elementos de un arreglo se
utiliza un índice. En el lenguaje C++, un arreglo es un tipo de dato
compuesto. Los arreglos pueden tener una o varias dimensiones.
Diagrama de Flujo del Programa

Pseudocódigo del Programa

Inicia el Programa

Se Escoge la
palabra

El jugador
escribe una
letra

Si No
Las letras son ¿La letra
El jugador pierde una
reveladas de la está en la
vida
palabra oculta palabra?

No Si
¿Se han
¿Le
revelado
quedan
todas las
vidas al
letras?
jugador?

Si No

Termino el juego, el
Se cierra el Termino el juego, el
jugador ha adivinado la
programa jugador ha perdido
palabra
Proceso ElAhorcado

Definir vidas = 6, opc Como Entero

Definir palabra, pal_oculta, ltr Como Caracter

Definir finDelJuego = false, correcto = false Como Logico

Titulo El Ahorcado;

Color Amarillo sobre negro;

Escribir El Ahorcado;

Escribir Debes adivinar la palabra letra a letra para ganar (no se


puede escribir mas de 1 letra a la vez)

Etiqueta opcion:

Escribir ¿Que palabra quisieras adivinar?

Salto de Párrafo

Escribir Palabra 1

Escribir Palabra 2

Escribir Palabra 3

Salto de Párrafo
Leer opc;

Evaluar (opc){

Opcion 1:

pal_oculta = TRANSMISION; palabra = ___________;

Opcion 2:

pal_oculta = COMPUTADORA; palabra = ___________;

Opcion 3:

pal_oculta = LECHOZA; palabra = _______;

Por Defecto:

Escribir Opcion no valida; Pausa del sistema; Limpiar Pantalla;

ir a Etiqueta opcion;

Mientras (finDelJuego sea Falso)

{ Borra Pantalla

correcto = Falso;
Escribir "Palabra: " Vari

Salto de Párrafo;

Escribir “Vidas: " Escribir vidas;

Escribir Escriba una letra: ;

Leer ltr;

ltr[0] = Mayuscula(ltr[0]);

Si ([Link]ño Mayor que 1)

Entonces Escribir "No se puede ingresar mas de 1 letra a la vez";

Pausa del Sistema;

Si No

Para (Entero a=0; a Menor Que Tamaño pal_oculta; a = a+1)

Entonces Si (ltr[0] Igual a pal_oculta[a])

Entonces palabra[a] = pal_oculta[a]; correcto = Verdadero;

Si (pal_oculta Igual A palabra) Entonces finDelJuego = Verdadero;

Si (correcto Igual a falso)

Entonces vidas = vidas - 1; Escribir "letra incorrecta"; Pausa del


Sistema; correcto = Falso;
Si (vidas Igual a 0) Entonces finDelJuego = Verdadero;

Borrar Pantalla;

Si (pal_oculta Igual a palabra){

Color Celeste sobre Negro;

Escribir “Palabra: " Escribir palabra l;

Escribir "Felicidades, adivinaste la palabra y has ganado el


juego!”}

Si no

{Color del Sistema Rojo);

Escribir “Se termino el juego, no lograstes adivinar la palabra.”;}

Salto de Párrafo;

Pausa del Sistema;

FinProceso

Código Fuente del Programa en C++


#include <iostream>

#include <ctime>

using namespace std;

int vidas = 6, opc;

string palabra, pal_oculta, ltr; /* La variable pal_oculta es la palabra que


tiene que adivinar el jugador,

"ltr" es para las letras escritas por pantalla. */

bool finDelJuego = false, correcto = false; // La variable tipo Bool


decide si el juego ha terminado y si el jugador se ha equivocado.

main (){

system("title El Ahorcado");

system("color 0e");

cout << " El Ahorcado\n" << endl;

cout << "Debes adivinar la palabra letra a letra para ganar\n(no se


puede escribir mas de 1 letra a la vez)" << endl;

opcion: //Este comando hace que el codigo regrese a este punto si


se ingresa una opcion invalida.
cout << "¿Que palabra quisieras adivinar?" << endl;

cout << endl;

cout << "Palabra 1" << endl;

cout << "Palabra 2" << endl;

cout << "Palabra 3" << endl;

cout << endl;

cin >> opc;

switch (opc){ //Selecciona las palabras indicadas por la variable opc


(Opcion).

case 1:

pal_oculta = "TRANSMISION"; palabra = "___________"; break;

case 2:

pal_oculta = "COMPUTADORA"; palabra = "___________"; break;

case 3:

pal_oculta = "LECHOZA"; palabra = "_______"; break;


default:

cout << "Opcion no valida" << endl; system("pause"); system("cls");


goto opcion; break;

//-------------------------------------------------------------------------------------

// A partir de este punto ya empezo el juego

while (finDelJuego == false) //Estas condiciones hacen que el juego


continue hasta que el jugador o la computadora ganan.

{ system("cls"); //Este comando limpia la pantalla cada vez que se


ingresa una letra.

correcto = false;

cout << "Palabra: " << palabra << endl; //Muestra al jugador la
palabra mientras se va completando.

cout << endl;

cout << "Vidas: " << vidas << endl;

cout << "Escriba una letra: ";

cin >> ltr;

ltr[0] = toupper(ltr[0]); //Este comando asegura que la letra sea


mayuscula
if ([Link]() > 1) //Detecta si solo es una letra.

{cout << "No se puede ingresar mas de 1 letra a la vez\n" << endl;

system("pause");

else

for (int a=0; a < pal_oculta.size(); ++a) /*Este Estructura Repetitiva


revisa cada letra de la palabra

hasta que la palabra oculta se revele en


su totalidad*/

{if (ltr[0] == pal_oculta[a])

{palabra[a] = pal_oculta[a]; correcto = true;

if (pal_oculta == palabra) {finDelJuego = true;}

if (correcto == false) /* Si no se detecta una letra dentro de la


palabra oculta se pierde una vida

y si no quedan vidas se termina el juego */

{--vidas; cout << "letra incorrecta\n"; system("pause"); ; correcto =


false;

if (vidas == 0){finDelJuego = true;}


}

//-------------------------------------------------------------------------------------

system("cls");

if (pal_oculta == palabra){ //Una vez salido del bucle detecta si el


jugador gano o perdio.

system("color 0b");

cout << "\nPalabra: " << palabra << endl;

cout << "Felicidades, adivinaste la palabra y has ganado el juego!"


<< endl;}

else

{system("color 0c");

cout << "Se termino el juego, no lograstes adivinar la palabra."<<


endl;}

cout << endl;

system("pause");

}
Capítulo 3

Referencias Bibliográficas

[Link]
mod_resource/content/1/contenido/[Link]

[Link]
[Link]

[Link]

[Link]

[Link]

[Link]

[Link]

[Link]

[Link]

[Link]

[Link]

[Link]

[Link]

[Link]
libro4/41_definicin_de_un_arreglo.html

También podría gustarte