Monografias.com > Computación > Programación
Descargar Imprimir Comentar Ver trabajos relacionados

El ahorcado en lenguaje c++ simple




Enviado por Ismael Santos



  1. Introducción
  2. Marco teórico

Introducción

El siguiente informe sobre el estudio y el uso del lenguaje computacional mas exacto en el programa dev-cpp y la aplicación en la creación del juego el ahorcado.

Marco teórico

Para el siguiente trabajo se usaron los siguientes comandos y sentencias

Las cuales iremos explicando las menos conocidas para su buena comprensión y entendimiento.

#include

#include

#include

#include

#include

#include

#include

#include

//stdio.h, que significa "standard input-output header" (cabecera estandar E/S), es la biblioteca estándar del lenguaje de programación C, el archivo de cabecera que contiene las definiciones de macros, las constantes, las declaraciones de funciones y la definición de tipos usados por varias operaciones estándar de entrada y salida.

stdlib.h (std-lib: standard library o biblioteca estándar)es el archivo de cabecera de la biblioteca estándar de propósito general del lenguaje de programación C.

string.h es un archivo de la Biblioteca estándar del lenguaje de programación C que contiene la definición de macros, constantes, funciones y tipos de utilidad para trabajar con cadenas de caracteres y algunas operaciones de manipulación de memoria

time.h es un archivo de cabecera de la biblioteca estándar del lenguaje de programación C que contiene funciones para manipular y formatear la fecha y hora del sistema.

ctype.h es un archivo de cabecera de la biblioteca estándar del lenguaje de programación C diseñado para operaciones básicas con caracteres. Contiene los prototipos de las funciones y macros para clasificar caracteres.

conio.h es un archivo de encabezado C usado en los antiguos compiladores MS-DOS para crear interfaces de usuario de texto. No se describe en el libro Lenguaje de programación C, y no es parte de la biblioteca estándar de C, ISO C ni es definido por POSIX.

#define TRUE 1

#define FALSE 0

//En C las constantes se declaran con la directiva #define, esto significa que esa constante tendrá el mismo valor a lo largo de todo el programa

void imprimir(int oport, char *wordserr,char *word);

int found_word(char letra);

int menu(void);

int exist_word(char letra);

char *adivina(void)

{

//La palabra reservada void define en C++ el concepto de no existencia o no atribución de un tipo en una variable o declaración. Como tal, puede ser usada para destacar que una función no recibe parámetros.

Enteros: short, int, long, long long

char (también es un entero), wchar_t

char *diccionario[]={"LEON","MANAGUA","CORINTO","PARIS","CANADA",

"PERRO","GATO","CONEJO","ZORRO","CABALLO","PEZ",

"MARTILLO","CLAVO","LAPIZ","MADERA","PEGA","CASA",

"SILLA","MESA","COMEDOR","TABLA","PESAS","BARCO",

"LANCHA","PESCA","ZAPATO","BICICLETA","AUTOBUS",

"TRICICLO","MEXICO","LICENCIA","BEISBOL","FUTBOL",

"BASKET","TENNIS","NATACION","MARATON","ASTEROIDE",

"COMPUTADORA","POLO","HARDWARE","SOFTWARE","IMPRIMIR",

"DISCO","FOTO","MARCO","GRANDEZA","TELEVISION","MOVIMIENTO",

"CAZADOR","BALLENATO","NOCHE","DIA"};

int num;

srand( (unsigned)time( NULL ) );

num=rand()%50;

return(diccionario[num]);

}

char *cadena, palabra[10], letraserror[10],leer[100];

