INICIO DEL TALLER #2


EJERCICIO 1

PLANTEAMIENTO DEL PROBLEMA:

1. Escribe un programa que solicite los catetos de un triángulo rectángulo y muestre su hipotenusa

FÓRMULA

\[ h = \sqrt{ \ {c_{ad}}^2 \ + {c_{op}}^2 \ }\]

Descripción del programa a realizar

cat(" Programa que de como resultado la hipotenusa ingresando los catetos ")
##  Programa que de como resultado la hipotenusa ingresando los catetos

Ingresar los valores de los catetos y que estos valores sean de tipo númerico

cat_op <- as.numeric(readline( " Ingrese el valor del cateto opuesto: "))
##  Ingrese el valor del cateto opuesto:
cat_ad <- as.numeric(readline( " Ingrese el valor del catero adyacente: "))
##  Ingrese el valor del catero adyacente:

Valores ingresados

cat_ad <- 15
cat_op <- 10

Información de los datos ingresados

cat(" Los valores ingresados son los siguientes: \n", 
    "   Cateto Opuesto = ", cat_op, "\n",
    "   Cateto Adyacente = ", cat_ad)
##  Los valores ingresados son los siguientes: 
##     Cateto Opuesto =  10 
##     Cateto Adyacente =  15

Operación a realizar para obtener la hipotenusa

hipot  <- sqrt((cat_op^2)+(cat_ad^2))

Información sobre el resultado requerido

cat( " La hipotenusa es: ", hipot)
##  La hipotenusa es:  18.02776

EJERCICIO 2

PLANTEAMIENTO DEL PROBLEMA:

2. Escribe un programa que calcule las soluciones de una ecuación de segundo grado de la forma:

FÓRMULA

\[ X = \frac{-b \ + \ \sqrt{b^2 \ + \ 4*a*c}}{2*a}\]

Descripción del programa a realizar:

cat(" Programa que calcule las soluciones de una ecuación de segundo grado de la forma: ")
##  Programa que calcule las soluciones de una ecuación de segundo grado de la forma:

\[ ax^2 \ + \ bx \ + \ c \ = \ 0\] Ingresar los valores de la ecuación de segundo grado:

a <- as.numeric(readline( " Ingrese el valor de a: "))
##  Ingrese el valor de a:
b <- as.numeric(readline( " Ingrese el valor de b: "))
##  Ingrese el valor de b:
c <- as.numeric(readline( " Ingrese el valor de c: "))
##  Ingrese el valor de c:

*Valores Ingresados:

a <- 5
b <- 8
c <- 3

Información de los datos ingresados:

cat(" Los valores ingresados son los siguientes: \n", 
    "   A = ", a, "\n",
    "   B = ", b, "\n",
    "   C = ", c)
##  Los valores ingresados son los siguientes: 
##     A =  5 
##     B =  8 
##     C =  3

Operación a realizar para obtener las soluciones de la ecuación:

raiz <- sqrt((b^2)-(4*a*c))
x1   <- (-b + raiz)/(2*a)
x2   <- (-b - raiz)/(2*a)

Información sobre el resultado requerido:

cat( " Las soluciones de la ecuación son: \n",
     "  x1 = ", x1, "\n",
     "  x2 = ", x2)
##  Las soluciones de la ecuación son: 
##    x1 =  -0.6 
##    x2 =  -1

EJERCICIO 3

\[ Area \ del \ triangulo = \frac{b*h}{2}\]

Calcular el área del triángulo rectángulo dadas su base y altura

Pasos

  1. Calcular el área de un triángulo rectángulo dado su base y altura.

  2. Definir dos variables donde se pueden ingresar el valor de base y altura respectivamente.

  3. Se calcula el área mediante la formula que se pone junto al comando cat que nos enseña la respuesta.

cat(" Programa que calcula el área de un triángulo rectángulo dado su base y su altura") 
##  Programa que calcula el área de un triángulo rectángulo dado su base y su altura
base<-as.numeric(readline("Ingrese el valor de la base del triángulo: "))
## Ingrese el valor de la base del triángulo:
altura<-as.numeric(readline("Ingrese el valor de la altura del triángulo: "))
## Ingrese el valor de la altura del triángulo:
cat("El área total del triángulo es: ",((base*altura)/2))
## El área total del triángulo es:  NA

EJERCICIO 4

PLANTEAMIENTO DEL PROBLEMA:

4. Calcular el área y perímetro de un rectángulo dado su base y altura

