<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Josel Toro</title>
    <description>The latest articles on DEV Community by Josel Toro (@joseltoro).</description>
    <link>https://dev.to/joseltoro</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F693353%2F4eecf87b-17c8-42f8-a568-7663ee6e48b7.jpg</url>
      <title>DEV Community: Josel Toro</title>
      <link>https://dev.to/joseltoro</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/joseltoro"/>
    <language>en</language>
    <item>
      <title>Introducción al Lenguaje Java</title>
      <dc:creator>Josel Toro</dc:creator>
      <pubDate>Sat, 28 Aug 2021 22:14:16 +0000</pubDate>
      <link>https://dev.to/joseltoro/introduccion-al-lenguaje-java-2569</link>
      <guid>https://dev.to/joseltoro/introduccion-al-lenguaje-java-2569</guid>
      <description>&lt;p&gt;En algunas ocasiones habremos visto o escuchado la palabra "Java", tal vez a la hora de visitar un sitio web, o quizá al momento de instalar un juego o abrir un determinado programa, este nos pide como requisito tener instalado Java en nuestra computadora para proceder con su instalación y/o ejecución, pues como alguna vez dijo mi profesor, "Java está en todas partes".&lt;/p&gt;

&lt;p&gt;Así pues, en este tema, vamos a hablar de lo que es Java, para qué sirve y cuáles son los componentes que la conforman.&lt;/p&gt;

&lt;p&gt;¡Comencemos!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es Java?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Java es un lenguaje de programación de alto nivel y una plataforma informática con el cual se pueden escribir programas de cualquier tipo como, por ejemplo: applets, los cuales eran programas Java que se ejecutaban incrustados en un navegador web, aplicaciones de escritorio que son programas Java que se ejecutan en nuestra computadora independientemente de la plataforma o sistema operativo que estemos usando. Por otro lado, con Java también podemos crear aplicaciones empresariales, aplicaciones web, juegos, aplicaciones para dispositivos móviles, entre otros.&lt;/p&gt;

&lt;p&gt;Java es un lenguaje de programación de alto nivel, porque se asemeja más al lenguaje humano a diferencia de los lenguajes de bajo nivel que se asemejan más al lenguaje de las computadoras o también conocido como lenguaje máquina. Por lo tanto, los programas escritos en Java no pueden ser ejecutados de forma directa por el procesador de la computadora, por ese motivo, estos programas tienen que pasar por un proceso intermedio de traducción para que puedan ser entendidos por el procesador.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué contiene Java?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;De manera resumida:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Java contiene una &lt;code&gt;JVM&lt;/code&gt; (Java Virtual Machine), o en español Máquina Virtual de Java, que es la encargada de ejecutar o leer el programa.&lt;/li&gt;
&lt;li&gt;Contiene el &lt;code&gt;JDK&lt;/code&gt; (Java Development Kit), o en español Herramientas de Desarrollo de Java, que vendrían a ser las librerías de programación utilizadas por los desarrolladores en el momento de la creación de un programa.&lt;/li&gt;
&lt;li&gt;Contiene un &lt;code&gt;compilador&lt;/code&gt; que va a traducir el código escrito por el programador (código fuente) a lenguaje máquina (código de bytes) para que pueda ser entendido por el procesador al momento de ser ejecutado.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;En la Figura 1 se puede ver a grandes rasgos, las partes que conforman el lenguaje de programación Java.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 1&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Contenido del Lenguaje Java&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffqkd6qjsnaf5ufvg7hno.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffqkd6qjsnaf5ufvg7hno.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Etapa de Desarrollo de un Programa Java&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Los programas escritos en java pasan por tres etapas diferentes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Edición&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;En esta etapa se escriben las líneas de código que contienen las instrucciones del programa. Para ello, se puede recurrir a cualquier editor de texto, inclusive, hasta se podría utilizar el bloc de notas. Sin embargo, existen Entornos de Desarrollo profesionales para dicho fin.&lt;/p&gt;

&lt;p&gt;En la Figura 2 se puede observar un programa escrito en Java llamado “Saludo.java”. A este archivo se le conoce como código fuente.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 2&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Edición de un Programa Java.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs9qokmim28xpiimxnrt3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs9qokmim28xpiimxnrt3.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Compilación&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Una vez que ya tenemos nuestro programa (“Saludo.java”) creado, debemos de compilarlo. Recordemos que los programas escritos en Java no son comprensibles de forma directa por el procesador, por lo que requieren de cierto paso intermedio de traducción. Para este paso, vamos a utilizar el programa “javac” que viene incluido cuando se instala Java en nuestra computadora. Este programa, vendría a ser el compilador encargado de traducir el código fuente para que pueda ser leído por el procesador. &lt;/p&gt;

&lt;p&gt;En la Figura 3 se puede observar el programa escrito anteriormente (“Saludo.java”) siendo compilado mediante línea de comando. Este programa creará un nuevo archivo llamado “Saludo.class”. Este archivo contiene un nuevo código llamado “código de bytes” que sí es entendible por el procesador de la máquina.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 3&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Compilación de un Programa Java.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foy1hu1n2xun9pnhqj88z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foy1hu1n2xun9pnhqj88z.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ejecución&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;En esta última etapa se ejecuta el código de bytes que es el lenguaje de la JVM (máquina virtual de java). Existe una JVM para cada plataforma (Windows. Linux, Mac). Esto permite que los programas Java sean portables ya que existe una JVM para la mayoría de los sistemas operativos.&lt;/p&gt;

&lt;p&gt;En la Figura 4 se puede observar la ejecución mediante línea de comandos de un programa Java,&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 4&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Ejecución de un Programa Java.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4o8tmjcoygfemlklvxsw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4o8tmjcoygfemlklvxsw.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Por último, en la Figura 5 se puede observar las tres etapas juntas.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 5&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Edición, Compilación y Ejecución de un Programa Java.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiwjiogyak12edmx4uaz0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiwjiogyak12edmx4uaz0.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tipos de Programas en Java&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Como habíamos mencionado líneas atrás, Java es un lenguaje de programación y plataforma informática con el cual se pueden crear programas de cualquier tipo. Desde pequeños chips para tarjetas inteligente, pasando por dispositivos móviles, PDAs, electrodomésticos, vehículos, videojuegos, aplicaciones de escritorio, aplicaciones empresariales, aplicaciones web, servicios web, servidores, hasta en el satélite, ya que es un lenguaje de propósito muy general y puede ser utilizado para muchas cosas. &lt;/p&gt;

&lt;p&gt;En la actualidad se enseña muchísimo en las universidades ya que es uno de los lenguajes de programación más populares y utilizado en todo el mundo. &lt;/p&gt;

