Sie sind auf Seite 1von 22

UNIVERSIDAD CENTRAL DEL

ECUADOR

FACULTAD DE INGENIERA, CIENCIAS FSICAS Y MATEMTICA


INGENIERIA EN DISEO INDUSTRIAL
PROGRAMACION
ING. WAGNER LUCERO
TRABAJO DE PROGRAMACION
ESTUDIANTES:
ALEXANDER MUZO
FRANCISCO RUBERTO
FRANCISCO ERAZO
LUIS CURIPOMA
ROBERTO URQUIZO
CARLOS LOGROO
CURSO: PRIMERO
PARALELO: PRIMERO

SEMESTRE ABRIL 2015-SEPTIEMBRE 2015

Tabla de contenido
Introduccin ........................................................................................................................................ 4
Objetivo General ................................................................................................................................. 4
Objetivos Especficos ....................................................................................................................... 4
Marco Terico ..................................................................................................................................... 4
Historia De La Programacin ........................................................................................................... 4
Definicin ........................................................................................................................................ 5
Caractersticas ................................................................................................................................. 5
Tendencias De Los Lenguajes De Programacin ............................................................................. 6
Paradigmas En Lenguajes De Programacin ................................................................................... 6
Tendencias Actuales ........................................................................................................................ 7
Clasificacin De Los Lenguajes De Programacin ........................................................................... 7
Clasificacin Segn Nivel De Abstraccin ........................................................................................ 7

Los lenguajes de bajo nivel: ................................................................................................ 7

Los lenguajes de medio nivel: ............................................................................................. 7

Los lenguajes de alto nivel: ................................................................................................. 7

Clasificacin Segn Paradigma ....................................................................................................... 8

Paradigma imperativo: ....................................................................................................... 8

Paradigma declarativo: ...................................................................................................... 8

Paradigma estructurado: .................................................................................................... 8

Paradigma orientado a objetos:.......................................................................................... 8

Paradigma funcional: ......................................................................................................... 8

Paradigma lgico:............................................................................................................... 8

Clasificacin Segn La Forma De Ejecucin ..................................................................................... 9

Lenguajes compilados: ........................................................................................................ 9

Lenguajes interpretados:..................................................................................................... 9

Lenguajes de Programacin ................................................................................................................ 9


Visual Basic ...................................................................................................................................... 9
Definicin: .................................................................................................................................. 9
C++ ................................................................................................................................................. 10

Definicin .................................................................................................................................. 10
Java................................................................................................................................................ 11
Definicin .................................................................................................................................. 11
Entorno de Desarrollo Integrado ....................................................................................................... 11
Ejemplos de IDES: .......................................................................................................................... 11
Conclusiones ..................................................................................................................................... 12
Recomendaciones .............................................................................................................................. 12
Bibliografa ....................................................................................................................................... 13
Anexos............................................................................................................................................... 14
Visual Basic .................................................................................................................................... 14
Desarrollo Del Juego De Ahorcado En Visual Basic ............................................................ 14
Cdigo ....................................................................................................................................... 14
C++ ................................................................................................................................................. 17
Desarrollo Del Juego De Ahorcado En C++ .......................................................................... 17
Cdigo ....................................................................................................................................... 18
Java ................................................................................................................................................ 21
Desarrollo Del Juego De Ahorcado En Java ......................................................................... 21
Cdigo ....................................................................................................................................... 21

Introduccin
Para crear este programa comenzamos realizando el cdigo en Dev-C++ para luego
poderlo transferir a los dems programas apartes. El Dev-C++ es un entorno de desarrollo
integrado (IDE) para programar en lenguaje C/C++. Usa MinGW que es una versin de
GCC (GNU Compiler Collection) como su compilador. Dev-C++ puede adems ser usado
en combinacin con Cygwin y cualquier compilador basado en GCC.
Despus de esto comenzamos a transferir el cdigo creado hacia Java y Visual
Basic, lo cual fue nada sencillo, para esto usaron herramientas en clase. Posteriormente se
aadieron facilidades de programacin genrica, que se sum a los otros dos paradigmas
que ya estaba admitidos (programacin estructurada y la programacin orientada a
objetos).

Objetivo General

Crear un programa capaz de realizar el juego del ahorcado en el entorno de los


programas de Dev-C++, Visual Basic, Java mediante un cdigo.

Objetivos Especficos

Conocer el debido uso de las libreras a usarse.


Aprender a ejecutar ptimamente el programa Dev-C++.
Explicar de forma detallada el programa a realizarse.
Adaptar el juego a los tres lenguajes de programacin.
Realizar todos los programas en equipo.

Marco Terico
Historia De La Programacin
Los primeros lenguajes de programacin surgieron de la idea de Charles Babagge,
la cual se le ocurri a este hombre a mediados del siglo XIX. Era un profesor matemtico
de la universidad de Cambridge e inventor ingls, que al principio del siglo XIX predijo
muchas de las teoras en que se basan los actuales ordenadores. Consista en lo que l
denominaba la maquina analtica, pero que por motivos tcnicos no pudo construirse hasta
mediados del siglo XX. Con l colaboro Ada Lovedby, la cual es considerada como la
primera programadora de la historia, pues realizo programas para aqulla supuesta
mquina de Babagge, en tarjetas perforadas. Como la maquina no llego nunca a
construirse, los programas de Ada, lgicamente, tampoco llegaron a ejecutarse, pero si
suponen un punto de partida de la programacin, sobre todo si observamos que en cuanto
se empez a programar, los programadores utilizaron las tcnicas diseadas por Charles
Babagge, y Ada, que consistan entre otras, en la programacin mediante tarjetas
perforadas. A pesar de ello, Ada ha permanecido como la primera programadora de la
historia. Se dice por tanto que estos dos genios de antao, se adelantaron un siglo a su
poca, lo cual describe la inteligencia de la que se hallaban dotados.
En 1823 el gobierno Britnico lo apoyo para crear el proyecto de una mquina de
diferencias, un dispositivo mecnico para efectuar sumas repetidas. Pero Babagge se

