informe

Upload: krliithoz-piiyuyiim

Post on 13-Jan-2016

118 views

Category:

Documents


0 download

DESCRIPTION

informe

TRANSCRIPT

  • 1

    UNIVERSIDAD CENTRAL DEL

    ECUADOR

    FACULTAD DE INGENIERA, CIENCIAS FSICAS Y MATEMTICA

    INGENIERA EN DISEO INDUSTRIAL

    PROGRAMACIN I

    ING. WAGNER LUCERO

    TRABAJO DE PROGRAMACIN

    ESTUDIANTES:

    ALEXANDER MUZO

    FRANCISCO RUBERTO

    FRANCISCO ERAZO

    LUIS CURIPOMA

    ROBERTO URQUIZO

    CARLOS LOGROO

    CURSO: PRIMERO

    PARALELO: PRIMERO

    SEMESTRE ABRIL 2015-SEPTIEMBRE 2015

  • 2

    Tabla de contenido

    Introduccin ........................................................................................................................................ 4

    Objetivo General ................................................................................................................................. 5

    Objetivos Especficos ........................................................................................................................... 5

    Marco Terico ..................................................................................................................................... 6

    Historia De La Programacin ............................................................................................................... 6

    Definicin ............................................................................................................................................ 7

    Caractersticas ..................................................................................................................................... 7

    Paradigmas En Lenguajes De Programacin ....................................................................................... 7

    Tendencias Actuales ............................................................................................................................ 8

    Clasificacin De Los Lenguajes De Programacin ............................................................................... 8

    Clasificacin Segn Nivel De Abstraccin ........................................................................................ 8

    Clasificacin Segn Paradigma ........................................................................................................ 9

    Clasificacin Segn La Forma De Ejecucin .................................................................................. 10

    Lenguajes de Programacin Visual Basic .......................................................................................... 10

    Definicin: ..................................................................................................................................... 10

    C++ ..................................................................................................................................................... 11

    Definicin ...................................................................................................................................... 11

    Java .................................................................................................................................................... 12

    Definicin ...................................................................................................................................... 12

    Entorno de Desarrollo Integrado ...................................................................................................... 12

    Ejemplos de IDES: .............................................................................................................................. 12

    Anexos ............................................................................................................................................... 13

    Visual Basic ........................................................................................................................................ 13

    Desarrollo Del Juego De Ahorcado En Visual Basic ...................................................................... 13

    Cdigo ........................................................................................................................................... 13

    C++ ..................................................................................................................................................... 16

    Desarrollo Del Juego De Ahorcado En C++ ................................................................................... 16

    Cdigo ........................................................................................................................................... 17

    Java .................................................................................................................................................... 21

    Desarrollo Del Juego De Ahorcado En Java .................................................................................. 21

  • 3

    Cdigo ........................................................................................................................................... 21

    Conclusiones ..................................................................................................................................... 23

    Recomendaciones ............................................................................................................................. 23

    Bibliografa ........................................................................................................................................ 24

  • Introduccin

    En la actualidad, el conocimiento de programacin se encuentra fuertemente

    influenciado en la creacin de aplicaciones informticas y videojuegos; este es el proceso en

    el cual una persona desarrolla y crea un programa utilizando alguna herramienta que le

    permita escribir el cdigo (el cual puede estar en uno o varios lenguajes, tales como C++,

    Java y Visual Basic) y de otra que sea capaz de traducir todo ese cdigo, esto es lo que se conoce como compilacin y es necesario para que el cdigo pueda ser ejecutado por la

    plataforma para la cual haya sido creado.

    El ahorcado es uno de los juegos ms conocidos a nivel mundial, consiste en un juego

    de adivinanzas de lpiz y papel para dos o ms jugadores. Un jugador piensa en una palabra,

    frase u oracin y el otro trata de adivinarla por medio de letras, teniendo un nmero limitado

    de oportunidades.

    El objetivo del trabajo es desarrollar un algoritmo para poder jugar El ahorcado en

    diferentes plataformas, para ello utilizamos 3 de los cdigos ms conocidos en la

    programacin, que son C++, Visual Basic y Java.

    Para crear estos programa comenzamos realizando el cdigo en Dev-C++ para luego

    poder transferirlo a los dems programas y lenguajes. Despus de tener una base slida del

    algoritmo en dicho programa, vamos a transferir dicho cdigo creado hacia Java y Visual

    Basic, utilizando herramientas aprendidas en clase, aadiendo facilidades de programacin,

    a lo que se sum otros dos paradigmas que ya estaba admitidos (programacin estructurada

    y la programacin orientada a objetos).

  • 5

    Objetivo General

    Desarrollar los algoritmos necesarios para la creacin del juego del ahorcado en los

    distintos lenguajes de programacin utilizados en clase, que son C++, Visual Basic y Java.

    Objetivos Especficos

    Explicar de forma detallada el programa a realizarse.

    Conocer dar un uso correcto a las libreras en los programas.

    Ejecutar de manera ptima los cdigos en los distintos programas.

    Adaptar el juego a los tres lenguajes de programacin.

  • 6

    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.

  • 7

    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.

    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.

  • 8

    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.

    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 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.

    Los lenguajes de medio nivel:

    o 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.

  • 9

    Clasificacin Segn Paradigma

    Paradigma imperativo:

    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.

    Paradigma declarativo:

    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 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 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 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.

  • 10

    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.

  • 11

    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.

  • 12

    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.12

    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)

  • 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:

  • 14

    letra(0) = "Z"

    letra(1) = "o"

    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

  • 15

    Case 9:

    letra(0) = "e"

    letra(1) = "s"

    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

  • 16

    Wend

    If (repeticionletra = acierto) Then

    j = j - 1

    error = error - 1

    End If

    If (correcto = 0) Then

    MsgBox ("usted a ganado")

    j = 6

    End If

    error = error + 1

    j = j + 1

    Select Case (error)

    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

    #include

    #include

    #include

    #include

    #include

    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

  • 18

    break;

    case 9:

    strcpy(palabraadivinar, "candelabro");

    break;

    case 10:

    strcpy(palabraadivinar, "estudiante");

    break;

    case 11:

    strcpy(palabraadivinar, "prefectura");

    break;

    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 > palabraadivinar;

    system("cls");

    system("PAUSE");

    opcionb=-1;

    break;

    }

    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

  • 19

    for (i = 0; i

  • 20

    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

  • 21

    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.util.Scanner;

    public class JuegoAhorcado

    {

    public static void main(String[] args)

    {

    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

  • 22

    {

    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

  • 23

    Conclusiones

    El cdigo desarrollado, a pesar de tener dificultades en los distintos lenguajes de

    programacin, funcion correctamente en los distintos lenguajes utilizados.

    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 de

    ms tipos de funciones, libreras y modos de alcanzar los objetivos al finalizar el

    programa.

    El propsito de este trabajo fue emplear todas las herramientas proporcionadas por

    el profesor, para desarrollar un programa que contenga todo lo aprendido,

    funcionando as de forma exitosa.

    Recomendaciones

    Se recomienda el uso de libreras que permitan la utilizacin correcta de las

    funciones.

    Si no entiende algn paso puede mirar el video o las diapositivas que fueron

    elaboradas.

    Este documento es para aquellas personas que les guste la programacin y deseen

    aprender un poco mas de programacin con conceptos fundamentales.

  • 24

    Bibliografa

    lvarez, C. (25 de 10 de 2014). Desarrollo y Software. Recuperado el 13 de Julio de 2015, de

    Genbetadev: http://www.genbetadev.com/actualidad/los-lenguajes-de-programacion-

    mas-utilizados

    Daz, N. (2005). UniCauca. Recuperado el 03 de Julio de 2015, de

    http://artemisa.unicauca.edu.co/~nediaz/LabII/practica07.htm

    Kernighan, B. W., & Ritchie, D. M. (s.f.). Lenguaje de Programacin. Recuperado el 13 de Julio de

    2015, de liquidtelecom:

    http://mirror.liquidtelecom.com/sourceforge/c/cb/cbookpdf/main.pdf

    Niemeyer, P. (2013). Learning Java (Vol. 4). O'Reilly. Recuperado el 14 de Julio de 2015, de

    http://chimera.labs.oreilly.com/books/1234000001805

    Programacin. (s.f.). Recuperado el 14 de Julio de 2015, de Definicin.de:

    http://definicion.de/programacion/