&lt;p&gt;En la Figura 6 se puede observar una lista de los lenguajes de programación más utilizados para finales del año 2021 según la web de TIOBE.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 6&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Lenguajes de Programación más usado del año 2021&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpye24dm2pwfuic77mkng.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpye24dm2pwfuic77mkng.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h6&gt;
  
  
  Nota: El índice de la comunidad de programación TIOBE es un indicador de la popularidad de los lenguajes de programación. El índice se actualiza una vez al mes. Captura de pantalla de Gráfico de TIOBE Programming Community Index, de TIOBE, 2021 (&lt;a href="https://www.tiobe.com/tiobe-index/" rel="noopener noreferrer"&gt;https://www.tiobe.com/tiobe-index/&lt;/a&gt;).
&lt;/h6&gt;

&lt;p&gt;&lt;strong&gt;Plataformas Java&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;El universo de Java es un vasto conjunto de tecnologías, que comprende tres plataformas principales que se crearon para segmentos de aplicaciones específicos:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Java SE (Java Platform, Standard Edition). Es la base de la plataforma. Incluye el entorno de ejecución y las bibliotecas comunes.&lt;/li&gt;
&lt;li&gt;Java EE (Java Platform, Enterprise Edition). La edición se centró en el desarrollo de aplicaciones corporativas e Internet.&lt;/li&gt;
&lt;li&gt;Java ME (Java Platform, Micro Edition). La edición para el desarrollo de aplicaciones para dispositivos móviles e integrados.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Además, se pueden destacar dos plataformas Java más específicas:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Java Card. Dirigido a dispositivos integrados con limitaciones de procesamiento y almacenamiento, como tarjetas inteligentes y Java Ring.&lt;/li&gt;
&lt;li&gt;JavaFX. Plataforma para el desarrollo de aplicaciones multimedia en escritorio / web (JavaFX Script) y dispositivos móviles (JavaFX Mobile).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Applets&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Los applets son programas Java que se transmiten por internet y que se ejecutan incrustados dentro de una página web.&lt;/p&gt;

&lt;p&gt;En la Figura 7 se puede observar cuatro applets que muestran un reloj con la hora en formato MIT, UTC y INRIA.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 7&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Applet que muestra la hora en diferentes formatos&lt;/em&gt;&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbj15v0gpzj13f32amgzn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbj15v0gpzj13f32amgzn.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h6&gt;
  
  
  Nota: Reproducida de Java applets test, de w3. 2021 (&lt;a href="https://www.w3.org/People/mimasa/test/object/java/" rel="noopener noreferrer"&gt;https://www.w3.org/People/mimasa/test/object/java/&lt;/a&gt;).
&lt;/h6&gt;

&lt;p&gt;En la Figura 8 se puede observar un applet que calcula el importe de la compra, el importe de descuento, el importe a pagar y el obsequio por la cantidad de docenas adquiridas de un producto.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 8&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Applet que calcula el monto a pagar por la compra de cierta cantidad de docenas adquiridas de un producto&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F84ugz0r70cfs2w3s6os3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F84ugz0r70cfs2w3s6os3.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;En la Figura 9 se puede observar un applet que calcula el área y volumen de un cilindro en base a la altura y el radio de este.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 9&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Applet que calcula el área y el volumen de un cilindro&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo2db7tg3bsma74tojvqd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo2db7tg3bsma74tojvqd.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Desde el año 2014 en adelante los diferentes navegadores como por ejemplo Google Chrome y Firefox han ido quitando el soporte al plugin de NPAPI, que es la tecnología requerida para ejecutar los applets de Java y otros plug-ins similares basados en la NPAPI, Lo que ha generado un gran impacto ya que muchas páginas, empresas, usuarios y desarrolladores que han usado esta tecnología por mucho tiempo lleven a migrar sus proyectos a una solución diferente y dejando atrás el uso de los applets en las aplicaciones web. Si bien es cierto los applets permitían acceder a las funcionalidades del sistema operativo, existen otras alternativas como Apis y Frameworks. &lt;/p&gt;

&lt;p&gt;En Internet Explorer aún es posible ejecutar los applets siempre y cuando se le dé el permiso desde el panel de control de Java y el otro modo de ejecutarlos seria utilizando una versión desactualizada de un navegador y de Java (de la versión 1.7 para abajo). Es un consejo para las personas que no quieren perder sus programas hechos en applets y desean todavía hacer uso de ellas,&lt;/p&gt;

&lt;p&gt;En resumen, con los pasos de los años el éxito de esta tecnología se fue reduciendo debido a diversos factores, quizá la más importante el tamaño limitado de los applets que se incrustaban en el navegador y la aparición posterior de las aplicaciones web dinámicas de servidor que relego el uso de estas minis aplicaciones. Si bien es cierto que existen otras tecnologías que también se incrustaban en el navegador, como ActiveX de Microsoft, Flash, Java Web Start, etc. Los applets Java fueron los primeros.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Aplicaciones de Escritorio&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Las aplicaciones son programas Java que son independientes de un navegador web, poseen ventana propia a diferencia de los applets pero que también necesitan de una versión de la JVM para poder ser ejecutados en el sistema operativo.&lt;/p&gt;

&lt;p&gt;En la Figura 10 se puede observar una aplicación de ventas realizado en Java.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 10&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Sistema de ventas Kardex&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fabec7yuq2arv4y3lqr4x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fabec7yuq2arv4y3lqr4x.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;En la Figura 11 se puede observar una aplicación de bloc de notas realizado en Java.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 11&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Aplicación Bloc de Notas&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbgi3zpwyc19kzn2h58lz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbgi3zpwyc19kzn2h58lz.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;En la Figura 12 se puede observar una aplicación Java que guarda los contactos de una persona en una agenda.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 12&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Aplicación Agenda&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fesljqyid5q01ot7118ck.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fesljqyid5q01ot7118ck.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Aplicaciones Web&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Se denomina aplicación web a aquellas herramientas que los usuarios pueden utilizar accediendo a un servidor web a través de internet o de una intranet mediante un navegador. En Java son los servlets que permiten esto. Un servlet es un componente web que está soportada para trabajar con el paradigma request-response y a diferencias de los applets son programas Java que se ejecutan en el lado del servidor mediante el desarrollo de aplicaciones web que interactúan con los clientes.&lt;/p&gt;

&lt;p&gt;En este campo existen muchas tecnologías para desarrollar una aplicación web, que son marcos de trabajo (frameworks) que nos van a facilitar un amplio conjunto de potentes librerías para poder construir una aplicación web. Podremos desarrollar aplicaciones web Java utilizando Servlets y JSPs, aplicaciones web Java utilizado Struts y MyBatis, aplicaciones web Java usando JSF y JPA, aplicaciones web Java usando Spring, Ibatis, JSF y PrimeFaces, aplicaciones web Java usando Spring Boot, etc., ya que hoy en día existen una gran cantidad de tecnologías tanto a nivel de persistencia (base de datos) como a nivel de vista (frontend) y controlador (backend) para el desarrollo de aplicaciones web.&lt;/p&gt;

&lt;p&gt;En la Figura 13 se puede observar una sencilla aplicación web Java que realiza un mantenimiento de productos.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 13&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Sistema Web de Mantenimiento de Productos&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpjul0hgzo8yuhrc243wa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpjul0hgzo8yuhrc243wa.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;En la Figura 14 se puede observar una aplicación web Java de reservas de canchas de futbol.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 14&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Sistema Web de Reservas de Cancha de Fútbol&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuphufazca6aes9ipmodf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuphufazca6aes9ipmodf.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;En la Figura 15 se puede observar una aplicación web Java de reserva de matrículas.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 15&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Sistema Web de Reserva de Matriculas&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;h6&gt;
  
  
  Nota: Recuperada de internet
&lt;/h6&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fop1m21rdjo6leg34ingb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fop1m21rdjo6leg34ingb.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h6&gt;
  
  
  Nota: Recuperada de internet
&lt;/h6&gt;

&lt;blockquote&gt;
&lt;p&gt;Es importarte saber que no debemos confundir un &lt;code&gt;sitio web&lt;/code&gt; (web site) con una &lt;code&gt;aplicación web&lt;/code&gt; (web aplication). Una página web es estática, es decir que no hay interacción con el usuario o cliente más que el intercambio de información. Tampoco se necesita de un lenguaje de programación más que el html, css y javascript, como por ejemplo el sitio web de una empresa donde podemos ver la historia de la empresa y los servicio que ofrece. En cambio, una aplicación web se comporta como una aplicación de escritorio, es dinámica su contenido cambia constantemente, requiere de html, css, javascript, base de datos y lenguajes de programación, como por ejemplo las aplicaciones web que acabas de ver en las imágenes.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Aplicaciones para Dispositivos Móviles, PDAs, Electrodomésticos&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Son aplicaciones Java destinadas a ejecutarse en pequeños dispositivos con memoria, visualización y potencia limitadas.&lt;/p&gt;

&lt;p&gt;En la Figura 16 se muestra un ejemplo de una aplicación Android de una tienda online.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 16&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Aplicación Móvil de Carrito de Compras&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhgxjo4e7j023jwifeshe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhgxjo4e7j023jwifeshe.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h6&gt;
  
  
  Nota: Recuperada de internet
&lt;/h6&gt;

&lt;p&gt;En la Figura 17 se muestra un ejemplo de una aplicación Android de un centro médico.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 17&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Aplicación Móvil para Citas Médicas Online&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6jotqhtwr80e9wh8n82s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6jotqhtwr80e9wh8n82s.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;En la Figura 18 se muestra un ejemplo de una aplicación JavaFX de registro de clientes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 18&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Aplicación Móvil Java FX de Registro de Clientes&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx6m2dw0eordtvvc7ayo7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx6m2dw0eordtvvc7ayo7.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h6&gt;
  
  
  Nota: Recuperada de internet
&lt;/h6&gt;

&lt;p&gt;&lt;strong&gt;Aplicaciones Java Card&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Son pequeñas aplicaciones Java (applets) seguras destinadas a ejecutarse dentro de tarjetas inteligentes y similares dispositivos empotrados como, por ejemplo: chips de celulares, monederos electrónicos, identificación o firma digitales, sistema de prepago, control de acceso y asistencia, entre otros.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 19&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Tarjeta Java Card&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fck1j41wrtm5f58gqvohi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fck1j41wrtm5f58gqvohi.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h6&gt;
  
  
  Nota: Recuperada de internet
&lt;/h6&gt;

&lt;p&gt;En Java podemos desarrollar una gran variedad de aplicaciones, desde los más sencillos y prácticos hasta los más sofisticados y complejos. ¡Genial verdad! Pero para llegar a este nivel, debemos de pasar por muchas etapas, ya que Java es inmenso, es un lenguaje de programación “complejo de aprender” pues tiene muchas cosas, abarca muchas áreas de nivel general y con sus más de 20 años en el mercado sigue siendo un lenguaje de futuro. Java no es solo un lenguaje de programación, sino que es una plataforma que abarca muchos servicios, componentes, librerías e infinidades de cosas más.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Para Recordar&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Les dejo algunos puntos claves de este capítulo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Un lenguaje de programación es un lenguaje formal (artificial, con reglas gramaticales bien definidas), que le proporciona al programador la capacidad de poder escribir el código fuente de un programa (programar).&lt;/li&gt;
&lt;li&gt;Un lenguaje de programación de alto nivel es un lenguaje que se asemeja más al lenguaje humano.&lt;/li&gt;
&lt;li&gt;Un lenguaje de programación de bajo nivel es un lenguaje que se asemeja más al lenguaje máquina.&lt;/li&gt;
&lt;li&gt;Java es un lenguaje de programación de alto nivel con el cual se pueden escribir programas de cualquier tipo.&lt;/li&gt;
&lt;li&gt;El universo Java contas de 3 plataformas principales: Java SE, Java EE, Java ME. Y dos específicas: Java Card y Java FX.&lt;/li&gt;
&lt;li&gt;Con Java podemos crear applets, aplicaciones de escritorios, aplicaciones empresariales, aplicaciones web, servicios web, servidores, aplicaciones para dispositivos móviles, videojuegos, PDAs, electrodomésticos, tarjetas inteligentes, etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Espero que este post haya sido de su agrado. Conmigo será hasta una próxima oportunidad. Saludos y que tenga un buen día.&lt;/p&gt;

&lt;p&gt;Para complementar lo aprendido, puede visitar los siguientes enlaces:&lt;/p&gt;

&lt;p&gt;Lenguaje de Programación: &lt;a href="https://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n" rel="noopener noreferrer"&gt;https://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n&lt;/a&gt;&lt;br&gt;
Lenguaje de Alto Nivel: &lt;a href="https://es.wikipedia.org/wiki/Lenguaje_de_alto_nivel" rel="noopener noreferrer"&gt;https://es.wikipedia.org/wiki/Lenguaje_de_alto_nivel&lt;/a&gt;&lt;br&gt;
Lenguaje de Bajo Nivel: &lt;a href="https://es.wikipedia.org/wiki/Lenguaje_de_bajo_nivel" rel="noopener noreferrer"&gt;https://es.wikipedia.org/wiki/Lenguaje_de_bajo_nivel&lt;/a&gt;&lt;br&gt;
Lenguaje de Programación Java: &lt;a href="https://es.wikipedia.org/wiki/Java_(lenguaje_de_programaci%C3%B3n)" rel="noopener noreferrer"&gt;https://es.wikipedia.org/wiki/Java_(lenguaje_de_programaci%C3%B3n)&lt;/a&gt;&lt;br&gt;
Java SE: &lt;a href="https://es.wikipedia.org/wiki/Java_SE" rel="noopener noreferrer"&gt;https://es.wikipedia.org/wiki/Java_SE&lt;/a&gt;&lt;br&gt;
Java EE: &lt;a href="https://es.wikipedia.org/wiki/Java_EE" rel="noopener noreferrer"&gt;https://es.wikipedia.org/wiki/Java_EE&lt;/a&gt;&lt;br&gt;
Java ME: &lt;a href="https://es.wikipedia.org/wiki/Java_Micro_Edition" rel="noopener noreferrer"&gt;https://es.wikipedia.org/wiki/Java_Micro_Edition&lt;/a&gt;&lt;br&gt;
Applets: &lt;a href="https://es.wikipedia.org/wiki/Applet_Java" rel="noopener noreferrer"&gt;https://es.wikipedia.org/wiki/Applet_Java&lt;/a&gt;&lt;br&gt;
Aplicaciones Web: &lt;a href="https://es.wikipedia.org/wiki/Aplicaci%C3%B3n_web" rel="noopener noreferrer"&gt;https://es.wikipedia.org/wiki/Aplicaci%C3%B3n_web&lt;/a&gt;&lt;/p&gt;

</description>
      <category>java</category>
      <category>lenguajes</category>
      <category>programacion</category>
    </item>
    <item>
      <title>¿Qué es un Programa de Computadora?</title>
      <dc:creator>Josel Toro</dc:creator>
      <pubDate>Sat, 28 Aug 2021 07:22:08 +0000</pubDate>
      <link>https://dev.to/joseltoro/que-es-un-programa-de-computadora-1djf</link>
      <guid>https://dev.to/joseltoro/que-es-un-programa-de-computadora-1djf</guid>
      <description>&lt;p&gt;Un programa de computadora es una secuencia de instrucciones escritas por un programador para realizar una tarea específica en un computador. Dichas instrucciones, son la implementación de un algoritmo en un determinado lenguaje de programación como, por ejemplo: Java, C, C++, .NET, PHP, GO, etc.&lt;/p&gt;

&lt;p&gt;En la Figura 1 se puede observar la relación que existe entre problema, algoritmo y programa.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 1&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Problema, Algoritmo y Programa&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--S_9QOz4D--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j19mlxw2orc841m81nmc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--S_9QOz4D--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j19mlxw2orc841m81nmc.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;En la Figura 2 se tiene un programa de computadora, que calcula el pago mensual de un trabajador en base a la cantidad de horas trabajadas y la tarifa horaria.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 2&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Programa que Calcula el Sueldo de un Trabajador&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---1cpw2FH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1adsqtn1xa2t0r1n5gkj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---1cpw2FH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1adsqtn1xa2t0r1n5gkj.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sin Embargo, debemos saber que para que un programa pueda ser ejecutado por una máquina, este debe hablar su mismo idioma. En la Figura 3 se puede ver la compilación (traducción) de un programa escrito en Java a código máquina.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Figura 3&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Edición y Compilación de un Programa&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5HDjGiqZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/45p6pmlqeb5qlq7t36ix.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5HDjGiqZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/45p6pmlqeb5qlq7t36ix.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lenguaje Máquina&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;El lenguaje máquina es el más primitivo de los códigos, es el lenguaje nativo de las computadoras la cual está compuesta por una secuencia de ceros y unos (bits). &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lenguaje de Bajo Nivel&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Son aquellos lenguajes que se asemejan más al lenguaje máquina, es decir que proporcionan poca o ninguna abstracción como, por ejemplo: los lenguajes ensambladores.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lenguaje de Alto Nivel&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Son aquellos lenguajes que son más amigables para el programador, es decir que se asemejan más al lenguaje humano como, por ejemplo: Java, Python, PHP, C#, entre otros. &lt;/p&gt;

&lt;p&gt;La principal diferencia de estos tres tipos de lenguajes de programación es que mientras un lenguaje proporcione poca o ninguna abstracción más estará cerca al lenguaje máquina. De esa manera evitamos caer en discusiones de qué o cuáles lenguajes de programación son de bajo o alto nivel, inclusive, se podría definir un tipo de lenguajes de medio nivel. De otro modo sería que mientras más fácil sea desarrollar un programa y más legible sea su compresión, será de un más alto nivel.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Para Recordar&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Les dejo algunos puntos claves de este capítulo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Un algoritmo es una secuencia ordenada y finita de pasos que permiten resolver un problema.&lt;/li&gt;
&lt;li&gt;Un programa de computadora es la implementación de un algoritmo en un determinado lenguaje de programación.&lt;/li&gt;
&lt;li&gt;El lenguaje máquina es el lenguaje de las computadoras.&lt;/li&gt;
&lt;li&gt;Los lenguajes de bajo nivel se describen como cercanos al hardware, es decir que se asemejan más al lenguaje máquina, &lt;/li&gt;
&lt;li&gt;Los lenguajes de alto nivel son aquellos lenguajes que se asemejan más al lenguaje humano.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Para complementar lo aprendido, pueden visitar los siguientes enlaces:&lt;/p&gt;

&lt;p&gt;Algoritmo: &lt;a href="https://es.wikipedia.org/wiki/Algoritmo"&gt;https://es.wikipedia.org/wiki/Algoritmo&lt;/a&gt;&lt;br&gt;
Programa de Computadora: &lt;a href="https://es.wikipedia.org/wiki/Programa_inform%C3%A1tico"&gt;https://es.wikipedia.org/wiki/Programa_inform%C3%A1tico&lt;/a&gt;&lt;br&gt;
Lenguaje de Alto Nivel: &lt;a href="https://es.wikipedia.org/wiki/Lenguaje_de_alto_nivel"&gt;https://es.wikipedia.org/wiki/Lenguaje_de_alto_nivel&lt;/a&gt;&lt;br&gt;
Lenguaje de Bajo Nivel: &lt;a href="https://es.wikipedia.org/wiki/Lenguaje_de_bajo_nivel"&gt;https://es.wikipedia.org/wiki/Lenguaje_de_bajo_nivel&lt;/a&gt;&lt;/p&gt;

</description>
      <category>problema</category>
      <category>algoritmo</category>
      <category>programa</category>
      <category>computadora</category>
    </item>
    <item>
      <title>¿Qué es un algoritmo?</title>
      <dc:creator>Josel Toro</dc:creator>
      <pubDate>Fri, 27 Aug 2021 18:06:44 +0000</pubDate>
      <link>https://dev.to/joseltoro/que-es-un-algoritmo-4168</link>
      <guid>https://dev.to/joseltoro/que-es-un-algoritmo-4168</guid>
      <description>&lt;p&gt;¿Sabías que muchas de las funciones que realizamos en nuestro día a día es un algoritmo? Por ejemplo, el seguir los pasos para preparar la receta de algún postre, instalar una impresora en la oficina, lavar los utensilios sucios, levantarse temprano todos los días para preparar el desayuno, o cualquier otra función que contemple una secuencia de pasos, vendría a ser un algoritmo. ¡Que no te sorprenda que tu vida esté llena de algoritmos! Y en este primer tema les voy a explicar el porqué de ello y lo que tal vez estés pensando, qué tiene que ver el preparar una receta o el instalar una impresora con los algoritmos y la programación.&lt;/p&gt;

&lt;p&gt;¡Comencemos!&lt;/p&gt;

&lt;p&gt;Al escuchar la palabra “algoritmo”, seguramente viene a nuestra cabeza los algoritmos que veíamos en el colegio como, por ejemplo: el algoritmo de Euclides para calcular el máximo común divisor de dos números, la misma multiplicación es un algoritmo para obtener un producto, o la división para determinar el cociente de dos números. Yendo un poco más a nivel universitario, tenemos el método simplex para la optimización de problemas que lo enseñan en el curso de IOP (Investigación de Operaciones). Todos estos son algoritmos, pues siguen una serie de operaciones para obtener un resultado.&lt;/p&gt;

&lt;p&gt;Así como estos algoritmos puedo mencionarles muchos otros que son de gran utilidad para la educación, para el trabajo, para las empresas y para la vida misma, ya que nos facilitan las cosas y nos permiten solucionar diferentes tipos de problemas.&lt;/p&gt;

&lt;p&gt;Creo que ya te vas dando una idea de para qué sirve un algoritmo, sino pues definamos de manera muy sencilla qué es un algoritmo.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es un Algoritmo?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Un algoritmo es una secuencia ordenada y finita de pasos que permiten resolver un problema. Dicho de otro modo, es un método que será expresado en un conjunto de pasos para resolver un problema.&lt;/p&gt;

&lt;p&gt;¿Y qué tiene que ver esto con la programación? Pues que dicho método puede ser implementado en un programa de computadora que satisfaga las necesidades de las personas.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es un programa de computadora?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Un programa de computadora es la implementación de un algoritmo en un determinado lenguaje de programación como, por ejemplo: Java, C, C++, .NET, PHP, GO, etc.&lt;/p&gt;

&lt;p&gt;En la siguiente imagen se puede ver la relación clara que existe entre problema, algoritmo y programa. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Cb2-fk9g--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s92bglazkby1fnbj074z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Cb2-fk9g--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s92bglazkby1fnbj074z.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Espero que este pequeño post haya sido de su agrado, nos vemos en una siguiente oportunidad. Saludos y que tengan un buen día.&lt;/p&gt;

</description>
      <category>algoritmo</category>
      <category>algorithms</category>
    </item>
    <item>
      <title>7 problemas de "Estructuras de Secuencia" resueltos en consola en Java</title>
      <dc:creator>Josel Toro</dc:creator>
      <pubDate>Fri, 27 Aug 2021 08:03:39 +0000</pubDate>
      <link>https://dev.to/joseltoro/7-problemas-de-estructura-de-secuencia-resueltos-en-consola-en-java-1g0p</link>
      <guid>https://dev.to/joseltoro/7-problemas-de-estructura-de-secuencia-resueltos-en-consola-en-java-1g0p</guid>
      <description>&lt;p&gt;¡Hola, coders! En esta oportunidad les voy a compartir 7 ejercicios resueltos en Java sobre Estructuras de Secuencia, para todos quienes recién están empezando en el mundo de la programación. Saludos y que tenga un buen día.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Problema 1&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight java"&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt; &lt;span class="nn"&gt;problemas_resueltos&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;java.util.*&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="cm"&gt;/**
 * El cálculo del pago mensual de un empleado de una empresa se efectúa de la
 * siguiente manera: el sueldo básico se calcula en base al número total de
 * horas trabajadas basado en una tarifa horaria; al sueldo básico, se le aplica
 * una bonificación del 20% obteniéndose el sueldo bruto; al sueldo bruto, se le
 * aplica un descuento del 10% obteniéndose el sueldo neto. Escriba un programa
 * que calcule e imprima el sueldo básico, el sueldo bruto y el sueldo neto de
 * un trabajador.
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltoro
 */&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Problema01&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;

    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;String&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="o"&gt;[])&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="c1"&gt;// Declaración de variables&lt;/span&gt;
        &lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="n"&gt;horasTrab&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;tarifaHor&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="n"&gt;sueldoBas&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;montoBoni&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;sueldoBru&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;montoDesc&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;sueldoNet&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nc"&gt;Scanner&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Scanner&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;in&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;

        &lt;span class="c1"&gt;// Entrada de datos&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Horas : "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;horasTrab&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Tarifa: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;tarifaHor&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;

        &lt;span class="c1"&gt;// Proceso de cálculo&lt;/span&gt;
        &lt;span class="n"&gt;sueldoBas&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;horasTrab&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;tarifaHor&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;montoBoni&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;0.20&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;sueldoBas&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;sueldoBru&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sueldoBas&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;montoBoni&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;montoDesc&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;0.10&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;sueldoBru&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;sueldoNet&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sueldoBru&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;montoDesc&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

        &lt;span class="c1"&gt;// Salida de resultados&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"\nRESULTADO"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"----------"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Sueldo básico: S/. "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;sueldoBas&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Bonificación : S/. "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;montoBoni&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Sueldo bruto : S/: "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;sueldoBru&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Descuento    : S/. "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;montoDesc&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Sueldo neto  : S/. "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;sueldoNet&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Salida&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Horas : 140
Tarifa: 23.5

RESULTADO
----------
Sueldo básico: S/. 3290.0
Bonificación : S/. 658.0
Sueldo bruto : S/: 3948.0
Descuento    : S/. 394.8
Sueldo neto  : S/. 3553.2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Problema 2&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight java"&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt; &lt;span class="nn"&gt;problemas_resueltos&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;java.util.*&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="cm"&gt;/**
 * Diseñe un programa que permita convertir una cantidad dada en metros a sus
 * equivalentes en centímetros, pulgadas, pies y yardas. Considere la siguiente
 * información:
 * 1 metro = 100 centímetros
 * 1 pie = 12 pulgadas
 * 1 yarda = 3 pies
 * 1 pulgada = 2.54 centímetros
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltoro
 */&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Problema02&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;

    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="c1"&gt;// Declaración de variables&lt;/span&gt;
        &lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="n"&gt;xmetros&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;xpies&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;xpulgadas&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;xyardas&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;xcentimetros&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nc"&gt;Scanner&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Scanner&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;in&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;

        &lt;span class="c1"&gt;// Entrada de datos&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Metros: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;xmetros&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;

        &lt;span class="c1"&gt;// Proceso de conversión&lt;/span&gt;
        &lt;span class="n"&gt;xcentimetros&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;xmetros&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;xpulgadas&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;xcentimetros&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mf"&gt;2.54&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;xpies&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;xpulgadas&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;xyardas&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;xpies&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

        &lt;span class="c1"&gt;// Salida de resultados&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"\nRESULTADO"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"----------"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Centímetros: "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;xcentimetros&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="s"&gt;" cm"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Pulgadas   : "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;xpulgadas&lt;/span&gt;    &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="s"&gt;" in"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Pies       : "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;xpies&lt;/span&gt;        &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="s"&gt;" ft"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Yardas     : "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;xyardas&lt;/span&gt;      &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="s"&gt;" yd"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Salida&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Metros: 5.8

RESULTADO
----------
Centímetros: 580.0 cm
Pulgadas   : 228.3464566929134 in
Pies       : 19.028871391076116 ft
Yardas     : 6.342957130358705 yd
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Problema 3&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight java"&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt; &lt;span class="nn"&gt;problemas_resueltos&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;java.util.*&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="cm"&gt;/**
 * Escriba un programa que calcule el área total y el volumen de un cilindro.
 * Considere las siguientes fórmulas: A = 2πr(r+h) y V = 2πr²h; siendo A el
 * área, V el volumen, r el radio y h la altura.
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltoro
 */&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Problema03&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;

    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="c1"&gt;// Declaración de variables&lt;/span&gt;
        &lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;area&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;volumen&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nc"&gt;Scanner&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Scanner&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;in&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;

        &lt;span class="c1"&gt;// Entrada de datos&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Radio : "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;r&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Altura: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;h&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;

        &lt;span class="c1"&gt;// Calcula el área y volumen del cilindro&lt;/span&gt;
        &lt;span class="n"&gt;area&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mf"&gt;3.1416&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;r&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="n"&gt;r&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;volumen&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mf"&gt;3.1416&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;r&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;r&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;h&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

        &lt;span class="c1"&gt;// Salida de resultados&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"\nÁrea y volumen del cilindro"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Área    : "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;area&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Volumen : "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;volumen&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Salida&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Radio : 3
Altura: 6

Área y volumen del cilindro
Área    : 169.6464
Volumen : 339.2928
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Problema 4&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight java"&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt; &lt;span class="nn"&gt;problemas_resueltos&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;java.util.*&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="cm"&gt;/**
 * Débora, Raquel y Séfora aportan cantidades de dinero para formar un capital.
 * Diseñe un programa que determine el capital formado y el porcentaje de dicho
 * capital que aporta cada uno.
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltoro
 */&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Problema04&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;

    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="c1"&gt;// Declaración de variables&lt;/span&gt;
        &lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="n"&gt;dineDeb&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;dineRaq&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;dineSef&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="n"&gt;capital&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;porcDeb&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;porcRaq&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;porcSef&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nc"&gt;Scanner&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Scanner&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;in&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;

        &lt;span class="c1"&gt;// Entrada de datos&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Dinero de Débora: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;dineDeb&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Dinero de Raquel: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;dineRaq&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Dinero de Séfora: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;dineSef&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;

        &lt;span class="c1"&gt;// Halla el capital formado&lt;/span&gt;
        &lt;span class="n"&gt;capital&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;dineDeb&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;dineRaq&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;dineSef&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

        &lt;span class="c1"&gt;// Determina los porcentajes de cada capital respecto del total&lt;/span&gt;
        &lt;span class="n"&gt;porcDeb&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;dineDeb&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="n"&gt;capital&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;porcRaq&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;dineRaq&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="n"&gt;capital&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;porcSef&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;dineSef&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="n"&gt;capital&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

        &lt;span class="c1"&gt;// Salida de resultados&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"\nRESULTADO"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"---------"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Capital : "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;capital&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Porcentaje que aporta Debora: "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;porcDeb&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Porcentaje que aporta Raquel: "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;porcRaq&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Porcentaje que aporta Séfora: "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;porcSef&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Salida&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Dinero de Débora: 400
Dinero de Raquel: 500
Dinero de Séfora: 900

RESULTADO
---------
Capital : 1800.0
Porcentaje que aporta Debora: 22.22222222222222
Porcentaje que aporta Raquel: 27.77777777777778
Porcentaje que aporta Séfora: 50.0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Problema 5&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight java"&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt; &lt;span class="nn"&gt;problemas_resueltos&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;java.util.*&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="cm"&gt;/**
 * Diseñe un algoritmo que lea un número entero de cinco cifras y determine la
 * cifra central del número. Así, si el número ingresado fuera 45781, la cifra
 * central a mostrar es 7.
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltoro
 */&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Problema05&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;

    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="c1"&gt;// Declaración de variables&lt;/span&gt;
        &lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;numero&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;centro&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nc"&gt;Scanner&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Scanner&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;in&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;

        &lt;span class="c1"&gt;// Entrada de datos&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Número: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;numero&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextInt&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;

        &lt;span class="c1"&gt;// Determina la cifra central&lt;/span&gt;
        &lt;span class="n"&gt;centro&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="n"&gt;numero&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

        &lt;span class="c1"&gt;// Salida de resultados&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"\nLa cifra del medio es: "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;centro&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Salida&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Número: 45781

La cifra del medio es: 7
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Problema 6&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight java"&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt; &lt;span class="nn"&gt;problemas_resueltos&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;java.util.*&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="cm"&gt;/**
 * Diseñe un algoritmo para repartir una cantidad de dinero a tres personas en
 * forma proporcional a sus edades. El monto que le corresponde a cada persona
 * se calcula con la siguiente fórmula:
 * Monto de la persona = edad de la persona x monto a repatir / suma total de
 * edades
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltor
 */&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Problema06&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;

    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="c1"&gt;// Declaración de variables&lt;/span&gt;
        &lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="n"&gt;montoRepartir&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;montoP1&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;montoP2&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;montoP3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="n"&gt;edadP1&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;edadP2&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;edadP3&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;sumaEdades&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nc"&gt;Scanner&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Scanner&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;in&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;

        &lt;span class="c1"&gt;// Entrada de datos&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Monto: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;montoRepartir&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Edad 1: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;edadP1&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Edad 2: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;edadP2&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Edad 3: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;edadP3&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;

        &lt;span class="c1"&gt;// Calcula la suma total de edades&lt;/span&gt;
        &lt;span class="n"&gt;sumaEdades&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;edadP1&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;edadP2&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;edadP3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

        &lt;span class="c1"&gt;// Calcula la cantidad de dinero de cada persona&lt;/span&gt;
        &lt;span class="n"&gt;montoP1&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="n"&gt;edadP1&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;montoRepartir&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="n"&gt;sumaEdades&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;montoP2&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="n"&gt;edadP2&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;montoRepartir&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="n"&gt;sumaEdades&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;montoP3&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="n"&gt;edadP3&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;montoRepartir&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="n"&gt;sumaEdades&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

        &lt;span class="c1"&gt;// Salida de resultados&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"\nRESULTADO"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"---------"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Monto total    : "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;montoRepartir&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Suma de edades : "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;sumaEdades&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Monto persona 1: "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;montoP1&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Monto persona 2: "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;montoP2&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Monto persona 3: "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;montoP3&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Salida&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Monto: 10000
Edad 1: 14
Edad 2: 15
Edad 3: 16

RESULTADO
---------
Monto total    : 10000.0
Suma de edades : 45.0
Monto persona 1: 3111.1111111111113
Monto persona 2: 3333.3333333333335
Monto persona 3: 3555.5555555555557

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Problema 7&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight java"&gt;&lt;code&gt;&lt;span class="kn"&gt;package&lt;/span&gt; &lt;span class="nn"&gt;problemas_resueltos&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;java.util.*&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="cm"&gt;/**
 * Una tienda ha puesto en oferta la venta de un producto ofreciendo un 11% de
 * descuento sobre el importe de la compra. Diseñe un algoritmo que determine el
 * importe de la compra, el importe del descuento y el importe a pagar por la
 * compra de cierta cantidad de unidades del producto.
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltor
 */&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Problema07&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;

    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="c1"&gt;// Declaración de variables&lt;/span&gt;
        &lt;span class="kt"&gt;double&lt;/span&gt; &lt;span class="n"&gt;precio&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;importecom&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;importedes&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;importepag&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;unidades&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nc"&gt;Scanner&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Scanner&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;in&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;

        &lt;span class="c1"&gt;// Entrada de datos&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Precio  : "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;precio&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextDouble&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Cantidad: "&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;unidades&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;sc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;nextInt&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;

        &lt;span class="c1"&gt;// Cálculo de importes&lt;/span&gt;
        &lt;span class="n"&gt;importecom&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;unidades&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;precio&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;importedes&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;0.11&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;importecom&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;importepag&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;importecom&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;importedes&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

        &lt;span class="c1"&gt;// Salida de resultados&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"\nRESULTADO"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"----------"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Importe de compra   : "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;importecom&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Importe de descuento: "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;importedes&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Importe a pagar     : "&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;importepag&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Salida&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Precio  : 100
Cantidad: 2

RESULTADO
----------
Importe de compra   : 200.0
Importe de descuento: 22.0
Importe a pagar     : 178.0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>java</category>
      <category>consola</category>
      <category>estructurasdesecuencia</category>
    </item>
    <item>
      <title>¿Cuál es diferencia entre JAX-WS, Axis1, Axis2, CXF y Metro?</title>
      <dc:creator>Josel Toro</dc:creator>
      <pubDate>Fri, 27 Aug 2021 00:47:10 +0000</pubDate>
      <link>https://dev.to/joseltoro/cual-es-diferencia-entre-jax-ws-axis1-axis2-cxf-y-metro-43hj</link>
      <guid>https://dev.to/joseltoro/cual-es-diferencia-entre-jax-ws-axis1-axis2-cxf-y-metro-43hj</guid>
      <description>&lt;p&gt;Cuando empezamos a aprender sobre servicios web de una forma más completa y detallada, al inicio podemos percibir cierta complejidad; y aunque el concepto de Web Service es relativamente simple, esa complejidad existe debido a la gran cantidad de acrónimos para designar la enmarañada de tecnologías que componen el universo de los Web Services, especialmente en el lenguaje de programación Java.  &lt;/p&gt;

&lt;p&gt;Se necesita mucho tiempo y dedicación para aprenderlas de verdad que solo un par de clases en la universidad y asistir uno o diez videos en YouTube. Y muchas veces es difícil aprenderlas todas, pues apenas uno llega a ver solo una pequeña parte y en ocasiones desconocemos las tecnólogas que componen nuestro proyecto, ya que simplemente manejamos el concepto de Web Service como tal. Y cuando buscamos ayuda, leemos artículos en internet o vemos videos en YouTube, tenemos a enredarnos pues los títulos son poco descriptivos (“Como crear un web service”, “Aprender a crear un servicio web SOAP”, “Crear un servicio REST”, “Crear un servicio con JAX-RS”, “Crear un servicio con JAX-WS”, “Generar un servicio usando wsdl2java”, “Generar un cliente usando wsimport”, “Leer un servicio usando JDOM”, “Consumir un servicio usando HttpURLConnection” , “Consumir un servicio usando HttpClient”, “Consumir un servicio usando Jackson”, “Crear un cliente SOAP usando Apache HttpClient”, “Generar un cliente SOAP en Maven”, etc.). Uno puede aprender viendo estos videos y leyendo muchas publicaciones, sin embargo, la idea es poder aprenderlas en orden y compararlas para poder entender el universo de los servicios web, ya que para entender las nuevas tecnologías es bueno conocer las viejas también. &lt;/p&gt;

&lt;p&gt;Un profesor de historia que nasce en el año 2000 no solo tiene que conocer su historia actual en adelante, sino que también debe aprender la historia en donde no le tocó vivir. Lo mismo sucede con los Web Services, es un tema que requiere de muchísimo tiempo y dedicación, hay que leer mucho, investigar y sobre todo practicar. Cuando era estudiante, me preguntaba a mí mismo, “¿Pero qué enredo, tantas tecnologías para crear y consumir un servicio web?” Y eso que esta pregunta me lo hacía hace 8 años atrás. Hoy en día existen muchísimas más tecnologías las cuales muchas veces nos causan un estrés aprenderlas pues desconocemos la historia y apenas llegamos a ver una pequeña parte de ellas.&lt;/p&gt;

&lt;p&gt;Esta pregunta me surgió hace mucho tiempo y que veo que hoy en día a muchísimos estudiantes y profesionales también les causa curiosidad y al mismo tiempo confusión, pues a mi opinión personal, los institutos y universidades no son un lugar de estudio, es solo un lugar en donde nos enseñan, nos llenan de tareas, de exámenes y de proyectos, y casi nunca hay un tiempo pleno para sentarnos a leer, investigar, ordenar ideas tranquilamente sin la presión de tener que entregar mañana alguna tarea, presentar algún proyecto o estudiar para un examen. El alumno está más preocupado en aprobar que se le olvida aprender de verdad. &lt;/p&gt;

&lt;p&gt;Dicho esto, ¿cuál será la diferencia entre JAX-WS, Axis1, Axis2, CXF y Metro? Bueno, de primera mano les digo que los cinco pueden ser usados para crear servicios web en Java y existen otras muchas más, pero digamos que estas son las bases; y para poder entender las diferencias entre ellas, deben responder a las siguientes preguntas:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;¿Qué es RPC?&lt;/li&gt;
&lt;li&gt;¿Qué es Java RMI?&lt;/li&gt;
&lt;li&gt;¿Qué es XML-RPC?&lt;/li&gt;
&lt;li&gt;¿Qué es JAX-RPC&lt;/li&gt;
&lt;li&gt;¿Qué es JAX-WS?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es RPC?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Es una tecnología de comunicación entre procesos que permite que un programa de computadora llame a un procedimiento en otro espacio de direcciones (comúnmente en otra computadora, conectada por una red). Desde el punto de vista del código, la llamada se asemeja a las llamadas a procedimientos locales. En otras palabras, RPC es una tecnología que permite implementar el modelo cliente - servidor.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es Java RMI?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Es un mecanismo ofrecido por Java que existe desde la versión 1,1 del JDK para invocar un método de manera remota. Es decir, permite que un objeto que se ejecuta bajo el control de una máquina virtual Java pueda invocar métodos de un objeto que se encuentra en ejecución bajo el control de una máquina virtual Java diferente. Estas dos máquinas virtuales pueden estar ejecutándose como dos procesos independientes en el mismo ordenador o en ordenadores distintos conectados a través de una red TCP/IP.&lt;/p&gt;

&lt;p&gt;La principal diferencia de utilizar RPC o RMI, es que RMI es un mecanismo para invocación remota de procedimientos basado en el lenguaje de programación Java que soporta interacción entre objetos, mientras que RPC no soporta esta característica.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es XML-RPC?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Es un protocolo de llamada a procedimiento remoto (RPC) que utiliza XML para codificar sus llamadas y HTTP como mecanismo de transporte. Este protocolo sencillo fue creado en el año de 1998 y poco tiempo después dejó de ser considerado un estándar sencillo para conversarse en lo que es actualmente conocido como SOAP.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es JAX-RPC?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;JAX-RPC (Java API for XML-based RPC), o en español API de Java para RPC basado en XML, permite que una aplicación Java invoque un servicio web basado en Java a través de su WSDL. Puede verse como RMI de Java a través de servicios web.&lt;/p&gt;

&lt;p&gt;En JAX-RPC 2.0 se cambió el nombre a JAX-WS 2.0 para alejarse del estilo RPC y pasar hacia servicios web de estilo de documento.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es JAX-WS?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;JAX-WS (Java Api for XML Web Services), o en español API de Java para servicios web XML. Es una tecnología desarrollada a partir de Java Enterprise Edition 5 (JEE5), que permite construir servicios web y clientes SOAP que se comunican utilizando XML.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Entonces, ¿cuál es la diferencia entre JAX-WS, Axis1, Axis2, CXF y Metro?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;La diferencia es que JAX-WS es una especificación (es una API), así como lo es JAX-RS o JMS, mientras que Axis2, CXF y Metro son sus implementaciones. Por otro lado, Apache Axis se basa en JAX-RPC (API predecesora de JAX-WS) y en la actualidad, ha sido reemplazado por las otras tecnologías.&lt;/p&gt;

&lt;p&gt;De manera sencilla y para que lo entiendas, puedes ver a JAX-WS como una interfaz y a Axis2, CXF o Metro como una clase que implementa dicha interfaz.&lt;/p&gt;

&lt;p&gt;El uso de una u otra implementación, dependerá de la integración que queramos realizar en nuestro proyecto. Por ejemplo, si quisiéramos integrar JAX-WS con Spring, CXF sería una muy buena opción ya que tiene soporte con Spring y Camel, así como OSGi y ActiveMQ para JMS (Java Message Service). Por otro lado, Axis 2 y CXF no solo implementan JAX-WS, sino que también implementan la especificación JAX-RS por lo que soportan muy bien la exposición de servicios como REST y SOAP, entre otras muchas razones por las que podríamos querer utilizarlas. Asimismo, entre los componentes de Metro se incluyen JAXB RI, JAX-WS RI, SAAJ RI, StAX (implementación de SJSXP), WSIT y otras APIs. Y si necesitáramos alguna de las cosas más complejas como WS-Security, WS-SecureConversation, WS-RM, WS-Policy, etc., necesitaríamos usar algunas de las alternativas mencionadas anteriormente.&lt;/p&gt;

&lt;p&gt;Cabe mencionar que hoy en día, los servicios web SOAP son de alguna manera obsoletos; aunque todavía se enseña y se utiliza, la nueva tendencia es utilizar servicios web REST, es decir crear servicios con la especificación JAX-RS, utilizando alguna de sus implementaciones como Axis2, CXF, Jersey, Restlet, REST-assured, HttpCient, Apache HttpClient, OKHttp, Retrofit, etc.&lt;/p&gt;

&lt;p&gt;Espero que este post haya sido de tu agrado y si te gustó dele me gusta y compártelo con tus amigos; y recuerda que existen muchas maneras de crear y consumir un Web Service sea este SOAP o REST. Puede que no siempre sea la opción más conveniente o quizá no sea posible el uso de alguna de esas herramientas, aunque eso sí, no cabe duda de que facilitan muchísimo el desarrollo que sin ellas sería bastante arduo. &lt;/p&gt;

&lt;p&gt;Como dato adicional, en la actualidad existe una nueva tecnología llamada GraphQL la cual fue creada por Facebook en el 2012 y lanzada el 2015, y que vendría a ser una arquitectura alternativa a REST.&lt;/p&gt;

&lt;p&gt;La principal diferencia entre SOAP y REST, es que SOAP es un protocolo (es un estándar, tiene normas que cumplir), y REST no lo es (no tiene reglas, permite muchos formatos de datos diferentes, o sea que puedes enviar un JSON, un TEXTO, un XML, un HTML, etc. Lo importante es que el cliente y el servidor se entiendan y estén contentos).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Referencias&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Les dejo los siguientes enlaces para que puedan leer más al respecto, por mi parte será hasta otra oportunidad. ¡Qué tengan un buen día!&lt;/p&gt;

&lt;p&gt;RPC: &lt;a href="https://es.wikipedia.org/wiki/Llamada_a_procedimiento_remoto"&gt;https://es.wikipedia.org/wiki/Llamada_a_procedimiento_remoto&lt;/a&gt;&lt;br&gt;
Java RMI: &lt;a href="https://es.wikipedia.org/wiki/Java_Remote_Method_Invocation"&gt;https://es.wikipedia.org/wiki/Java_Remote_Method_Invocation&lt;/a&gt;&lt;br&gt;
XML-RPC: &lt;a href="https://es.wikipedia.org/wiki/XML-RPC"&gt;https://es.wikipedia.org/wiki/XML-RPC&lt;/a&gt;&lt;br&gt;
JAX-RPC: &lt;a href="https://es.wikipedia.org/wiki/JAX-RPC"&gt;https://es.wikipedia.org/wiki/JAX-RPC&lt;/a&gt;&lt;br&gt;
JAX-WS: &lt;a href="https://es.wikipedia.org/wiki/JAX-WS"&gt;https://es.wikipedia.org/wiki/JAX-WS&lt;/a&gt;&lt;br&gt;
Apache Axis1: &lt;a href="https://axis.apache.org/axis/java/"&gt;https://axis.apache.org/axis/java/&lt;/a&gt;&lt;br&gt;
Apache Axis2: &lt;a href="https://axis.apache.org/axis2/java/core/"&gt;https://axis.apache.org/axis2/java/core/&lt;/a&gt;&lt;br&gt;
Apache CXF: &lt;a href="http://cxf.apache.org/"&gt;http://cxf.apache.org/&lt;/a&gt;&lt;br&gt;
Metro: &lt;a href="https://javaee.github.io/metro/"&gt;https://javaee.github.io/metro/&lt;/a&gt;&lt;br&gt;
GlassFish Metro: &lt;a href="https://es.wikipedia.org/wiki/GlassFish_Metro"&gt;https://es.wikipedia.org/wiki/GlassFish_Metro&lt;/a&gt;&lt;br&gt;
¿Por qué usar Apache Axis2? &lt;a href="https://axis.apache.org/axis2/java/core/"&gt;https://axis.apache.org/axis2/java/core/&lt;/a&gt;&lt;br&gt;
¿Por qué usar Apache CXF? &lt;a href="http://cxf.apache.org/docs/why-cxf.html"&gt;http://cxf.apache.org/docs/why-cxf.html&lt;/a&gt;&lt;br&gt;
¿Por qué usar Apache Metro? &lt;a href="https://javaee.github.io/metro/"&gt;https://javaee.github.io/metro/&lt;/a&gt;&lt;br&gt;
Servicio web: &lt;a href="https://es.wikipedia.org/wiki/Servicio_web"&gt;https://es.wikipedia.org/wiki/Servicio_web&lt;/a&gt;&lt;/p&gt;

</description>
      <category>jaxws</category>
      <category>axis2</category>
      <category>cxf</category>
      <category>metro</category>
    </item>
  </channel>
</rss>
