Ejercicios variados (if, while,for…)

1.- Pedir dos números al usuario y decir cual es el mayor.
2.- Pedir tres números al usuario y decir cual es el mayor
3.- Pedir la edad al usuario y decir si es o no mayor de edad
4.- Una progresión geométrica empieza con un número al que se le va multiplicando otro, por ejemplo: Si empezamos por el 2 y la razón (el número que se multiplica) es 3 la serie sería: 2,6,18,54….
Hagamos un programa que le pida al usuario un número inicial y una razón y nos muestre todos los términos de esa razón geométrica menores de 100.
5.- Escribir un programa que calcule la suma de todos los múltiplos de 5 menores de 100
6.- Escribir un programa que nos cuente la cantidad de múltiplos de 5 menores de 100
6.- Escribir un programa que le pida al usuario un número nos cuente la cantidad de divisores de ese número menores de 100
7.- Pedimos dos números al usuario y le decimos si los dos tienen la misma paridad (o sea, si los dos son pares o los dos son impares) o diferente.
8.- Escribir un programa que le pida textos al usuario, los imprima por la consola, y acabe cuando el usuario escriba ‘FIN’
9.- Escribir un programa que le pida números al usuario, los sume, y acabe cuando el usuario escriba 0 y nos muestre la suma total de los números
10.- Escribir un programa que nos muestre lo siguiente:
1
22
333
4444
55555

// Pedir dos números y decir cual es el mayor

const a = 6
const b = 6

if (a > b) {
  console.log(a)
} else if (b > a) {
  console.log(b)
} else {
  console.log('iguales')
}

if (a > b) {
  console.log(a)
} else {
  console.log(b)
}

const c = 8

if (a >= b && a >= c) {
  console.log(a)
} else if (b >= a && b >= c) {
  console.log(b)
} else {
  console.log(c)
}

// Asumo que a es el mayor y voy a almacenar en a siempre el mayor número

let mayor = a
// Si b es mayor que a pongo el valor de b en a y a sigue siendo el mayor
if (b > mayor) {
  mayor = b
}
// Si c es mayor que a pongo el valor de c en a y a sigue siendo el mayor

if (c > mayor) {
  mayor = c
}
console.log(mayor)

const edad = 20

if (edad < 18) {
  console.log('Menor de edad')
} else {
  console.log('Mayor de edad')
}

if (edad >= 18) {
  console.log('Mayor de edad')
} else {
  console.log('Menor de edad')
}

/*

Una progresión geométrica empieza con un número al que se le va multiplicando otro, por ejemplo:
Si empezamos por el 2 y la razón (el número que se multiplica) es 3 la serie sería: 2,6,18,54....
Hagamos un programa que le pida al usuario un número inicial y una razón
y nos muestre todos los términos de esa razón geométrica menores de 100.

*/

/*
Inicio: 2
Razón: 3

2,mult*3=6,mult*3=18,mult*3=54,mult*3=162 como es mayor que 100 paramos

Inicio: 10
Razón: 10

10,100 ya paro

Inicio 2
Razón 2:
2,4,8,16,32,64,128 paro

COndición del tipo hasta que pase algo o mientras que pase algo tipo de bucle: while

Hasta que sea mayor que 100 <=> Mientras sea menor de 100

*/

let inicio = 2
const razon = 3
while (inicio < 100) {
  console.log(inicio)
  inicio *= razon
}

for (let inicio = 2; inicio < 100; inicio *= razon) {
  console.log(inicio)
}

// 5.- Escribir un programa que calcule la suma de todos los multiplos de 5 menores de 100

/*

Me cogería la lista de los número del 1 al 100  con un for típico de toda la vida
Miraría a ver si el número es múltiplo de 5, con el %5==0 yo sé si es múltiplo de 5
 y si lo es lo sumo en una hojita o donde quiera suma+=valor suma=suma+valor
Muestro la suma  console.log()

Esto es un algoritmo== una receta de cocina

*/

let suma = 0
for (let i = 1; i <= 100; i++) {
  if (i % 5 == 0) {
    suma = suma + i
  }
}
console.log(suma)

// 6.- Escribir un programa que nos cuente la cantidad de divisores de 5 menores de 100

/*

Me cogería la lista de los número del 1 al 100  con un for típico de toda la vida
Miraría a ver si el número es múltiplo de 5, con el %5==0 yo sé si es múltiplo de 5
 y si lo es lo cuento  contar es sumar 1 y en js tenemos ++
Muestro la cuenta  console.log()

Esto es un algoritmo== una receta de cocina

*/

let cuenta = 0
for (let i = 1; i <= 100; i++) {
  if (i % 5 == 0) {
    cuenta++
  }
}
console.log(cuenta)

// 7.- Pedimos dos números al usuario y le decimos si los dos
// tienen la misma paridad (o sea, si los dos son pares o los dos son impares)
// o diferente.

const a = 7
const b = 19

// Se calcular la paridad de un número: %2
// Calcular la paridad de a
// Calcular la paridad de b
// Mirar si son iguales o distintas

const paridadA = a % 2
const paridadB = b % 2
if (paridadA == paridadB) {
  console.log('Tienen la misma paridad')
} else {
  console.log('Tienen distinta paridad')
}

if ((a % 2) == (b % 2)) {
  console.log('Tienen la misma paridad')
} else {
  console.log('Tienen distinta paridad')
}

// 8.- Escribir un programa que le pida textos al usuario,
// los imprima por la consola, y acabe cuando el usuario escriba 'FIN'

/*

Pedir textos al usuario (prompt)
Imprimirlos (console.log)
Acabar cuando el texto sea FIN
Condición: Hasta que el texto sea fin => Mientras el texto no sea FIN

*/

let texto
do {
   texto = prompt('Dame un texto (fin para acabar)')
  console.log(texto)
} while (texto.toLowerCase() != 'fin')

let cadena = ''
while (cadena.toLowerCase() != 'fin') {
  cadena = prompt('Dame un texto (fin para acabar)')
  console.log(cadena)
}

// 9.- Escribir un programa que le pida números al usuario, los sume,
// y acabe cuando el usuario escriba 0 y nos muestre la suma total de los números

/*

Pedir números al usuario -->prompt
Sumarlos en una variable --> suma+=valor
Acabar cuando el valor=0  --> while (valor!=0)

*/

let suma = 0
let numero
do {
  numero = parseFloat(prompt('Dame un número porfa'))
  suma += numero
} while (numero != 0)
console.log(suma)


/* 10.- Escribir un programa que nos muestre lo siguiente:
1
22
333
4444
55555
*/

/*

Imprimir todos los números del 1 al 5 (for de 1 a 5)
Tengo que imprimir tantas veces ese número como el propio número
Dentro del bucle de imprimir todos los números tendré otro bucle
¿Cuantas veces lo tengo que ejecutar? i=1->1 vez, i=2->2 veces, i=3, 3 veces...
Lo tengo que ejecutar i veces
*/

const numero = 4
for (let i = 1; i <= numero; i++) {
  let cadena = ''
  for (let j = 1; j <= i; j++) {
    cadena += i
  }
  console.log(cadena)
}

Publicado por

Juan Pablo Fuentes

Formador de programación y bases de datos