Sunteți pe pagina 1din 10

Cdigo del juego del Ahorcado

Cdigo Fuente: #include <iostream.h> #include <conio.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #define num_palabras 3 void cosntruye_todo (); void captura_las_palabras (); void muestra_las_palabras (); void exhibe_el_menu (); void elegir_palabra (); void construye_cabeza (); void construye_tronco (); void construye_brazo_izquierdo (); void construye_brazo_derecho (); void construye_pie_izquierdo (); void construye_pie_derecho (); void construye_horca (); int opcion_elegida; int posicion_de_palabra_a_adivinar; int cant_de_palabras=num_palabras; int longitud_de_las_palabras [num_palabras ]; char todas_las_palabras [20][num_palabras ]; char palabra_actual [20]; int longitud_palabra_actual; main() { opcion_elegida= 0; clrscr(); exhibe_el_menu (); getche(); return 0; }

void exhibe_el_menu (void) { clrscr(); do { gotoxy(25,2); printf("PRECIONA EL NUMERO DE LA OPCION QUE DESEE" ); gotoxy(25,3);

printf("----------------------------------- "); gotoxy(25,3.5); printf(""); gotoxy(59,3.5); printf("!"); gotoxy(25,4); printf(" MENU DEL JUEGO EL AHORCADO !" );

gotoxy(25,5); printf(" 1 - INGRESAR LAS PALABRAS ! " );

gotoxy(25,6); printf(" 2 - JUGAR EL AHORCADO gotoxy(25,7); printf(" 3 - MOSTRAR LAS PALABRAS ! " ); ! " );

gotoxy(25,8); printf(" 4 - ABANDONAR EL PROGRAMA ! " );

gotoxy(25,9);

printf("----------------------------------- "); gotoxy(25.5,15); printf("ELIJA LA OPCION QUE DESEE Y PULCE gotoxy(67,15); scanf("%d",&opcion_elegida ); } while (opcion_elegida < 1 || opcion_elegida > 4); switch (opcion_elegida ) { ACEPTAR:" );

case 1: captura_las_palabras (); case 2: elegir_palabra (); case 3: muestra_las_palabras (); case 4: exit(1); } }

