Swift – Ejercicios resueltos (III)

Pedirle un número al usuario y decir si es par usando «if»

var numero:Int;

print("Dime un número: ", terminator:"")
numero = Int(readLine()!)!

// Comprobamos si es par
if numero % 2 == 0 {
	print("\(numero) es par")
}
else {
    print("\(numero) no es par")
}

Pedirle dos números al usuario y ver cuál es el mayor de ellos





Pedirle al usuario un número. Si es múltiplo de 10, pedirle un segundo número y comprobar si también es múltiplo de 10

var numero1 = 0
var numero2 = 0

print("Dime el primer numero: ", terminator:"")
numero1 = Int(readLine()!) ?? 0 

if numero1 % 10 == 0 {
    print("\(numero1) es multiplo de 10, dame otro numero: ", terminator:"")
    numero2 = Int(readLine()!) ?? 0 
    
    if numero2 % 10 == 0 {
        print("El número \(numero2) también es múltiplo de 10\n")
    }
    else {
        print("El número \(numero2) no es múltiplo de 10\n")
    }
}
else {
    print("El número \(numero1) no es múltiplo de 10\n")
}

Multiplicar dos números si el primero no es cero (si es cero, avisar de que el resultado será cero)

var numero1 = 0
var numero2 = 0

print("Dime el primer numero: ", terminator:"")
numero1 = Int(readLine()!) ?? 0 

print("Dime el segundo numero: ", terminator:"")
numero2 = Int(readLine()!) ?? 0 

if numero1 == 0 || numero2 == 0 {
    print("Te va a dar cero\n")
}
else {
    print("La multiplicación de \(numero2) y \(numero1) es \(numero1*numero2)\n")
}

Pedirle al usuario un número e indicar si es múltiplo de 2 o de 3 (de cualquiera de ellos, sin importar cuál)

print("Dime un numero: ", terminator:"")
var numero = Int(readLine()!) ?? 0 

if numero % 2 == 0 || numero % 3 == 0 {
    print("El \(numero) es multiplo de 2 o de 3")
}
else {
    print("El \(numero) no es multiplo ni de 2 ni de 3")    
}

Pedirle al usuario un número e indicarle si es múltiplo de 2 y de 3 (a la vez)

print("Dime un numero: ", terminator:"")
var numero = Int(readLine()!) ?? 0 

if numero % 2 == 0 && numero % 3 == 0 {
    print("El \(numero) es multiplo de 2 y de 3")
}
else {
    print("El \(numero) no es múltiplo de 2 y 3 al mismo tiempo")    
}

Pedirle al usuario un número e indicarle si es múltiplo de 2 pero no de 3





Pedirle al usuario un número e indicarle si no es múltiplo de 2 ni de 3





Pedirle al usuario dos números e indicarle si ambos son pares





Pedirle al usuario dos números e indicarle si al menos uno es par





Pedirle al usuario dos números e indicarle si uno y solo uno es par





Pedirle al usuario que escriba dos números e indicarle uno de estos casos: Uno de ellos (pero no los dos) es positivo, los dos son positivos, o ninguno es positivo





Pedirle al usuario que escriba tres números e indicarle cuál es el mayor





Pedirle al usuario que escriba dos números e indicarle si son iguales o cuál es el mayor

var numero1 = 0
var numero2 = 0

print("Dime el primer numero: ", terminator:"")
numero1 = Int(readLine()!) ?? 0 

print("Dime el segundo numero: ", terminator:"")
numero2 = Int(readLine()!) ?? 0 

if numero1 == numero2 {
    print("Los dos números son iguales\n")
}
else if numero1 > numero2 {
    print("El numero \(numero1) es mayor que \(numero2)\n")
}
else {
    print("El numero \(numero2) es mayor que \(numero1)\n")
}

Usar el operador condicional ?: para mostrar el valor absoluto de un número





Usar el operador condicional ?: para detectar el menor de dos números





Utilizar un switch para pedirle al usuario un número del 1 al 10 y escribirlo en letra («uno», «dos», etc.)





Utilizar switch para pedirle al usuario un carácter e indicar el tipo: cifra numérica, signo de puntuación y otro carácter





Utilizar un switch para pedirle al usuario una letra y ver si ha escrito una vocal, un dígito o una consonante





