INFORME

Embed Size (px)

DESCRIPTION

INFORME

Citation preview

  • 1

    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

    UNIVERSIDAD CENTRAL DEL

    ECUADOR

  • 2

    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

  • 3

    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

  • 5

    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

  • 6

    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.

  • 7

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

    niveles).

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

  • 8

    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.

  • 9

    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

  • 10

    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.

  • 11

    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)

  • 12

    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.

  • 13

    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

  • 14

    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"

  • 15

    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"

  • 16

    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

  • 17

    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.

  • 18

    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

  • 19

    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;

    }

    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

  • 20

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

    for (i = 0; i

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

  • 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