void captura_las_palabras (void) { int i,j; clrscr(); for (i=0; i<cant_de_palabras;i++ ) { gotoxy(5,i+10); printf("ESCRIBA LA PALABRA NUMERO %d: " , i+1); gotoxy(35,i+10); cin>>palabra_actual; longitud_palabra_actual = strlen(palabra_actual ); longitud_de_las_palabras [i]=longitud_palabra_actual; for(j=0;j<longitud_palabra_actual; j++ ) todas_las_palabras [j][i]=palabra_actual [j];

} exhibe_el_menu ();

void muestra_las_palabras (void) { int i,j; clrscr(); for (i=0; i<cant_de_palabras;i++ ) { gotoxy(5,i+10); printf("PALABRA No %d" , i+1);

longitud_palabra_actual=longitud_de_las_palabras [i]; for(j=0; j<longitud_palabra_actual;j++ ) { gotoxy(19+j, i+10); printf("%c", todas_las_palabras [j][i]); } } printf("n Pulse una tecla para continuar..." ); getche(); exhibe_el_menu (); }

void elegir_palabra (void) { int longitud_de_palabra_a_adivinar,l; int i,j,sw=0,errores=0,contaP=0; char letra[1],completa [20]; clrscr(); do { gotoxy(10,4); printf("Escriba un numero entre 1 y %d y pulse enter:" , cant_de_palabras ); gotoxy(55,4); scanf("%d",&posicion_de_palabra_a_adivinar ); clrscr(); } while (posicion_de_palabra_a_adivinar < 1 || posicion_de_palabra_a_adivinar > cant_de_palabras ); longitud_de_palabra_a_adivinar=longitud_de_las_palabras [posicio n_de_palabra_a_adivinar -1]; for(i=0;i<longitud_de_palabra_a_adivinar;i++ ) { gotoxy(i+20,3); printf("-"); }

do { i++; gotoxy(10,4); printf("n Escriba Una Letra y Presione <Enter>..." ); cin>>letra; sw=0; for(j=0;j<longitud_de_palabra_a_adivinar; j++ ) { if (todas_las_palabras [j][posicion_de_palabra_a_adivinar -1]==letra[0]) { gotoxy(j+20,3); printf("%c",letra[0]); completa[j]=letra[0]; sw=1; } } contaP=0; for(l=0;l<longitud_de_palabra_a_adivinar; l++ ) { if(completa[l]==todas_las_palabras [l][posicion_de_palabra_a_adi vinar-1]) contaP++; }

if (contaP==longitud_de_palabra_a_adivinar ) { gotoxy(37,10); printf("nGANASTES EL JUEGO....." ); errores=4; i=longitud_de_palabra_a_adivinar; getch(); exhibe_el_menu (); } else { if( sw==0)

errores++;

if(errores== 1) construye_cabeza (); else if(errores== 2) construye_tronco (); else if(errores==3) construye_brazo_derecho (); else if(errores==4) construye_brazo_izquierdo (); else if(errores==5) construye_pie_derecho (); else if(errores==6) construye_pie_izquierdo (); else if(errores==7) { clrscr(); cosntruye_todo (); errores = 7 ; } } }while(i<longitud_de_palabra_a_adivinar|| errores <= 6);

printf("nn Pulse una tecla para continuar..." ); getche(); exhibe_el_menu (); }

void construye_cabeza (void)

{ gotoxy(39,6); printf("|||||"); gotoxy(38,7); printf("| . . |"); gotoxy(39,8); printf("|_-_|");

void construye_tronco (void) { gotoxy(41,9); printf("|"); gotoxy(41,10); printf("|"); gotoxy(41,11); printf("|"); gotoxy(41,12); printf("|"); }

void construye_brazo_derecho (void) { gotoxy(40,9); printf("/"); gotoxy(38,10); printf("/"); }

void construye_brazo_izquierdo (void) { gotoxy(42,9); printf(""); gotoxy(44,10); printf("");

void construye_pie_izquierdo (void) { gotoxy(42,13); printf(""); gotoxy(44,14); printf(""); }

void construye_pie_derecho (void) { gotoxy(40,13); printf("/"); gotoxy(38,14); printf("/"); }

void cosntruye_horca (void) { int i; gotoxy(41,5); printf(":"); gotoxy(41,4); printf(":"); gotoxy(41,3); printf(":"); gotoxy(42,3); printf(":::::::::::::::" ); for(i=3;i<18;i++) { gotoxy(57,i);

printf(":"); } gotoxy(50,i); printf("===============" ); } void cosntruye_todo (void) { gotoxy(37,4); printf("nPERDISTE EL JUEGO....." ); cosntruye_horca (); construye_pie_ derecho(); construye_pie_izquierdo (); construye_brazo_derecho (); construye_brazo_izquierdo (); construye_tronco (); construye_cabeza (); }

Pautas para el Desarrollo de Proyecto de Lenguaje de Programacion I


Para el Desarrollo del Proyecto se deben seguir las siguientes pautas:

1. Formar equipo de 04 o 05 personas. 2. Ubicar Problemtica Real. 3. Para programar y dar solucin a tal problemtica se debe considerar las siguientes herramientas de programacin: a) Estructuras de Decisin (para generar contrasea y crear men de opciones) b) Estructuras Repetitivas. c) Estructuras de Registros. d) Estructuras de Datos (Arreglos Unidimensionales y Bidimensionales). e) Direccionamiento de los elementos en pantalla (Uso de Gotoxy) f) Archivos Observaciones. 1.El programa debe comenzar con la solicitud de una contrasea para iniciar las opciones del men del programa. 2. Se debe procurar tener las opciones de reg istro de datos, bsquedas varias y eliminacin de los mismos. 3. Debe ser una problemtica compleja y original. 4. El da de la Exposicin del Proyecto se evaluaran los siguientes aspectos: -Exposicin Individual (Dominio del tema, Uso de Recurso) -Informe Descriptivo (Incluye las Fases) y Cdigo Fuente del Programa -Publicidad -Logstica Ponderacin 30%

S-ar putea să vă placă și