Pedirle al usuario su contraseña numérica mientras no escriba 1111





Pedir un número por teclado e imprimir el cuadrado de dicho número





Pedirle al usuario dos números continuamente y ver cuál es múltiplo de cuál, o si no son múltiplos





Contador descendente de números pares del 26 al 10, usando while





Calcular cuántas cifras tiene un número entero positivo





Utilizando un bucle de tipo repeat while, sumar números positivos hasta que introduzcamos un 0 o un número negativo

var numero:Int, total = 0

repeat {
    print("Dime un numero: ", terminator:"")
    numero = Int(readLine()!) ?? 0 
    total += numero
} while numero > 0

print("Total sumado: \(total)")

Utilizando un bucle de tipo repeat while, pedirle al usuario su identificador y contraseña hasta que no escriba 1234 y 1111 respectivamente





Utilizando un bucle repeat while, pedirle al usuario su identificador y contraseña hasta que no escriba Pedro y Peter respectivamente





Mostrar los números del 10 al 20 ambos incluidos





Contar del 1 al 50 usando for y decir cuales son múltiplos de 3





Mostrar los números divisibles entre 7 y 3 que estén entre el 100 y el 200, usando un bucle for in





Imprimir la tabla de multiplicar del 9 usando for in





Mostrar los 8 primeros números pares





Mostrar del 15 al 5 descendiendo





Bucle infinito para mostrar «Hola» sin parar en pantalla





Bucle infinito para mostrar los enteros positivos a partir del 1





Utilizando bucles anidados, mostrar si los números estre el 10 y el 20 son divisibles entre 5, 6 o 7





Utilizando bucles anidados, mostrar 10 veces los números del 1 al 5, en 10 líneas separadas





Dibujar un cuadrado de asteriscos del ancho y alto que diga el usuario





Imprimir un rectángulo de asteriscos del ancho y alto especificado por el usuario





Dibujar un triángulo de asteriscos creciente, de tantas alturas como diga el usuario





Dibujar un triángulo de asteriscos decreciente, de tantas alturas como diga el usuario





Imprimir los divisores comunes de dos números





Imprimir el máximo común divisor de dos números





Imprimir el máximo común divisor de dos números utilizando un break para terminar cuando se haya encontrado





Imprimir el mínimo común múltiplo de dos números





Imprimir el mínimo común múltiplo de dos números utilizando un break para terminar cuando se haya encontrado





Imprimir una cuenta atrás desde el número introducido por teclado (entre el 1 y el 10)





Adivinar un número prefijado en el programa





Adivinar un número del 1 al 100 (prefijado) en 6 intentos como máximo





Averiguar si un número dado por el usuario es primo





Imprimir los factores primos de un número dado por el usuario





Calcular un número elevado a otro usando multiplicaciones sucesivas





Dibujar un rectángulo hueco, utilizando la altura y la anchura proporcionadas por el usuario





Devolver el cambio de una compra con los billetes y monedas más grandes posibles





Pedirle al usuario edad y año de nacimiento y dar aviso de error en el momento en que introduzca un dato incorrecto (por ejemplo, que ponga «Hola» al pedirle la edad)





Hallar el volumen de una esfera dado su radio. Volumen = pi * radio al cubo * 4/3





Mostrar el valor de y para los primeros 20 valores de x: y = x2 – 1





Calcula el perímetro, área y diagonal de un rectángulo dados su ancho y alto





Pedir al usuario su nombre y su contraseña dos veces, hasta que las dos contraseñas introducidas coincidan





Utilizando funciones

Crear una función que reciba como parámetro la longitud del lado de un cuadrado y lo dibuje utilizando asteriscos





Crear una función que reciba como parámetros la base y la altura de un rectángulo y lo dibuje utilizando asteriscos





Crear una función que reciba como parámetros un carácter y un número y repita ese carácter tantas veces como indique el número





Crear un función que devuelva el cubo de un número real pasado por parámetro





Crear una función para pedirle un número al usuario. Dicha función debe recibir como parámetro el texto a mostrar al usuario y el límite inferior y superior del entero que éste debe introducir, y repetirle que lo introduzca hasta que ponga un número correcto





Crear una función que reciba un entero y devuelva un booleano indicando si el número es primo o no