dedic al proyecto de la mquina analtica, abandonando la mquina de diferencias, que se


pudiera programar con tarjetas perforadas, gracias a la creacin de Charles Jacquard
(francs). Este hombre era un fabricante de tejidos y haba creado un telar que poda
reproducir automticamente patrones de tejidos, leyendo la informacin codificada en
patrones de agujeros perforados en tarjetas de papel rgido. Entonces Babagge intento crear
la mquina que se pudiera programar con tarjetas perforadas para efectuar
cualquier clculo con una precisin de 20 dgitos. Pero la tecnologa de la poca no bastaba
para hacer realidad sus ideas. Si bien las ideas de Babagge no llegaron a materializarse de
forma definitiva, su contribucin es decisiva, ya que los ordenadores actuales responden a
un esquema anlogo al de la mquina analtica. En su diseo, la mquina constaba de cinco
unidades bsicas:

Unidad de entrada, para introducir datos e instrucciones.


Memoria, donde se almacenaban datos y resultados intermedios.
Unidad de control, para regular la secuencia de ejecucin de las operaciones.
Unidad Aritmtico-Lgica, que efecta las operaciones.
Unidad de salida, encargada de comunicar al exterior los resultados.

Charles Babbage, conocido como el "padre de la informtica" no pudo completar


en aquella poca la construccin del computador que haba soado, dado que faltaba algo
fundamental: la electrnica. El camino sealado de Babbage, no fue nunca abandonado y
siguindolo, se construyeron los primeros computadores.
Cuando surgi el primer ordenador, el famoso ENIAC (Electronic Numerical
Integrator And Calculator), su programacin se basaba en componentes fsicos, o sea, que
se programaba, cambiando directamente el Hardware de la mquina, exactamente lo que s
hacia era cambiar cables de sitio para conseguir as la programacin de la mquina. La
entrada y salida de datos se realizaba mediante tarjetas perforadas.
Definicin
Un Lenguaje de Programacin es un conjunto de reglas, notaciones, smbolos y/o
caracteres que permiten a un programador poder expresar el procesamiento de datos y
sus estructuras en la computadora. Cada lenguaje posee sus propias sintaxis. Tambin se
puede decir que un programa es un conjunto de rdenes o instrucciones que resuelven un
problema especfico basado en un Lenguaje de Programacin.
Se llama Programacin a la implementacin de un algoritmo en un determinado
lenguaje de programacin, para realizar un programa. Algoritmo es una secuencia no
ambigua, finita y ordenada de instrucciones que han de seguirse para resolver un problema.
El proceso de creacin de software es materia de la ingeniera del software, una de
las ramas propias de la Ingeniera Informtica. Segn Niklaus Wirth un programa est
formado por algoritmos y estructura de datos.
Se han propuesto diversas tcnicas de programacin, cuyo objetivo es mejorar tanto
el proceso de creacin de software como su mantenimiento. Entre ellas se pueden
mencionar las programaciones lineales, estructurada, modular y orientada a objetos.
Caractersticas

Legibilidad: consiste en si el lenguaje tiene una sintaxis sencilla, fciles de leer y


fciles de compilar
Ortogonalidad: permite combinar en una sola instruccin diversas caractersticas
del lenguaje, de esta manera se consiguen programas ms cortos y ms compactos.
Naturalidad
para
la
aplicacin:
consiste
en
el
lenguaje
proporcione herramientas adecuadas para el fin para el que est pensado.
Soporte a la abstraccin: Solucionar tipos de problemas y no problemas concretos.
Debe permitir que el programador pueda crear funciones y procedimientos.
Entorno de programacin: Los lenguajes han de ir acompaados de un entorno
donde programar.
Portabilidad de los programas: Es un lenguaje que permite crear programas que
funcionen en cualquier maquina pertenezca a la plataforma que quiera, distinto
fabricante, etc.

Tendencias De Los Lenguajes De Programacin


El estudio de los lenguajes de programacin agrupa tres intereses diferentes; el del
programador profesional, el del diseador del lenguaje y del Implementador del lenguaje.
Adems, estos tres trabajos han de realizarse dentro de las ligaduras y capacidades
de la organizacin de una computadora y de las limitaciones fundamentales de la propia
"calculabilidad". El trmino "el programador" es un tanto amorfo, en el sentido de que
camufla importantes diferencias entre distintos niveles y aplicaciones de la programacin.
Claramente el programador que ha realizado un curso de doce semanas en COBOL y luego
entra en el campo del procesamiento de datos es diferente del programador que escribe un
compilador en Pascal, o del programador que disea un experimento de inteligencia
artificial en LISP, o del programador que combina sus rutinas de FORTRAN para resolver
un problema de ingeniera complejo, o del programador que desarrolla un sistema
operativo multiprocesador en ADA.
En este trabajo, intentare clarificar estas distinciones tratando diferentes lenguajes
de programacin en el contexto de cada rea de aplicacin diferente. El "diseador del
lenguaje" es tambin un trmino algo nebuloso. Algunos lenguajes (como APL y LISP)
fueron diseados por una sola persona con un concepto nico, mientras que otros
(FORTRAN y COBOL) son el producto de desarrollo de varios aos realizados por
comits de diseo de lenguajes.
Paradigmas En Lenguajes De Programacin
Existen diversos lenguajes y paradigmas de programacin para facilitar la tarea de
programacin en diferentes mbitos. Por ejemplo, la programacin orientada a objetos es
un paradigma dirigido al mejoramiento en la calidad del software por medio de
la observacin de aspectos tales como la correccin, robustez, extensibilidad,
compatibilidad y sobre todo la reusabilidad del software.
La programacin lgica, por su parte, es un paradigma orientado a la expresin de
los problemas en trminos lgicos para su posterior solucin por mtodos de inferencia y
tcnicas lgicas.
En la prctica, cada paradigma de programacin es implementado a travs de
diversos lenguajes. Solo como un ejemplo, la programacin orientada a objetos encuentra
recipientes en lenguajes JAVA, C++, Eiffel, Objetive c, etc.