PASO 1: HACEMOS QUE EL USUARIO INGRESE POR TECLADO LOS VALORES DEL RECTÁNGULO USANDO EL COMANDO DE READLINE Y EL AS.NUMERIC PARA QUE LOS VALORES INGRESADOS SEAN TIPO NUMÉRICO

cat("Calcular el área y perímetro de un rectángulo dado su base y altura")
## Calcular el área y perímetro de un rectángulo dado su base y altura
b <- as.numeric(readline("Ingrese el valor de la base del rectángulo "))
## Ingrese el valor de la base del rectángulo
a <- as.numeric(readline("Ingrese el valor de la altura del rectángulo "))
## Ingrese el valor de la altura del rectángulo

PASO 2: ASIGNAMOS A LAS VARIABLES LAS FORMULAS PARA EL ÁREA Y PERÍMETRO RESPECTIVAMENTE

area <- a*b
per <- 2*(a+b)

PASO 3: PRESENTAMOS LOS RESULTADOS USANDO LA FUNCIÓN CAT

cat("El área del rectángulo es:",area)
## El área del rectángulo es: NA
cat("El perímetro del rectángulo es:",per)
## El perímetro del rectángulo es: NA

EJERCICIO 5

PLANTEAMIENTO DEL PROBLEMA:

5. Calcular el promedio ingrese 3 notas entre 0 y 20

PASO 1: HACEMOS QUE EL USUARIO INGRESE POR TECLADO LAS NOTAS USANDO EL COMANDO DE READLINE Y EL AS.NUMERIC PARA QUE LOS VALORES INGRESADOS SEAN TIPO NUMÉRICO

cat("Para calcular el promedio ingrese 3 notas entre 0 y 20")
## Para calcular el promedio ingrese 3 notas entre 0 y 20
nota1 <- as.numeric(readline("Ingrese la primera nota "))
## Ingrese la primera nota
nota2 <- as.numeric(readline("Ingrese la segunda nota "))
## Ingrese la segunda nota
nota3 <- as.numeric(readline("Ingrese la tercera nota "))
## Ingrese la tercera nota

PASO 2: ASIGNAMOS A LA VARIABLE PROMEDIO LA FORMULA PARA EL PROMEDIO

promedio <- (nota1+nota2+nota3)/3

PASO 3: PRESENTAMOS LOS RESULTADOS USANDO LA FUNCIÓN CAT

cat("Su promedio es",promedio)
## Su promedio es NA

EJERCICIO 6

\[ Area \ de \ la \ circuferencia=\ π *r^2\] y

\[ Perímentro \ de \ la \ circuferencia=\ 2*π*(r)\]

Calcular el área y perímetro de la circunferencia dado el radio

Pasos

cat(" Programa que calcula el área y perímetro de la circunferencia dado el radio ") 
##  Programa que calcula el área y perímetro de la circunferencia dado el radio
radio<-as.numeric(readline("Ingrese el valor del radio: "))
## Ingrese el valor del radio:
area <-  pi*(radio)^2

perimetro <- 2*pi*(radio)
cat("El perímetro de la circuferencia es: ", perimetro, "\n",
    "El área de la circuferencia es: ", area)
## El perímetro de la circuferencia es:  NA 
##  El área de la circuferencia es:  NA

EJERCICIO 7

PLANTEAMIENTO DEL PROBLEMA:

7. Calcular el área y perímetro de un trapecio dado su base mayor, base menor y altura.

FORMULAS A UTILIZAR

Formula para calcular el perimetro de un trapecio

\[P = A + B + C + D\]

Formula para calcular el area de un trapecio

\[A = \frac{{(A + B) \ * h}}{2}\]

PASO 1: Definimos las dimensiones del trapecio dando datos por teclado

base_mayor <- as.numeric(readline("Ingrese la base mayor ")) 
## Ingrese la base mayor
base_mayor
## [1] NA
base_menor <- as.numeric(readline("Ingrese la base menor "))
## Ingrese la base menor
base_menor
## [1] NA
altura <- as.numeric(readline("Ingrese la altura ")) 
## Ingrese la altura
altura
## [1] NA
lado_izq <- as.numeric(readline("Ingrese el lado izquierdo ")) 
## Ingrese el lado izquierdo
lado_izq
## [1] NA
lado_der <- as.numeric(readline("Ingrese el lado derecho ")) 
## Ingrese el lado derecho
lado_der
## [1] NA

PASO 2: Calculamos el area al igual que mostramos su resultado