main(){

int i, cont=0,game_over=FALSE, oportunidades, acierto=FALSE, existe;

int opc=0;

char letra;

system("cls");

opc=menu();

do{

system("cls");

switch(opc){

//El switch es solo para hacer una pausa hasta q el usuario ingrese una opción.

Monografias.com

case 1:

//El juego se realizara con un amigo el cual tendrá que escribir la palabra a adivinar.

printf("nnt ESCRIBE LA PALABRA EN MAYUSCULAS : ");

cin>>leer;

cadena=leer;

strcpy(palabra,cadena);

//Función incluida dentro del archivo de cabecera de constantes string.h del lenguaje de programación C.

DescripciónCopia la cadena apuntada por origen en la cadena apuntada por destino.

oportunidades=6;

for(i=0;i/font>

for(i=cont;i>=0;i–) letraserror[i]='';

cont=0;

do{

do{

fflush(stdin);

system("cls");

existe=acierto=FALSE;

imprimir(oportunidades,letraserror,palabra);

printf("nnt Letra?: ");scanf("%c",&letra);

existe=exist_word(letra);

}while(existe);//fin do while

acierto=found_word(letra);

if(acierto){

if(strcmp(palabra,cadena)!=0){game_over=FALSE; continue;}

else game_over=TRUE;

}//fin if.

else {

letraserror[cont++]=letra;

–oportunidades;

}//fin else.

}while(oportunidades>0&&game_over==FALSE);//fin do while.

system("cls");

if(game_over&&oportunidades>4){

imprimir(oportunidades,letraserror,palabra);

printf("ntEXCELENTE TRABAJO!");}//fin if.

else if(game_over&&oportunidades>2){

imprimir(oportunidades,letraserror,palabra);

printf("ntMUY BUEN TRABAJO!");}//fin else if.

else if(game_over){

imprimir(oportunidades,letraserror,palabra);

printf("ntHas ganado!!");}//fin else if.

else { printf("ntAHORCADO, JEJEJE!nnt");

printf("La palabra era…nnt");

for(i=0;i/font>

}//fin else.

game_over=FALSE;

break;

case 2:

//El juego se realizara contra la computadora la cual pondrá
la palabra a adivinar que ya se pre programaron.

Monografias.com

cadena=adivina();

strcpy(palabra,cadena);

oportunidades=6;

for(i=0;i/font>

for(i=cont;i>=0;i–) letraserror[i]='';

cont=0;

do{

do{

fflush(stdin);

system("cls");

existe=acierto=FALSE;

imprimir(oportunidades,letraserror,palabra);

printf("nnt Letra?: ");scanf("%c",&letra);

existe=exist_word(letra);

}while(existe);//fin do while

acierto=found_word(letra);

if(acierto){

if(strcmp(palabra, cadena)!=0){game_over=FALSE; continue;}

else game_over=TRUE;

}//fin if

else {

letraserror[cont++]=letra;

–oportunidades;

}//fin else.

}while(oportunidades>0&&game_over==FALSE);//fin do while.

system("cls");

if(game_over&&oportunidades>4){

imprimir(oportunidades,letraserror,palabra);

printf("ntEXCELENTE TRABAJO!");}//fin if.

else if(game_over&&oportunidades>2){

imprimir(oportunidades,letraserror,palabra);

printf("ntMUY BUEN TRABAJO!");}//fin else if.

else if(game_over){

imprimir(oportunidades,letraserror,palabra);

printf("ntHas ganado!!");}//fin else if.

else { printf("ntAHORCADO, JEJEJE!nnt");

printf("FUCK");

printf("La palabra era…nnt");

for(i=0;i/font>

}//fin else.

game_over=FALSE;

break;//fin case 1.

Monografias.com

case 3: exit(0);break;//fin case 3.

Exit;Salida del programa

}//fin switch.

fflush(stdin);

opc=menu();

}while(opc==1);

}

void imprimir(int oport, char *wordserr,char *word)

{ int i;

printf("nntJuego del Ahorcadonnnt");

//Numerosos lenguajes de programación implementan una
función printf (print formatted), para
mostrar una cadena con formato. Esta, originaria del lenguaje de programación
C, tiene un prototipo similar al siguiente:

Monografias.com

if(oport==5)

printf("nnnn BASE");

if(oport==4)

printf("nnnn COLUMNA");

if(oport==3)

printf("nnnn TORSO");

if(oport==2)

printf("nnnn HORCA");

if(oport==1)

printf("nnnn HOMBRE");

if(oport

}

printf("nnt");

for(i=0;i/font>

printf("nntOportunidades= %dn",oport);

}

int menu(void)

{ int opcion;

printf("nntJuego del Ahorcadonnnt\

nt ELT 230n\

nt1. Jugar con un amigon\

nt2. Jugar con la PCn\

nt3. Salirn\

nt Elegir la opci¢n: ");

scanf("%d",&opcion);

return(opcion);

}

int found_word(char letra)

{

int acierto=FALSE,i;

letra=toupper(letra);

for(i=0;i/font>

if(letra==cadena[i]){

palabra[i]=letra;

acierto=TRUE;}

}

return(acierto);

}

int exist_word(char letra)

{

int existe=FALSE,i;

for(i=0;i/font>

if(letra==letraserror[i]) {

printf("nYa la escribistes!.n");

existe=TRUE;

system("pause");

}

}

return(existe);

}

 

 

 

Autor:

Univ. David Chocanapi

Univ. Fernando Licoña

Univ. Ismael Santos

Monografias.com

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter