Escribe un programa que diga si un número introducido por teclado es o no primo. Un número primo es aquel que sólo es divisible entre él mismo y la unidad. Nota: Es suficiente probar hasta la raíz cuadrada del número para ver si es divisible por algún otro número.
#x<-as.numeric(readline("Introduzca un numero:"))
x <- sample(1:10,1)
cont <- 0
for (i in 1:x){
if (x%%i==0){
cont <- cont+1
}
}
if (cont==2){
paste(x," es un numero primo")
}else{
paste(x, "no es un numero primo")
}
## [1] "3 es un numero primo"
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.
meses<-c("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio",
"Agosto","Septiembre","Octubre","Noviembre","Diciembre")
deposito<-sample(400:1000,12,replace = F)
Ahorro<-0
for (i in 1:12) {
cat("Ahorro del mes de",meses[i],":",deposito[i],"\n")
Ahorro<-sum(deposito)
}
## Ahorro del mes de Enero : 713
## Ahorro del mes de Febrero : 431
## Ahorro del mes de Marzo : 846
## Ahorro del mes de Abril : 733
## Ahorro del mes de Mayo : 623
## Ahorro del mes de Junio : 826
## Ahorro del mes de Julio : 802
## Ahorro del mes de Agosto : 697
## Ahorro del mes de Septiembre : 404
## Ahorro del mes de Octubre : 763
## Ahorro del mes de Noviembre : 970
## Ahorro del mes de Diciembre : 528
cat("El Ahorro total de un año es de: ",Ahorro)
## El Ahorro total de un año es de: 8336
Una empresa tiene el registro de las horas que trabaja diariamente un empleado durante la semana (seis días) y requiere determinar el total de éstas, así como el sueldo que recibirá por las horas trabajadas.
dias<-c("Lunes","Martes","Miercoles","Jueves","Viernes","Sabado")
pago_por_hora<-0
sueldo<-0
total_horas<-0
for (i in 1:6) {
#horas<-as.numeric(readline(paste("Horas trabajas del dia",dias[i],":")))
horas <- sample(1:10,1)
total_horas<-total_horas+horas
pago_por_hora<-horas*2.21
sueldo<-sueldo+pago_por_hora
}
cat("El sueldo total a recibir por",total_horas," horas trabajadas a la semana es de: ",sueldo)
## El sueldo total a recibir por 27 horas trabajadas a la semana es de: 59.67
Una persona se encuentra en el kilómetro 70 de una carretera, otra se encuentra en el km 150, los coches tienen sentido opuesto y tienen la misma velocidad. Realizar un programa para determinar en qué kilómetro de esa carretera se encontrarán.
persona_A<-70
persona_B<-150
distancia<-persona_B-persona_A
while (distancia>0) {
persona_A<-persona_A+1
persona_B<-persona_B-1
distancia<-persona_B-persona_A
}
paste("Las dos personas se encuentran el kilometro",persona_A)
## [1] "Las dos personas se encuentran el kilometro 110"
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.
cuota<-10
total<-0
for (i in 1:20) {
cuota<-cuota*2
total<-total+cuota
print(paste("El pago del mes",i,"es de:",cuota))
}
## [1] "El pago del mes 1 es de: 20"
## [1] "El pago del mes 2 es de: 40"
## [1] "El pago del mes 3 es de: 80"
## [1] "El pago del mes 4 es de: 160"
## [1] "El pago del mes 5 es de: 320"
## [1] "El pago del mes 6 es de: 640"
## [1] "El pago del mes 7 es de: 1280"
## [1] "El pago del mes 8 es de: 2560"
## [1] "El pago del mes 9 es de: 5120"
## [1] "El pago del mes 10 es de: 10240"
## [1] "El pago del mes 11 es de: 20480"
## [1] "El pago del mes 12 es de: 40960"
## [1] "El pago del mes 13 es de: 81920"
## [1] "El pago del mes 14 es de: 163840"
## [1] "El pago del mes 15 es de: 327680"
## [1] "El pago del mes 16 es de: 655360"
## [1] "El pago del mes 17 es de: 1310720"
## [1] "El pago del mes 18 es de: 2621440"
## [1] "El pago del mes 19 es de: 5242880"
## [1] "El pago del mes 20 es de: 10485760"
paste("El pago total de 20 meses es de: $",total )
## [1] "El pago total de 20 meses es de: $ 20971500"
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.
library(svDialogs)
#empleados<- as.numeric(dlgInput(message="CUANTOS TRABAJADORES TIENE?")$res)
empleados <- sample(1:10,1)
gasto_empresa<- 0
for(i in 1:empleados)
{
#horas<-as.numeric(dlgInput(message="CUANTAS HORAS TRABAJO A LA SEMANA?")$res)
horas <- sample(5:10,1)
gasto_empresa<- gasto_empresa + horas*2.50
sueldo<- horas*2.50
print(paste("EL EMPLEADO", i, "GANA SEMANAL: $", sueldo))
}
## [1] "EL EMPLEADO 1 GANA SEMANAL: $ 20"
## [1] "EL EMPLEADO 2 GANA SEMANAL: $ 12.5"
## [1] "EL EMPLEADO 3 GANA SEMANAL: $ 20"
## [1] "EL EMPLEADO 4 GANA SEMANAL: $ 20"
## [1] "EL EMPLEADO 5 GANA SEMANAL: $ 17.5"
print(paste("LA EMPRESA PAGO POR LOS", empleados, "EMPLEADOS", gasto_empresa))
## [1] "LA EMPRESA PAGO POR LOS 5 EMPLEADOS 90"
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<- as.numeric(dlgInput(message="CUANTOS EMPLEADOS TIENE?")$res)
trab <- sample(1:10,1)
pago<- 0
for(i in 1:trab)
{
#dias<- as.numeric(dlgInput(message="CUANTOS DIAS TRABAJO EN LA SEMANA?")$res)
dias <- sample(5:7,1)
#horas<- as.numeric(dlgInput(message="CUANTOS HORAS TRABAJO EN ESOS DIAS?")$res)
horas <- sample(5:10,1)
sueldo<- (dias*horas)*2.50
pago<- pago+ (dias*horas)+ sueldo
print(paste("EL EMPLEADO", i, "GANA SEMANAL: $", sueldo))
}
## [1] "EL EMPLEADO 1 GANA SEMANAL: $ 75"
## [1] "EL EMPLEADO 2 GANA SEMANAL: $ 120"
## [1] "EL EMPLEADO 3 GANA SEMANAL: $ 157.5"
## [1] "EL EMPLEADO 4 GANA SEMANAL: $ 75"
## [1] "EL EMPLEADO 5 GANA SEMANAL: $ 140"
## [1] "EL EMPLEADO 6 GANA SEMANAL: $ 125"
## [1] "EL EMPLEADO 7 GANA SEMANAL: $ 122.5"
## [1] "EL EMPLEADO 8 GANA SEMANAL: $ 75"
## [1] "EL EMPLEADO 9 GANA SEMANAL: $ 140"
print(paste("LA EMPRESA PAGA SEMANALMENTE POR LOS", trab, "EMPLEADOS: $", pago))
## [1] "LA EMPRESA PAGA SEMANALMENTE POR LOS 9 EMPLEADOS: $ 1442"
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(seg<-as.numeric(dlgInput(message="INGRESE UN NUMERO:")$res))
cronometro(6)
## [1] 6
## [1] 5
## [1] 4
## [1] 3
## [1] 2
## [1] 1
## [1] 0
Realizar un ejemplo de menú, donde podemos escoger las distintas opciones hasta que seleccionamos la opción de “Salir”.
opc1<-cat(
"***********************************************
MENU DE OPCIONES?
***********************************************
*
* 1. OPCION 1
* 2. OPCION 2
* 3. OPCION 3
* 4. SALIR
*
***********************************************
*SELECCIONE UNA OPCION:*")
## ***********************************************
## MENU DE OPCIONES?
## ***********************************************
## *
## * 1. OPCION 1
## * 2. OPCION 2
## * 3. OPCION 3
## * 4. SALIR
## *
## ***********************************************
##
## *SELECCIONE UNA OPCION:*
Mostrar en pantalla los N primero número primos. Se pide por teclado la cantidad de números primos que queremos mostrar.
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
}
PRIMO(10)
## [1] 2 3 5 7