area <- (base_mayor + base_menor) * altura / 2
cat("Área del trapecio:", area)
## Área del trapecio: NA

PASO 3: De igual forma calculamos el perimetro y mostramos su resultado

perimetro <- base_mayor + base_menor + lado_izq + lado_der
cat("Perímetro del trapecio:", perimetro)
## Perímetro del trapecio: NA

EJERCICIO 8

PLANTAMIENTO DEL PROBLEMA:

8. Dados dos números, determinar cual es el número mayor y cual es el número menor, si los dos números son iguales el mensaje debe decir que son números iguales

Paso 1: Solicitamos el ingreso dos numeros aleatorios al usuario

num1 <- as.numeric(readline("Ingrese el primer numero: "))
## Ingrese el primer numero:
num1
## [1] NA
num2 <- as.numeric(readline("Ingrese el segundo numero: "))
## Ingrese el segundo numero:
num2
## [1] NA

Paso 2: Determinar si el numero mayor y menor con el condicional IF-ELSE (se debe tomar en cuenta los corchetes)

num1 <- as.numeric(readline("Ingrese el primer número: "))
## Ingrese el primer número:
num2 <- as.numeric(readline("Ingrese el segundo número: "))
## Ingrese el segundo número:
if (!is.na(num1) && !is.na(num2)) {
  if (num1 > num2) {
    cat(num1, "es mayor que", num2, "\n")
    cat(num2, "es menor que", num1, "\n")
  } else if (num1 < num2) {
    cat(num2, "es mayor que", num1, "\n")
    cat(num1, "es menor que", num2, "\n")
  } else {
    cat("Los números son iguales:", num1, "y", num2)
  }
} else {
  cat("Los valores ingresados no son números válidos.")
}
## Los valores ingresados no son números válidos.

EJERCICIO 9

El programa solicita al usuario que ingrese dos números y luego muestra la suma, resta, multiplicación y división de esos dos números.

Descripción

Este programa utiliza la biblioteca svDialogspara solicitar al usuario que ingrese dos números. Luego, realiza las operaciones matemáticas básicas (suma, resta, multiplicación y división) con esos dos números y muestra los resultados en la salida.

Formulas

\[A+B\]

\[A-B\]

\[A*B\]

\[A/B\] ### Script

# Intalar svDialogs para pedir los numeros
install.packages("svDialogs", repos = "http://cran.us.r-project.org")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.3'
## (as 'lib' is unspecified)
library(svDialogs)
# Pedir los dos números
N1 <- dlgInput(message = "Ingrese el primer número")$res
N1 <- as.numeric(N1)
N2 <- dlgInput(message = "Ingrese el segundo número")$res
N2 <- as.numeric(N2)

# Mostrar los dos números ingresados
cat("Los dos números ingresados fueron", N1, "y", N2)
## Los dos números ingresados fueron NA y NA
# Mostrar la suma, la resta, la multiplicación y división de los dos números
cat("Su suma es:", N1 + N2)
## Su suma es: NA
cat("Su resta es:", N1 - N2)
## Su resta es: NA
cat("Su multiplicación es:", N1 * N2)
## Su multiplicación es: NA
cat("Su división es:", N1 / N2)
## Su división es: NA

EJERCICIO 10

Adicional 4

Realice un Programa que pida una cantidad en dC3lares y como resultado se visualice el IVA (12%) y el valor total a pagar

Descripción

Este programa utiliza la biblioteca svDialogspara solicitar al usuario que ingrese una cantidad en dólares. Luego, calcula el valor del IVA (12%) multiplicando el valor ingresado por 0,12. Finalmente, muestra el valor del IVA y el valor total a pagar, que es la suma del valor ingresado y el valor del IVA.

Formulas

\[IVA=V*0.12\]

\[VT = IVA+Valor\] ### Script

# Intalar svDialogs para pedir los números
install.packages("svDialogs")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.3'
## (as 'lib' is unspecified)
library(svDialogs)

# Pedir el valor sin IVA de la compra
cat("Programa que calcula el IVA (12%) y el valor total a pagar")
## Programa que calcula el IVA (12%) y el valor total a pagar
Valor <- dlgInput(message = "Ingrese el valor en dólares")$res
Valor <- as.numeric(Valor)

# Mostrar el valor sin IVA
cat("El valor ingresado fue", Valor, "dólares")
## El valor ingresado fue NA dólares
# Calcular el IVA del valor subtotal multiplicando por 0.12 al valor ingresado
IVA <- Valor * 0.12

