sábado, 27 de junio de 2026

Generar la siguiente serie 1,2,4,5,7,8,10,11,13,... en HTML y JavaScript

Código del ejercicio:

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Ejercicio HTML y JavaScript</title>
</head>
<body>
    <h3>Generar la siguiente serie 1,2,4,5,7,8,10,11,13,...</h3>
    <form action="">
        <label for="">número:</label>
        <input type="number" id="numero"><br><br>
        <input type="button" value="Mostrar" onclick="mostrar()">
        <input type="reset" value="Limpiar"><br><br>
        <label for="">resultado:</label><br>
        <textarea name="" id="resultado" cols="30" rows="10"></textarea>
    </form>
    <script>
        function mostrar(){
            let n = parseInt(document.getElementById('numero').value);
            let t = [], w = 1, c = 1, sw = 1;
            while(c <= n){
                t.push(w);
                if(sw == 1){
                    w++;
                    sw = 2;
                }else{
                    w += 2;
                    sw = 1;
                }
                c++;
            }
            document.getElementById('resultado').value = t;
        }
    </script>
</body>
</html>

Definición de los códigos del ejercicio:

<h3></h3> --> representa un encabezado de nivel 3.
<form></form> --> se utiliza para crear un formulario HTML para la entrada del usuario.
<br> --> produce un salto de línea en el texto.
<label></label> --> representa una etiqueta para un elemento en una interfaz de usuario.
<input> --> etiqueta especifica un campo de entrada donde el usuario puede ingresar datos.
<textarea></textarea> --> define un control de entrada de texto de varias líneas.
onclick --> onclick evento ocurre cuando el usuario hace clic en un elemento.
<script></script> --> contiene comandos u ordenes que se van ejecutando de manera secuencial y comúnmente se utilizan para controlar el comportamiento de un programa en específico o para interactuar con el sistema operativo.
function --> es un bloque de código diseñado para realizar una tarea en particular.
let --> permite declarar variables limitando su alcance (scope) al bloque, declaración, o expresión donde se está usando.
parseInt() --> analiza un valor como una cadena y devuelve el primer entero.
while --> el ciclo while recorre un bloque de código siempre que una condición específica sea verdadera.
<= --> el operador menor o igual ( <= ) devuelve true si el operando izquierdo es menor o igual que el operando derecho, y en false caso contrario.
if --> se usa para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
else --> se usa para especificar un bloque de código a ejecutar, si la misma condición es falsa.
.push() --> agrega uno o más elementos al final de un array y devuelve la nueva longitud del array.
== --> el operador de comparacion ( == ) comprueba si sus dos operandos son iguales y devuelve un resultado booleano.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
document.getElementById() --> devuelve un elemento con un valor especificado.
.value --> establece o devuelve el valor del atributo de valor de un campo de texto.

Explicación del Código:

Este programa permite generar una serie numérica siguiendo el siguiente patrón:

1, 2, 4, 5, 7, 8, 10, 11, 13, ...

La serie alterna entre sumar 1 y sumar 2. Es decir:

  • Del 1 al 2 suma 1.
  • Del 2 al 4 suma 2.
  • Del 4 al 5 suma 1.
  • Del 5 al 7 suma 2.
  • Y así sucesivamente.

Explicación del código HTML

1. Título del ejercicio

<h3>Generar la siguiente serie 1,2,4,5,7,8,10,11,13,...</h3>

Muestra el nombre del ejercicio en la página web.


2. Campo para ingresar el número

<input type="number" id="numero">

Permite que el usuario escriba la cantidad de números que desea generar.


3. Botón Mostrar

<input type="button" value="Mostrar" onclick="mostrar()">

Cuando el usuario hace clic en este botón, se ejecuta la función mostrar().


4. Botón Limpiar

<input type="reset" value="Limpiar">

Borra el contenido del formulario.


5. Área de resultado

<textarea id="resultado"></textarea>

Aquí aparecerán los números generados por el programa.

Explicación del código JavaScript

Función principal

function mostrar(){

}

Es la función encargada de generar la serie.


Leer el número ingresado

let n = parseInt(document.getElementById('numero').value);

Obtiene el número ingresado por el usuario y lo convierte en un número entero.


Declaración de variables

let t = [], w = 1, c = 1, sw = 1;
Variable Descripción
t Arreglo donde se almacenan los números generados.
w Representa el número actual de la serie.
c Cuenta cuántos números se han generado.
sw Interruptor que decide si se suma 1 o se suma 2.

Ciclo while

while(c <= n){

}

Se repite hasta generar la cantidad de números solicitada por el usuario.


Guardar el número

t.push(w);

Agrega el número actual al arreglo.


Condición if

if(sw == 1){
    w++;
    sw = 2;
}

Si el interruptor vale 1:

  • Se suma 1 al número.
  • El interruptor cambia a 2.

Condición else

else{
    w += 2;
    sw = 1;
}

Si el interruptor vale 2:

  • Se suma 2 al número.
  • El interruptor vuelve a 1.

Gracias a este interruptor, la serie alterna entre sumar 1 y sumar 2.


Incrementar el contador

c++;

Indica que ya se generó un nuevo número de la serie.


Mostrar el resultado

document.getElementById('resultado').value = t;

Muestra todos los números almacenados en el arreglo dentro del área de texto.

Funcionamiento paso a paso

Iteración Número agregado Operación Siguiente número
1 1 +1 2
2 2 +2 4
3 4 +1 5
4 5 +2 7
5 7 +1 8
6 8 +2 10
7 10 +1 11
8 11 +2 13

Resumen

Este programa utiliza un ciclo while para generar una cantidad determinada de números. Los valores se almacenan en un arreglo mediante push(). Un interruptor (sw) controla si al número actual se le suma 1 o 2, permitiendo obtener la serie:

1, 2, 4, 5, 7, 8, 10, 11, 13, ...

No hay comentarios.:

Publicar un comentario

Encontrar la primera posición de un carácter x de una cadena en HTML y JavaScript

Código del ejercicio: <! DOCTYPE html > < html lang = "es" > < head >     < meta charset = ...

Copyright ©2025 Ejercicios de programación. Todos los derechos reservados. ❤️