Tendencias Actuales
La evolucin de los lenguajes de programacin contina, tanto en la industria como
en investigacin. Algunas de las tendencias actuales incluyen:

Aumentar el soporte para la programacin funcional en lenguajes importantes


utilizados comercialmente, incluida la programacin funcional pura para hacer
el cdigo ms fcil de razonar y de paralelizar (tanto en macro como en microniveles).
Construir lenguajes para apoyar la programacin concurrente y distribuida.
Mecanismos para aadir al lenguaje verificacin en cuanto a seguridad y
confiabilidad: chequeo sintctico extendido, control de flujo de informacin,
seguridad de hilos.
Mecanismos alternativos de modularidad: mixins, delegados, aspectos.
Desarrollo de software orientado a componentes.
Mayor nfasis en cuanto a distribucin y movilidad.
Integracin con bases de datos, incluyendo XML y bases de datos relacionales.
Programacin Orientada a Aspectos (AOP).

Clasificacin De Los Lenguajes De Programacin


Los lenguajes de programacin son clasificados de muchas formas, dentro de estas
se encuentran:
Clasificacin Segn Nivel De Abstraccin

Los lenguajes de bajo nivel:


o

Los lenguajes de medio nivel:


o

Son lenguajes de programacin que se acercan al funcionamiento de una


computadora. El lenguaje de ms bajo nivel es, por excelencia, el cdigo
mquina. A ste le sigue el lenguaje ensamblador, ya que al programar en
ensamblador se trabajan con los registros de memoria de la computadora de
forma directa.

Hay lenguajes de programacin que son considerados por algunos expertos


como lenguajes de medio nivel (como es el caso del lenguaje C) al tener
ciertas caractersticas que los acercan a los lenguajes de bajo nivel pero
teniendo, al mismo tiempo, ciertas cualidades que lo hacen un lenguaje ms
cercano al humano y, por tanto, de alto nivel.

Los lenguajes de alto nivel:


o

Los lenguajes de alto nivel son normalmente fciles de aprender porque


estn formados por elementos de lenguajes naturales, como el ingls.
o En BASIC, el lenguaje de alto nivel ms conocido, los comandos como "IF
CONTADOR = 10 THEN STOP" pueden utilizarse para pedir a la
computadora que pare si CONTADOR es igual a 10. Por desgracia para
muchas personas esta forma de trabajar es un poco frustrante, dado que a
pesar de que las computadoras parecen comprender un lenguaje natural, lo
hacen en realidad de una forma rgida y sistemtica.

Clasificacin Segn Paradigma

Paradigma imperativo:
o

Paradigma declarativo:
o

La programacin orientada a objetos, intenta simular el mundo real a travs


del significado de objetos que contiene caractersticas y funciones. Los
lenguajes orientados a objetos se clasifican como lenguajes de quinta
generacin.

Paradigma funcional:
o

La programacin estructurada se basa en una metodologa de desarrollo de


programas llamada refinamientos sucesivos: Se plantea una operacin como
un todo y se divide en segmentos ms sencillos o de menor complejidad.
Una vez terminado todos los segmentos del programa, se procede a unificar
las aplicaciones realizadas por el pool de programadores.

Paradigma orientado a objetos:


o

No se basa en el cmo se hace algo (cmo se logra un objetivo paso a paso),


sino que describe (declara) cmo es algo. En otras palabras, se enfoca en
describir las propiedades de la solucin buscada, dejando indeterminado
el algoritmo (conjunto de instrucciones) usado para encontrar esa solucin.
Es ms complicado de implementar que el paradigma imperativo, tiene
desventajas en la eficiencia, pero ventajas en la solucin de determinados
problemas.

Paradigma estructurado:
o

Describe la programacin como una secuencia instrucciones o comandos


que cambian el estado de un programa. El cdigo mquina en general est
basado en el paradigma imperativo. Su contrario es el paradigma
declarativo. En este paradigma se incluye el paradigma procedimental
(procedural) entre otros.

Este paradigma concibe a la computacin como la evaluacin de


funciones matemticas y evita declarar y cambiar datos. En otras palabras,
hace hincapi en la aplicacin de las funciones y composicin entre ellas,
ms que en los cambios de estados y la ejecucin secuencial de comandos
(como lo hace el paradigma procedimental). Permite resolver ciertos
problemas de forma elegante y los lenguajes puramente funcionales evitan
los efectos secundarios comunes en otro tipo de programaciones.

Paradigma lgico:
o

Se basa en la definicin de reglas lgicas para luego, a travs de


un motor de inferencias lgicas, responder preguntas planteadas al sistema y
as resolver los problemas.

Clasificacin Segn La Forma De Ejecucin

Lenguajes compilados:
o

Los compiladores son aquellos cuya funcin es traducir un programa escrito