# Mostrar el valor del IVA
cat("El 12% es:", IVA, "dólares")
## El 12% es: NA dólares
# Mostrar el valor total a pagar sumando el subtotal y el IVA
cat("El total a pagar es:", Valor + IVA, "dólares")
## El total a pagar es: NA dólares

INICIO DEL TALLER #3


EJERCICIO 1

PLANTEAMIENTO DEL PROBLEMA:

1. Escribir un programa que pida la temperatura y si esta es en Fahrenheit o Celsius y presentar en pantalla su transformación en la otra medida.

Mensaje de lo que se trata el programa

cat(" Programa para transformar de Fahrenheit o Celsius y presentar en pantalla su transformación en la otra medida.")
##  Programa para transformar de Fahrenheit o Celsius y presentar en pantalla su transformación en la otra medida.

Ingreso de los valores correspondientes

temperatura <- as.numeric(readline("Ingrese la temperatura: "))
## Ingrese la temperatura:
unidad <- readline("Ingrese la unidad en mayusculas (F o C): ")
## Ingrese la unidad en mayusculas (F o C):

Valores ingresados:

temperatura <- 36
unidad <- "F"

Operación sobre el pago correspondiente y salida del mensaje

if (unidad == "C") {
  fahrenheit <- (1.8 * temperatura) + 32
  cat("La temperatura en Fahrenheit es: ", fahrenheit, " °F")
} else if (unidad == "F") {
  celsius <- (temperatura - 32) / 1.8
  cat("La temperatura en Celsius es: ", celsius, " °C")
} else {
  cat("Unidad no válida. Por favor, ingrese F o C.")
}
## La temperatura en Celsius es:  2.222222  °C

EJERCICIO 2

PLANTEAMIENTO DEL PROBLEMA:

2. Escribir un programa que pregunte al usuario por el número de horas trabajadas y el coste por hora. Después debe mostrar por pantalla la paga que le corresponde, además debe preguntar si existen horas extras que tienen un valor diferente y con estos valores se calcule la paga correspondiente.

Mensaje de lo que se trata el programa

cat(" Programa que calcule, el pago correspondiente del trabajador por hora")
##  Programa que calcule, el pago correspondiente del trabajador por hora

Ingreso de los valores correspondientes

hora  <- as.numeric(readline(" Ingrese las horas trabajadas (hora): "))
##  Ingrese las horas trabajadas (hora):
coste <- as.numeric(readline(" Ingrese el costo por hora ($):       "))
##  Ingrese el costo por hora ($):

Valores ingresados:

hora <- 40
coste <- 2.5

Operación sobre el pago correspondiente

pago <- hora*coste

Mensaje de salida

cat("   Sus horas trabajadas son de: ", hora, "\n", "  El coste por hora es de:     ", coste, "\n", 
    "  Su pago correspondiente es de: $",pago, "dólares." )
##    Sus horas trabajadas son de:  40 
##    El coste por hora es de:      2.5 
##    Su pago correspondiente es de: $ 100 dólares.

Mensaje para la condicion de horas extras

extra <- as.character(readline(" Dispone de horas extras (si/no): "))
##  Dispone de horas extras (si/no):

Valores ingresados:

extra <- "si"
if (extra == "si") {
  hora1  <- as.numeric(readline(" Ingrese las horas extras trabajadas (hora): "))
  coste1 <- as.numeric(readline(" Ingrese el costo por hora extra ($):        "))
  hora1 <- 15
  coste1 <- 10
  pago1 <- hora1*coste1
  cat("   Sus horas extras trabajadas son de: ", hora1, "\n", "  El coste por hora extra es de:     ", coste1, "\n", 
      "  Su pago correspondiente es de: $",pago1, "dólares." )
} else { 
  cat(" Gracias ")
}
##  Ingrese las horas extras trabajadas (hora): 
##  Ingrese el costo por hora extra ($):        
##    Sus horas extras trabajadas son de:  15 
##    El coste por hora extra es de:      10 
##    Su pago correspondiente es de: $ 150 dólares.

EJERCICIO 3

Escribir un programa que lea un entero positivo, n, introducido por el usuario y despues muestre en pantalla la suma de todos los enteros desde 1 hasta n.

La suma de los n primeros enteros positivos puede ser calculada de la siguiente forma:

\[ Suma= \frac{n(n+1)} {2} \]

Pasos

