INTEGRANTES:
EJERCICIO 1
num_primo<- function(num) {
if (num == 2) {
TRUE
j<-print(" Es número primo")
} else if (any(num %% 2:(num-1) == 0)) {
FALSE
j<-print(" No es número primo")
} else {
TRUE
j<-print(" Es número primo")
}
}
num_primo(6)
## [1] " No es número primo"
Ejercicio 2
-Realizar un algoritmo para determinar cuánto ahorrará una persona en un año, si al final de cada mes deposita cantidades variables de dinero; además, se quiere saber cuánto lleva ahorrado cada mes.
ahorro_persona <- function() {
cantidad <- numeric(12)
for (mes in 1:12) {
}
cat("\nLas cantidades a ahorrar son:", cantidad)
sumaa <- sum(cantidad)
cat("\nEl total a ahorrar en un año es de:", sumaa, "dólares")
# Ahorro acumulado mes a mes:
ahorro_a <- numeric(12)
total_ahorro <- 0
for (mes in 1:12) {
total_ahorro <- total_ahorro + cantidad[mes]
ahorro_a[mes] <- total_ahorro
cat("Mes", mes, "Ahorro acumulado:", total_ahorro, "\n")
}
}
ahorro_persona ()
##
## Las cantidades a ahorrar son: 0 0 0 0 0 0 0 0 0 0 0 0
## El total a ahorrar en un año es de: 0 dólaresMes 1 Ahorro acumulado: 0
## Mes 2 Ahorro acumulado: 0
## Mes 3 Ahorro acumulado: 0
## Mes 4 Ahorro acumulado: 0
## Mes 5 Ahorro acumulado: 0
## Mes 6 Ahorro acumulado: 0
## Mes 7 Ahorro acumulado: 0
## Mes 8 Ahorro acumulado: 0
## Mes 9 Ahorro acumulado: 0
## Mes 10 Ahorro acumulado: 0
## Mes 11 Ahorro acumulado: 0
## Mes 12 Ahorro acumulado: 0
Ejercicio 3
horas<- 0
total_horas<- 0
dias<- c("Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sábado")
salario_sem<-function(num){
for(num in dias){
horas<- as.numeric(readline ("Ingrese las horas que trabajo por dia: "))
total_horas<- total_horas+ horas
sueldo<- total_horas*5.65
print(paste("El", num, "trabajo ", horas, " horas "))
}
cat("Su sueldo a recibir es de: $", sueldo)
}
#Llamanos a la función
salario_sem()
## Ingrese las horas que trabajo por dia:
## [1] "El Lunes trabajo NA horas "
## Ingrese las horas que trabajo por dia:
## [1] "El Martes trabajo NA horas "
## Ingrese las horas que trabajo por dia:
## [1] "El Miercoles trabajo NA horas "
## Ingrese las horas que trabajo por dia:
## [1] "El Jueves trabajo NA horas "
## Ingrese las horas que trabajo por dia:
## [1] "El Viernes trabajo NA horas "
## Ingrese las horas que trabajo por dia:
## [1] "El Sábado trabajo NA horas "
## Su sueldo a recibir es de: $ NA
Ejercicio 4
destino <- function() {
auto1 <- 70
auto2 <- 150
kilometro <- auto1 + (auto2 - auto1)/2
cat("El punto de encuentro de los autis es en el kilómetro:", kilometro )
}
#Llamar función
destino()
## El punto de encuentro de los autis es en el kilómetro: 110
Ejercicio 5
-Una persona adquirió un producto para pagar en 20 meses. El primer mes pagó 10 €, el segundo 20 €, el tercero 40 € y así sucesivamente. Realizar un algoritmo para determinar cuánto debe pagar mensualmente y el total de lo que pagó después de los 20 meses.
mensualidad_pro <- function(pago, acumulador) {
acumulador <- 5
for (pago in 1:20) {
acumulador<- (acumulador * 2)
cat("El pago del mes", pago, "es:", acumulador, "\n")
}
}
#Llamar función
mensualidad_pro()
## El pago del mes 1 es: 10
## El pago del mes 2 es: 20
## El pago del mes 3 es: 40
## El pago del mes 4 es: 80
## El pago del mes 5 es: 160
## El pago del mes 6 es: 320
## El pago del mes 7 es: 640
## El pago del mes 8 es: 1280
## El pago del mes 9 es: 2560
## El pago del mes 10 es: 5120
## El pago del mes 11 es: 10240
## El pago del mes 12 es: 20480
## El pago del mes 13 es: 40960
## El pago del mes 14 es: 81920
## El pago del mes 15 es: 163840
## El pago del mes 16 es: 327680
## El pago del mes 17 es: 655360
## El pago del mes 18 es: 1310720
## El pago del mes 19 es: 2621440
## El pago del mes 20 es: 5242880
Ejercicio 6
-Una empresa les paga a sus empleados con base en las horas trabajadas en la semana. Realice un algoritmo para determinar el sueldo semanal de N trabajadores y, además, calcule cuánto pagó la empresa por los N empleados.
sueldo_semanal <- function(num_emplea) {
total_empresa <- 0
for (i in 1:num_emplea) {
total_horas <- 0
dias <- c("Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado")
cat("Empleado", i, ":\n")
for (num in dias) {
horas <- as.numeric(readline(paste("Ingrese las horas que trabajó el", num, ": ")))
total_horas <- total_horas + horas
}
sueldo <- total_horas * 5.65
total_empresa <- total_empresa + sueldo
cat("El sueldo semanal del empleado", i, "es de: $", sueldo, "\n\n")
}
cat("El total pagado por la empresa a los", num_emplea, "empleados es de: $", total_empresa, "\n")
}
# Llamar función
sueldo_semanal(2)
## Empleado 1 :
## Ingrese las horas que trabajó el Lunes :
## Ingrese las horas que trabajó el Martes :
## Ingrese las horas que trabajó el Miércoles :
## Ingrese las horas que trabajó el Jueves :
## Ingrese las horas que trabajó el Viernes :
## Ingrese las horas que trabajó el Sábado :
## El sueldo semanal del empleado 1 es de: $ NA
##
## Empleado 2 :
## Ingrese las horas que trabajó el Lunes :
## Ingrese las horas que trabajó el Martes :
## Ingrese las horas que trabajó el Miércoles :
## Ingrese las horas que trabajó el Jueves :
## Ingrese las horas que trabajó el Viernes :
## Ingrese las horas que trabajó el Sábado :
## El sueldo semanal del empleado 2 es de: $ NA
##
## El total pagado por la empresa a los 2 empleados es de: $ NA
Ejercicio 7
-Una empresa les paga a sus empleados con base en las horas trabajadas en la semana. Para esto, se registran los días que trabajó y las horas de cada día. Realice un algoritmo para determinar el sueldo semanal de N trabajadores y además calcule cuánto pagó la empresa por los N empleados.
trab<- cat("Número de emplados" ) ; trab <- 5
## Número de emplados
pago<- 0
for(i in 1:trab){
dias<- cat("~Cuantos días trabaja?" ); dias <- 7
horas<- cat("Cuantas horas trabaja?" ); horas <-8
sueldo<- (dias*horas)*5.50
pago<- pago+ (dias*horas)+ sueldo
print(paste( i, "su sueldo es: $", sueldo))
}
## ~Cuantos días trabaja?Cuantas horas trabaja?[1] "1 su sueldo es: $ 308"
## ~Cuantos días trabaja?Cuantas horas trabaja?[1] "2 su sueldo es: $ 308"
## ~Cuantos días trabaja?Cuantas horas trabaja?[1] "3 su sueldo es: $ 308"
## ~Cuantos días trabaja?Cuantas horas trabaja?[1] "4 su sueldo es: $ 308"
## ~Cuantos días trabaja?Cuantas horas trabaja?[1] "5 su sueldo es: $ 308"
print(paste("La empresa paga mensual por los", trab, "trabajadores: $ " , pago))
## [1] "La empresa paga mensual por los 5 trabajadores: $ 1820"
Ejercicio 8
-Hacer un programa que muestre un cronometro, indicando las horas, minutos y segundos.
cronometro<- function(seg)
{
print(seg)
while(seg!=0)
{
Sys.sleep(1)
seg<- seg-1
print(seg)
}
}
cronometro(10)
## [1] 10
## [1] 9
## [1] 8
## [1] 7
## [1] 6
## [1] 5
## [1] 4
## [1] 3
## [1] 2
## [1] 1
## [1] 0
Ejercicio 9
#menu <- function() {
# opcion <- 0
# while (opcion != 4) {
# cat("Menú:\n")
# cat("1. Opción 1\n")
# cat("2. Opción 2\n")
# cat("3. Opción 3\n")
# cat("4. Salir\n")
# opcion <- as.numeric(readline("Seleccione una opción: "))
# if (is.na(opcion)) {
# cat("Por favor, ingrese un número válido.\n")
# } else {
# switch(opcion,
# "1" = cat("Seleccionó la Opción 1"),
# "2" = cat("Seleccionó la Opción 2"),
# "3" = cat("Seleccionó la Opción 3"),
# "4" = cat("Saliendo del programa."),
# cat("Opción no válida. Inténtelo de nuevo.")
# )
# }
# }
#}
# Llamar función
#menu()
Ejercicio 10
-Mostrar en pantalla los N primero número primos. Se pide por teclado la cantidad de números primos que queremos mostrar.
num_primo<- function(num)
{
primo<-numeric()
no_primo<-numeric()
for (i in 1:num)
{
if (sum(i/1:i==i%/%1:i)==2)
{
no_primo<-c(no_primo,i)
} else
{
primo<-c(primo,i)
}
}
primo
no_primo
}
num_primo(11)
## [1] 2 3 5 7 11