en un determinado lenguaje a un idioma que la computadora entienda
(lenguaje mquina con cdigo binario).
o Al usar un lenguaje compilado (como lo son los lenguajes del popular
Visual Studio de Microsoft), el programa desarrollado nunca se ejecuta
mientras haya errores, sino hasta que luego de haber compilado el
programa, ya no aparecen errores en el cdigo.

Lenguajes interpretados:
o

Se puede tambin utilizar una alternativa diferente de los compiladores para


traducir lenguajes de alto nivel. En vez de traducir el programa fuente y
grabar en forma permanente el cdigo objeto que se produce durante la
corrida de compilacin para utilizarlo en una corrida de produccin futura,
el programador slo carga el programa fuente en la computadora junto con
los datos que se van a procesar. A continuacin, un programa intrprete,
almacenado en el sistema operativo del disco, o incluido de manera
permanente dentro de la mquina, convierte cada proposicin del programa
fuente en lenguaje de mquina conforme vaya siendo necesario durante
el proceso de los datos. No se graba el cdigo objeto para utilizarlo
posteriormente.

Lenguajes de Programacin
Visual Basic
Definicin:
El lenguaje de programacin Visual Basic es uno de los lenguajes de programacin
que utiliza una interfaz visual es decir que nos permite programar en un entorno grfico,
nos permite realizar un gran nmero de tareas sin escribir cdigo, simplemente realizando
operaciones con el ratn sobre la pantalla de la computadora.
Este lenguaje de programacin es uno de los que ms inters despiertan entre los
programadores. Porque este lenguaje de programacin, el Visual Basic, le facilita la
realizacin de tareas complejas en poco tiempo y a los que estn comenzado a programar
con Visual Basic ven como son capaces de realizar pequeos programas al poco tiempo de
haber comenzado a estudiar este lenguaje de programacin.
El Visual Basic es un lenguaje de programacin que proviene del BASIC. La
primera versin de este lenguaje de programacin Visual Basic fue presentada en el ao
1991. La intencin de este primer programa era simplificar la programacin utilizando un
entorno de trabajo claro que permitiera crear interfaces grficas facilitando as la
programacin.
Las sintaxis que utiliza este lenguaje de programacin proviene del conocido
BASIC, pero completada con comandos y cdigos de otros lenguajes ms modernos. Este

lenguaje de programacin Visual Basic tiene un apartado dedicado a la Programacin


Orientada a Objetos.
Es un lenguaje muy apropiado para el manejo de bases de datos. Muchas empresas
lo utilizan para la gestin de sus bases de datos porque su utilizacin es sencilla y abundan
los programadores de este lenguaje.
De este lenguaje de programacin han surgidos algunos derivados como: El
VBScript es un lenguaje predeterminado para el Active Server Pages (ASP) que es un
lenguaje de programacin web. O el Visual Basic.NET que es un lenguaje de similares
caractersticas a las del C#.

C++
Definicin
C
es
un lenguaje de programacin de
propsito
general
que
ofrece economa sintctica, control de flujo y estructuras sencillas y un buen conjunto de
operadores. No es un lenguaje de muy alto nivel y ms bien un lenguaje pequeo, sencillo
y no est especializado en ningn tipo de aplicacin. Esto lo hace un lenguaje potente, con
un campo de aplicacin ilimitado y sobre todo, se aprende rpidamente. En poco tiempo,
un programador puede utilizar la totalidad del lenguaje.
Este lenguaje ha sido estrechamente ligado al sistema operativo UNIX, puesto que
fueron desarrollados conjuntamente. Sin embargo, este lenguaje no est ligado a
ningn sistema operativo ni a ninguna mquina concreta. Se le suele llamar lenguaje de
programacin de sistemas debido a su utilidad para escribir compiladores y sistemas
operativos, aunque de igual forma se puede desarrollar cualquier tipo de aplicacin.
La base del C proviene del BCPL, escrito por Martin Richards, y del B escrito por
Ken Thompson en 1970 para el primer sistema UNIX en un DEC PDP-7. Estos son
lenguajes sin tipos, al contrario que el C que proporciona varios tipos de datos. Los tipos
que ofrece son caracteres, nmeros enteros y en coma flotante, de varios tamaos. Adems
se pueden crear tipos derivados mediante la utilizacin de punteros, vectores, registros y
uniones. El primer compilador de C fue escrito por Dennis Ritchie para un DEC PDP-11 y
escribi el propio sistema operativo en Introduccin al lenguaje C.
La base del C proviene del BCPL, escrito por Martin Richards, y del B escrito por
Ken Thompson en 1970 para el primer sistema UNIX en un DEC PDP-7. Estos son
lenguajes sin tipos, al contrario que el C que proporciona varios tipos de datos. Los tipos
que ofrece son caracteres, nmeros enteros y en coma flotante, de varios tamaos. Adems
se pueden crear tipos derivados mediante la utilizacin de punteros, vectores, registros y
uniones. El primer compilador de C fue escrito por Dennis Ritchie para un DEC PDP-11 y
escribi el propio sistema operativo en C.

10