n <- as.numeric(readline("Ingrese un numero entero positivo :"))
## Ingrese un numero entero positivo :
suma <- (n*(n+1)/2)
cat("La suma de los enteros positivos desde 1 hasta ",n,"es :",suma)
## La suma de los enteros positivos desde 1 hasta  NA es : NA

EJERCICIO 4

PLANTEAMIENTO DEL PROBLEMA:

Escribir un programa que pida al usuario su peso (en kg) y estatura (en metros), calcule el índice de masa corporal y lo almacene en una variable, y muestre por pantalla la frase Tu índice de masa corporal es donde es el índice de masa corporal calculado redondeado con dos decimales

PASO 1: HACEMOS QUE EL USUARIO INGRESE POR TECLADO LOS VALORES DEL PESO Y ALTURA USANDO EL COMANDO DE READLINE Y EL AS.NUMERIC PARA QUE LOS VALORES INGRESADOS SEAN TIPO NUMÉRICO

peso <- as.numeric(readline("Ingrese su peso en kg: ")) 
## Ingrese su peso en kg:
estatura <- as.numeric(readline("Ingrese su estatura en metros: ")) 
## Ingrese su estatura en metros:

PASO 2: ASIGNAMOS A LA VARIABLE IMC LA FORMULA PARA CALCULAR EL IMC

imc <- peso / (estatura^2) 

PASO 3: UTILIZAMOS LA FUNCIÓN “ROUND” PARA REDONDEAR EL IMC EN DOS CIFRAS

imc <- round(imc, 2) 

PASO 5: PRESENTAMOS LOS RESULTADOS USANDO LA FUNCIÓN CAT

cat("Tu índice de masa corporal es", imc)
## Tu índice de masa corporal es NA

EJERCICIO 5

PLANTEAMIENTO DEL PROBLEMA:

Escribir un programa que pregunte al usuario una cantidad a invertir, el interés anual y el número de años, y muestre por pantalla el capital obtenido en la inversión.

PASO 1: HACEMOS QUE EL USUARIO INGRESE POR TECLADO LOS VALORES DEL INTERÉS, AÑOS Y CANTIDAD USANDO EL COMANDO DE READLINE Y EL AS.NUMERIC PARA QUE LOS VALORES INGRESADOS SEAN TIPO NUMÉRICO

cantidad <- as.numeric(readline(prompt = "Ingresa la cantidad a invertir: "))
## Ingresa la cantidad a invertir:
interes <- as.numeric(readline(prompt = "Ingresa el interés anual: "))
## Ingresa el interés anual:
anios <- as.numeric(readline(prompt = "Ingresa el número de años: "))
## Ingresa el número de años:

PASO 2: ASIGNAMOS A LA VARIABLE CAPITAL LA FORMULA

capital <- cantidad * ((1 + (interes/100))^anios)

PASO 5: PRESENTAMOS LOS RESULTADOS USANDO LA FUNCIÓN CAT

cat("El capital obtenido en la inversión es:", capital)
## El capital obtenido en la inversión es: NA

EJERCICIO 6

Fuente: https://www.iteramos.com/pregunta/89805/cambiar-el-tamano-de-la-imagen-en-markdown-en-gitlab

Realizar un programa que pida el tiempo ya sea en horas, minutos o segundos,luego indicar en qui tipo de tiempo desea transformar y luego presentar el resultado.

Pasos

horas <- as.numeric(readline("Ingrese el número de horas a transformar: "))
## Ingrese el número de horas a transformar:
minutos <- as.numeric(readline("Ingrese el número de minutos a transformar: "))
## Ingrese el número de minutos a transformar:
segundos <- as.numeric(readline("Ingrese el número de segundos a transformar: "))
## Ingrese el número de segundos a transformar:
cat("El número de horas ingresadas, equivalen a: ", horas*(60/1), "minutos  y a", horas*(3600/1), "segundos")
## El número de horas ingresadas, equivalen a:  NA minutos  y a NA segundos
cat("El número de minutos ingresados, equivalen a: ", minutos*(1/60), "horas  y a", minutos*(60/1), "segundos")
## El número de minutos ingresados, equivalen a:  NA horas  y a NA segundos
cat("El número de segundos ingresados, equivalen a:  ", segundos*(1/3600), "horas  y a", segundos*(1/60), "minutos")
## El número de segundos ingresados, equivalen a:   NA horas  y a NA minutos

EJERCICIO 7

PLANTEAMIENTO DEL PROBLEMA:

Escribir un programa en el que se digiten varios números y luego los números se presenten en pantalla ordenados

PASO 1: Solicitar al usuario que ingrese números. Algo que podemos agregar es que el divide la entrada en una lista de cadenas usando el espacio como separador.

entrada <- readline("Ingrese varios números separados por espacio: ")
## Ingrese varios números separados por espacio:
numeros <- as.numeric(strsplit(entrada, " ")[[1]])

PASO 2: Implementamos el método de la burbuja para ordenar los números

numeros <- c(5, 3, 8, 2, 1)  # Ejemplo de lista de números

n <- length(numeros)
for (i in 1:(n - 1)) {
  for (j in 1:(n - i)) {
    if (numeros[j] > numeros[j + 1]) {
      # Intercambiar los números si no están en orden ascendente
      temp <- numeros[j]
      numeros[j] <- numeros[j + 1]
      numeros[j + 1] <- temp
    }
  }
}

cat("Lista ordenada:", numeros)
## Lista ordenada: 1 2 3 5 8

PASO 3: Mostrar los números ordenados

cat("Números ordenados:", numeros, "\n")
## Números ordenados: 1 2 3 5 8

EJERCICIO 8

PLANTEAMIENTO DEL PROBLEMA:

Escribir un programa que calcule el factorial de un número que ha sido digitado por el usuario

PASO 1: Solicitar el numero para calcular el factorial

numero <- as.numeric(readline("Ingrese un número para calcular su factorial: "))
## Ingrese un número para calcular su factorial:

PASO 2: Damos el valor de 1 para comienzo del vectorial

factorial_resultado <- 1

PASO 3: Calcular el factorial usando for, podemos agregar que establece un bucle que va desde 1 hasta el número ingresado.

numero <- as.numeric(readline("Ingrese un número: "))
## Ingrese un número:
if (!is.na(numero) && !is.nan(numero)) {
  factorial_resultado <- 1
  
  for (i in 1:numero) {
    factorial_resultado <- factorial_resultado * i
  }
  
  cat("El factorial de", numero, "es", factorial_resultado)
} else {
  cat("El valor ingresado no es un número válido.")
}
## El valor ingresado no es un número válido.

PASO 4 Mostrar el resultado del numero factorial

cat("El factorial de", numero, "es", factorial_resultado, "\n")
## El factorial de NA es 1

EJERCICIO 9

Programa que pregunta un número y determina si es primo

Descripción

El programa solicita al usuario que ingrese un número y luego determina si es un número primo.

Script

install.packages("svDialogs", repos = "http://cran.us.r-project.org")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.3'
## (as 'lib' is unspecified)
library(svDialogs)
cat("Programa que pregunta un número y determina si es un número primo\n")
## Programa que pregunta un número y determina si es un número primo
# Preguntar el número
n <- dlgInput(message = "Ingrese el número que desea saber si es primo o no")$res

# Verificar si el número ingresado es válido
if (is.na(as.numeric(n))) {
  cat("El valor ingresado no es un número válido.")
} else {
  n <- as.numeric(n)
  
  # Condicional para verificar si el número es primo o no
  if (n < 2) {
    cat("El número no es primo.")
  } else {
    es_primo <- TRUE
    for (i in 2:(n-1)) {
      if (n %% i == 0) {
        es_primo <- FALSE
        break
      }
    }
    
    # Mostrar si el número es primo o no
    if (es_primo) {
      cat("El número es primo.")
    } else {
      cat("El número no es primo.")
    }
  }
}
## El valor ingresado no es un número válido.

EJERCICIO 10

Programa que pregunta un número y determina si es par o impar

Descripción

El programa solicita al usuario que ingrese un número y luego determina si es par o impar.

Script

# Instalar svDialogs para pedir los números
install.packages("svDialogs")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.3'
## (as 'lib' is unspecified)
library(svDialogs)
cat("Programa que pregunta un número y determina si es par o impar\n")
## Programa que pregunta un número y determina si es par o impar
# Preguntar el número
n <- dlgInput(message = "Ingrese el número que desea saber si es par o impar")$res

# Verificar si el número ingresado es válido
if (is.na(as.numeric(n))) {
  cat("El valor ingresado no es un número válido.")
} else {
  n <- as.numeric(n)
  
  # Condicional para verificar si el número es par o impar
  if (n %% 2 == 0) {
    cat(n, "es un número par.")
  } else {
    cat(n, "es un número impar.")
  }
}
## El valor ingresado no es un número válido.