Java
Definicin
Es un lenguaje de programacin de propsito general, concurrente, orientado a
objetos que fue diseado especficamente para tener tan pocas dependencias de
implementacin como fuera posible. Su intencin es permitir que los desarrolladores de
aplicaciones escriban el programa una vez y lo ejecuten en cualquier dispositivo (conocido
en ingls como WORA, o "write once, run anywhere"), lo que quiere decir que
el cdigo que es ejecutado en una plataforma no tiene que ser recompilado para correr en
otra. Java es, a partir de 2012, uno de los lenguajes de programacin ms populares en uso,
particularmente para aplicaciones de cliente-servidor de web, con unos 10 millones de
usuarios reportados.1 2
El lenguaje de programacin Java fue originalmente desarrollado por James
Gosling de Sun Microsystems (la cual fue adquirida por la compaa Oracle) y publicado
en 1995 como un componente fundamental de la plataforma Java de Sun Microsystems.
Su sintaxis deriva en gran medida de C y C++, pero tiene menos utilidades de bajo
nivel que cualquiera de ellos. Las aplicaciones de Java son generalmente
compiladas a bytecode (clase Java) que puede ejecutarse en cualquier mquina virtual
Java (JVM) sin importar la arquitectura de la computadora subyacente.
La compaa Sun desarroll la implementacin de referencia original para
los compiladores de Java, mquinas virtuales, y libreras de clases en 1991 y las public
por primera vez en 1995. A partir de mayo de 2007, en cumplimiento con las
especificaciones del Proceso de la Comunidad Java, Sun volvi a licenciar la mayora de
sus tecnologas de Java bajo la Licencia Pblica General de GNU. Otros tambin han
desarrollado implementaciones alternas a estas tecnologas de Sun, tales como
el Compilador de Java de GNU y el GNU Classpath.
Entorno de Desarrollo Integrado
Entorno de Desarrollo Integrado (en ingls Integrated Development Environment
'IDE'): Es un programa compuesto por un conjunto de herramientas para un programador.
Estos IDE son programas que sirven para programar, ya sea en un lenguaje de
programacin o en varios lenguajes. Los IDE que permiten crear programas en muchos
lenguajes de programacin permiten usar un solo programa para trabajar en varios
lenguajes de programacin, es decir no limitan al programador.

Ejemplos de IDES:

Gambas (lenguaje derivado de BASIC),


Eclipse (lenguaje Java),
Kdevelop (varios lenguajes),
Netbeans (varios lenguajes: java, php , C/C++),
Visual Studio (varios lenguajes: C, C++, C#, Visual Basic, ASP, Javascript)

11

Conclusiones

Se concluye que el programa realizado pudo ser un xito en los tres lenguajes de
programacin.
Dicho programa sirve como medio de ocio y de entretenimiento de una manera
interactiva y puede ser mejorable.
Durante el proceso de estructuracin e investigacin, se obtuvo el conocimiento d
ms tipos de funciones, libreras t modos de alcanzar los objetivos al finalizar el
programa.
El propsito de este trabajo fue emplear todas las herramientas que nuestro profesor
nos indico para desarrollar un programa que contenga todo lo aprendido el cual fue
un xito

Recomendaciones

Se recomienda el mayor uso de libreras posibles que permitan la utilizacin de


ms funciones.
Si no entiende algn paso puede mirar el video o las diapositivas que elaboramos.
Este documento es para aquellas personas que les guste la programacin y deseen
aprender un poco mas de programacin con conceptos fundamentales.

12

Bibliografa

http://bookboon.com/es/an-introduction-to-java-programming-3-ebook
http://artemisa.unicauca.edu.co/~nediaz/LabII/practica07.htm
Python
OReilly Atlas
Javascript
Haskell

13

Anexos
Visual Basic
Desarrollo Del Juego De Ahorcado En Visual Basic
Al momento de correr el programa nos sale un men de opciones donde se puede
jugar contra la maquina o contra otro jugador, las instrucciones del juego y la salida. Ya
escogida una opcin del juego en este caso la opcin uno el computador nos enva un
mensaje de bienvenida al juego e inicializacin del juego, una vez desarrollado esto el
computador elige una palabra aleatoriamente, ingresamos una letra y el computador nos va
diciendo el nmero de aciertos y el nmero de oportunidades restantes para jugar , si
acertamos todas las letras nos enva un mensaje que dice felicidades has ganado , si e caso
nos que damos sin oportunidades en la pantalla de Excel se podr observar la figura del
mueco ahorcado ,la opcin 2 nos permite jugar contra otro oponente Si te quedas sin
oportunidades restantes nos sale un mensaje en el cual dice has perdido y con la palabra
correcta que debamos adivinar Elegida la opcin 3 nos sale un mensaje con todas las
instrucciones del juego si elegimos la opcin cuatro nos permite salir del juego.
Cdigo
Sub Macro1()
'
' Macro1 Macro
'
Dim opciob As Integer
opcionb = 0
MsgBox ("Juego del Ahorcado de Palabras")
MsgBox ("
Menu principal" & vbCrLf & "Seleccione una opcin:")
While (opcionb < 4)
Dim acierto, repeticionletra, letra(300) As String
Dim i, j, k, correcto, opcion, ultimo, error, jugador As Integer
jugador = InputBox("(1) Jugador 1 vs. Computador" & vbCrLf & "(2) Jugador 1 vs. Jugador 2" & vbCrLf & "(3)
Instrucciones de juego" & vbCrLf & "(4) Salir")
While (jugador < 2)
If (jugador = 1 Or jugador = 2) Then
If (jugador = 1) Then
MsgBox ("Jugador 1 vs.Computador")
opcion = CInt(Int((11 * Rnd()) + 0))
Select Case (opcion)
Case 0:
letra(0) = "e"
letra(1) = "l"
letra(2) = "e"
letra(3) = "c"
letra(4) = "t"
letra(5) = "r"
letra(6) = "o"
letra(7) = "d"
letra(8) = "o"
letra(9) = "m"
letra(10) = "e"
letra(11) = "s"
letra(12) = "t"
letra(13) = "i"
letra(14) = "c"
letra(15) = "o"
ultimo = 16
Case 1:
letra(0) = "j"
letra(1) = "u"
letra(2) = "g"
letra(3) = "a"
letra(4) = "r"
ultimo = 5
Case 2:
letra(0) = "Z"
letra(1) = "o"

14

letra(2) = "r"
letra(3) = "r"
letra(4) = "o"
ultimo = 5
Case 3:
letra(0) = "p"
letra(1) = "r"
letra(2) = "o"
letra(3) = "g"
letra(4) = "r"
letra(5) = "a"
letra(6) = "m"
letra(7) = "a"
letra(8) = "c"
letra(9) = "i"
letra(10) = "o"
letra(11) = "n"
ultimo = 12
Case 4:
letra(0) = "a"
letra(1) = "s"
letra(2) = "t"
letra(3) = "r"
letra(4) = "o"
letra(5) = "n"
letra(6) = "a"
letra(7) = "u"
letra(8) = "t"
letra(9) = "a"
ultimo = 10
Case 5:
letra(0) = "c"
letra(1) = "o"
letra(2) = "l"
letra(3) = "e"
letra(4) = "g"
letra(5) = "i"
letra(6) = "a"
letra(7) = "l"
ultimo = 8
Case 6:
letra(0) = "c"
letra(1) = "o"
letra(2) = "m"
letra(3) = "p"
letra(4) = "u"
letra(5) = "t"
letra(6) = "a"
letra(7) = "d"
letra(8) = "o"
letra(9) = "r"
letra(10) = "a"
ultimo = 11
Case 7:
letra(0) = "a"
letra(1) = "r"
letra(2) = "t"
letra(3) = "e"
letra(4) = "f"
letra(5) = "a"
letra(6) = "c"
letra(7) = "t"
letra(8) = "o"
ultimo = 9
Case 8:
letra(0) = "c"
letra(1) = "a"
letra(2) = "n"
letra(3) = "d"
letra(4) = "e"
letra(5) = "l"
letra(6) = "a"
letra(7) = "b"
letra(8) = "r"
letra(9) = "o"
ultimo = 10
Case 9:
letra(0) = "e"
letra(1) = "s"

15

letra(2) = "t"
letra(3) = "u"
letra(4) = "d"
letra(5) = "i"
letra(6) = "a"
letra(7) = "n"
letra(8) = "t"
letra(9) = "e"
ultimo = 10
Case 10:
letra(0) = "p"
letra(1) = "r"
letra(2) = "e"
letra(3) = "f"
letra(4) = "e"
letra(5) = "c"
letra(6) = "t"
letra(7) = "u"
letra(8) = "r"
letra(9) = "a"
ultimo = 10
Case 11:
letra(0) = "b"
letra(1) = "i"
letra(2) = "b"
letra(3) = "l"
letra(4) = "i"
letra(5) = "o"
letra(6) = "t"
letra(7) = "e"
letra(8) = "c"
letra(9) = "a"
ultimo = 10
End Select
opcionb = -1
jugador = 5
Else
If (jugador = 2) Then
ultimo = InputBox("ingrese cuantas letras tiene la palabra")
For k = 0 To ultimo - 1
letra(i) = InputBox("ingrese la " & (k + 1) & " letra con comillas")
k=k+1
Next k
ultimo = ultimo + 1
End If
End If
End If
acierto = ultimo
correcto = ultimo
i=0
Worksheets("Hoja1").Cells(19, 2).Value = ("")
Worksheets("Hoja1").Cells(18, 2).Value = ("")
Worksheets("Hoja1").Cells(17, 2).Value = ("")
Worksheets("Hoja1").Cells(16, 2).Value = ("")
Worksheets("Hoja1").Cells(15, 2).Value = ("")
Worksheets("Hoja1").Cells(14, 2).Value = ("")
Worksheets("Hoja1").Cells(14, 3).Value = ("=")
Worksheets("Hoja1").Cells(14, 4).Value = ("=")
Worksheets("Hoja1").Cells(14, 5).Value = ("=")
Worksheets("Hoja1").Cells(15, 5).Value = (" ")
While (i < ultimo)
Worksheets("Hoja1").Cells(3, i + 1).Value = ("-")
i=i+1
Wend
j=0
While (j < 7)
acierto = InputBox("Ingrese una letra")
i=0
While (i < ultimo)
If (letra(i) = acierto) Then
Worksheets("Hoja1").Cells(3, i + 1).Value = (letra(i))
correcto = correcto - 1
repeticionletra = acierto
End If
i=i+1
Wend
If (repeticionletra = acierto) Then
j=j-1
error = error - 1

16

End If
If (correcto = 0) Then
MsgBox ("usted a ganado")
j=6
End If
error = error + 1
j=j+1
Select Case (error)
Case 0:
Case 1:
Worksheets("Hoja1").Cells(16, 5).Value = (" ")
Case 2:
Worksheets("Hoja1").Cells(17, 5).Value = (" ")
Worksheets("Hoja1").Cells(18, 5).Value = ("---+----")
Worksheets("Hoja1").Cells(18, 4).Value = ("
//")
Case 3:
Worksheets("Hoja1").Cells(18, 6).Value = ("\\")
Case 4:
Worksheets("Hoja1").Cells(19, 5).Value = (" ")
Worksheets("Hoja1").Cells(20, 4).Value = ("
/")
Case 5:
Worksheets("Hoja1").Cells(20, 6).Value = ("\")
Case 6:
MsgBox ("Perdio")
j=7
End Select
Wend
Wend
If (jugador = 3) Then
MsgBox ("Instrucciones de juego:")
MsgBox ("- Se dibuja en la pantalla una linea por cada letra de la palabra o frase incognita." & vbCrLf & "- Al inicio el
jugador pide una letra. Si la letra se encuentra en la palabra, se anota en la pantalla y en todas las casillas de la misma
letra.Si no esta, sera sumado un error, tienes hasta 6 intentos de error." & vbCrLf & "- El personaje se consta en 6 partes
(cabeza, tronco y extremidades), por este motivo el adivinador tiene 6 posibilidades de fallar." & vbCrLf & "- Gana el
adivinador si descubre la palabra o frase incognita y pierde si comete 6 errores.")
opcionb = -1
Else
If (jugador = 4) Then
opcionb = 4
MsgBox ("Saliendo del juego")
opcionb = 4
End If
End If
Wend
'
End Sub

C++
Desarrollo Del Juego De Ahorcado En C++
Al momento de correr el programa nos sale un men de opciones donde se puede
jugar contra la maquina o contra otro jugador, las instrucciones del juego y la salida. Ya
escogida una opcin del juego en este caso la opcin uno el computador nos enva un
mensaje de bienvenida al juego e inicializacin del juego, una vez desarrollado esto el
computador elige una palabra aleatoriamente, ingresamos una letra y el computador nos va
diciendo el nmero de aciertos y el nmero de oportunidades restantes para jugar , si
acertamos todas las letras nos enva un mensaje que dice felicidades has ganado , si e caso
perdemos nos sale un mensaje que dice Perdiste ,la opcin 2 nos permite jugar contra
otro oponente Si te quedas sin oportunidades restantes nos sale un mensaje en el cual dice
has perdido y con la palabra correcta que debamos adivinar Elegida la opcin 3 nos sale
un mensaje con todas las instrucciones del juego si elegimos la opcin cuatro nos permite
salir del juego.

17

Cdigo

//Libreras
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <iostream>
#include <time.h>
#include <cstdlib>
using namespace std;
//Inicio del Main
int main(int argc, char *argv[])
{
int opcionb=0;
do
{
//Declaracin de variables
char palabraadivinar[60], letrarep[100], lineas[100];
char letra;
int longitud = 0, repetido = 0, gano = 0, i = 0, j = 0, inicial = 0, acertado = 0, temp = 0, oportunidades = 7,
diccionario=12;
int aleatoria, opcion=0, random;
//Comienzo del juego
cout << "\tJuego del Ahorcado de Palabras\n\n";
system("cls");
//Men de opciones
cout << "\t\tMenu principal\n\nSeleccione una opcion\n\n";
cout << "\n\n(1) Jugador 1 vs. Computador\n\n(2) Jugador 1 vs. Jugador 2\n\n(3) Instrucciones de juego\n\n(4) Salir\n\n";
cin >> opcion;
if(opcion==1||opcion==2)
{
if(opcion==1 || opcion==2)
{
switch (opcion)
{
case 1:
//Generacion de palabra aleatoria para jugar contra el computador
system("cls");
printf("Jugador 1 vs.Computador\n\n");
srand(time(NULL));
random = rand();
aleatoria = 3 + rand() % (diccionario - 2);
switch (aleatoria)
{
case 1:
strcpy(palabraadivinar, "electrodomestico");
break;
case 2:
strcpy(palabraadivinar, "jugar");
break;
case 3:
strcpy(palabraadivinar, "zorro");
break;
case 4:
strcpy(palabraadivinar, "programacion");
break;
case 5:
strcpy(palabraadivinar, "astronauta");
break;
case 6:
strcpy(palabraadivinar, "colegial");
break;
case 7:
strcpy(palabraadivinar, "computadora");
break;
case 8:
strcpy(palabraadivinar, "artefacto");
break;
case 9:
strcpy(palabraadivinar, "candelabro");
break;
case 10:
strcpy(palabraadivinar, "estudiante");
break;
case 11:
strcpy(palabraadivinar, "prefectura");
break;

18

case 12:
strcpy(palabraadivinar, "biblioteca");
break;
}
system("PAUSE");
opcionb=-1;
break;
case 2:
//Escribir palabra (jugador1) para jugar contra el jugador2
system("cls");
printf("Jugador 1 vs. Jugador 2\n\n");
cout << "Introduzca la palabra a adivinar: \n\n";
cin >> palabraadivinar;
system("cls");
system("PAUSE");
opcionb=-1;
break;
}
letrarep[0] = ' ';
letrarep[1] = '\0';
do
{
//Recorrido para mostrar en pantalla las lineas de las letras que se deben adivinar
system("cls");
temp = 0;
if (inicial == 0)
{
for (i = 0; i<strlen(palabraadivinar); i++)
{
if (palabraadivinar[i] == ' ')
{
lineas[i] = ' ';
longitud++;
}
else
{
lineas[i] = '-';
longitud++;
}
}
}
inicial = 1;
lineas[longitud] = '\0';
//Recorrido para comprobrar letras repetidas
for (i = 0; i<strlen(letrarep); i++)
{
if (letrarep[i] == letra)
{
repetido = 1;
break;
}
else
{
repetido = 0;
}
}
//Recorrido si las letras no estan repetidas y sumar numero de letras acertadas
if (repetido == 0)
{
for (i = 0; i<strlen(palabraadivinar); i++)
{
if (palabraadivinar[i] == letra)
{
lineas[i] = letra;
acertado++;
temp = 1;
}
}
}
cout << "\n";
//condicion para restar oportunidades
if (repetido == 0)
{
if (temp == 0)
{
oportunidades = oportunidades - 1;
}
}
cout << "\n";

19

//recorrido para imprimir letras y lineas de la palabra a adivinar


for (i = 0; i<strlen(lineas); i++)
{
cout << lineas[i];
}
cout << "\n";
//condicion de comparacin para ganar
if (strcmp(palabraadivinar, lineas) == 0)
{
gano = 1;
break;
}
//Impresion de informacion de palabras acertadas y oportunidaes restantes
cout << "\nLetras Acertadas: " << acertado;
cout << "\nOportunidades Restantes: " << oportunidades << "\n";
letra = ' ';
letrarep[j] = letra;
j++;
//condicion para perder
if (oportunidades == 0)
{
gano = 0;
break;
}
//solicitud de digitar una letra para jugar
cout << "Introduzca una letra:\n\n";
cin >> letra;
}while (oportunidades > 0);
//condicion para imprimir si ganaste o perdiste
if (gano==1)
{
cout << "\n\n";
cout << "Enhorabuena, has ganado.\n\n";
system("PAUSE");
}
else
{
if (gano==0)
{
cout << "\n\n";
cout << "Has perdido.";
cout << "\nLa palabra era: " << palabraadivinar << "\n\n";
system("PAUSE");
}
}
}
}
if(opcion==3)
{
//Instrucciones
system("cls");
printf("Instrucciones de juego:\n");
printf("\n\n- Se dibuja en la pantalla una linea por cada letra de la palabra o frase incognita.");
printf("\n\n- Al inicio el jugador pide una letra. Si la letra se encuentra en la palabra, se anota en la pantalla y en todas
las casillas de la misma letra.Si no esta, sera sumado un error, tienes hasta 6 intentos de error.");
printf("\n\n- El personaje se consta en 6 partes (cabeza, tronco y extremidades), por este motivo el adivinador tiene 6
posibilidades de fallar.");
printf("\n\n- Gana el adivinador si descubre la palabra o frase incognita y pierde si comete 6 errores.\n\n");
system("PAUSE");
opcionb=-1;
}
else
{
if(opcion==4)
{
//Salir del juego
opcionb=4;
cout << "Saliendo del juego";
cout << "\n\n";
system("PAUSE");
}
}
system("cls");
} while(opcionb<4);
return 0;
}

20

Java
Desarrollo Del Juego De Ahorcado En Java
Al momento de correr el programa nos sale un men de opciones donde se puede
jugar contra la maquina o contra otro jugador, las instrucciones del juego y la salida. Ya
escogida una opcin del juego en este caso la opcin uno el computador nos enva un
mensaje de bienvenida al juego e inicializacin del juego, una vez desarrollado esto el
computador elige una palabra aleatoriamente, ingresamos una letra y el computador nos va
diciendo el nmero de aciertos y el nmero de oportunidades restantes para jugar , si
acertamos todas las letras nos enva un mensaje que dice felicidades has ganado , si e caso
nos que damos sin oportunidades en la pantalla de Excel se podr observar la figura del
mueco ahorcado ,la opcin 2 nos permite jugar contra otro oponente Si te quedas sin
oportunidades restantes nos sale un mensaje en el cual dice has perdido y con la palabra
correcta que debamos adivinar Elegida la opcin 3 nos sale un mensaje con todas las
instrucciones del juego si elegimos la opcin cuatro nos permite salir del juego.
Cdigo
package juegoahorcado;
import java.io.PrintStream;
import java.io.UnsupportedEncodingException;
import java.util.Scanner;
public class JuegoAhorcado
{
public static void main(String[] args) throws UnsupportedEncodingException
{
String[] palabras=
{
"electrodomestico",
"jugar",
"zorro",
"programacion",
"astronauta",
"colegial",
"computadora",
"artefacto",
"candelabro",
"estudiante",
"prefectura",
"biblioteca",
};
String linea, palabra=palabras[(int) (Math.random()*palabras.length)];
int i, n = palabra.length(), turnos =0, aciertos = 0, oportunidades=6;
char letra, caracter, cabeza=' ', cuerpo = ' ', manoIzquierda = ' ', manoDerecha = ' ', pieIzquierdo= ' ', pieDerecho = ' ';
char[] casillas = new char[n];
boolean encontrado;
for (i=0; i<n; i++)
{
casillas[i]= '_';
}
Scanner teclado;
PrintStream out;
if (System.getProperties().get("os.name").equals("Linux") || System.console()==null)
{
teclado=new Scanner(System.in);
out=new PrintStream(System.out);
}
else
{
teclado=new Scanner(System.in,"CP850");
out=new PrintStream(System.out, true, "CP850");
}
do
{
out.println("Oportunidades restantes: " + (oportunidades-turnos));
for (i=0; i<n; i++)
{

21

out.print(" " + casillas[i]);


}
out.println("\nEscriba una letra: ");
do
{
linea = teclado.nextLine();
} while(linea.isEmpty());
letra=linea.charAt(0);
encontrado= false;
for (i=0; i<n; i++)
{
caracter=palabra.charAt(i);
if(Character.toUpperCase(letra)==Character.toUpperCase(caracter))
{
encontrado=true;
if (casillas[i]=='_')
{
casillas[i] = caracter;
aciertos++;
}
}
}
if(!encontrado)
{
turnos++;
out.println("letra no encontrada.");
switch(turnos)
{
case 1 : cabeza = '0'; break;
case 2 : cuerpo = '|'; break;
case 3 : manoDerecha = '/'; break;
case 4 : manoIzquierda = '\\'; break;
case 5 : pieDerecho = '/'; break;
case 6 : pieIzquierdo = '\\'; break;
}
}
out.println(" " + cabeza + " ");
out.println(" " + manoDerecha + "" + cuerpo + "" + manoIzquierda);
out.println(" " + pieDerecho + " " + pieIzquierdo + "\n");
}while(turnos<oportunidades && aciertos<n);
if (aciertos == n)
{
out.println("Felicidades, has ganado");
}
else
{
out.println("Has perdido.");
}
out.println("La palabra secreta es: " + palabra + "\n\n");
}
}

22

Das könnte Ihnen auch gefallen