UNIVERSIDAD CENTRAL DEL ECUADOR

FACULTAD DE CIENCIAS ECONÓMICAS

CARRERA DE ESTADÍSTICA



PRIMERAS PRACTICAS EN R 10

Manual

En el siguiente texto podremos encontrar una serie de códigos elaborados en el programa Rstudio que darán solución a un determinado ejercicio enfocados principalmente en la creacion de ciclos repetitivos.

Ejercicio 1

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.

  1. Comenzaremos por asignar un nombre, seguido utilizaremos la funcion function():
primo <- function()

dentro del parentesis pondremos la variable a la que le vamos a aplicar la funcion

  1. Finalmente pondremos lo que queremos que realice con la variable, para este caso utilizaremos el condicionante if y else
{
 num4<-as.integer(readline("INGRESE UN NUMERO "))
 if(sum(num4/1:num4==num4%/%1:num4)==2){
   (m <- paste0("EL NUMERO ", num4 , " ES PRIMO "))
 }else{(m <- paste0("EL NUMERO ", num4, " NO ES PRIMO"))}
}

Ejecución del código en R

SINTAXIS COMPLETA
##EJERCICIO 1

primo <- function()
{
  num4<-as.integer(readline("INGRESE UN NUMERO "))
  if(sum(num4/1:num4==num4%/%1:num4)==2){
    (m <- paste0("EL NUMERO ", num4 , " ES PRIMO "))
  }else{(m <- paste0("EL NUMERO ", num4, " NO ES PRIMO"))}
}
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.

  1. Comenzaremos por asignar valores a contadores que comiencen en 0 y haremos un vector con los nombres de los meses:
total<- 0
ahorro<- 0
mes<- c("ENERO","FEBRERO","MARZO","ABRIL","MAYO","JUNIO","JULIO",
     "AGOSTO","SEPTIEMBRE","OCTUBRE", "NOVIEMBRE", "DICIEMBRE")
  1. Finalmente utilizaremos un bucle for() con los argumentos necesarios para hacer este programa
for(i in mes)
{
 ahorro<- as.numeric(readline("INGRESE LA CANTIDAD A AHORRAR:"))
 total<- total+ahorro
 print(paste("EN", i, "LLEVAS: $",total, "DE AHORRO"))
}

Ejecución del código en R

SINTAXIS COMPLETA
##EJERCICIO 2

total<- 0
ahorro<- 0
mes<- c("ENERO","FEBRERO","MARZO","ABRIL","MAYO","JUNIO","JULIO",
      "AGOSTO","SEPTIEMBRE","OCTUBRE", "NOVIEMBRE", "DICIEMBRE")
for(i in mes)
{
  ahorro<- as.numeric(readline("INGRESE LA CANTIDAD A AHORRAR:"))
  total<- total+ahorro
  print(paste("EN", i, "LLEVAS: $",total, "DE AHORRO"))
}
print(paste("EN EL AÑO AHORRASTE: $",total))

Ejercicio 3

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.

  1. Comenzaremos por asignar valores a contadores que comiencen en 0 y haremos un vector con los nombres de los dias:
horas<- 0
total_horas<- 0
dias<- c("LUNES", "MARTES", "MIERCOLES", "JUEVES", "VIERNES", "SABADO")
  1. Finalmente utilizaremos un bucle for() con los argumentos necesarios para hacer este programa
for(i in dias)
 {
 horas<- as.numeric(readline("¿CUANTAS HORAS TRABAJO?"))
 total_horas<- total_horas+ horas
 sueldo<- total_horas*2.50
 print(paste("EL", i, "TRABAJO", horas, "HORAS"))
 }

Ejecución del código en R

SINTAXIS COMPLETA
##EJERCICIO 3

horas<- 0
total_horas<- 0
dias<- c("LUNES", "MARTES", "MIERCOLES", "JUEVES", "VIERNES", "SABADO")
for(i in dias)
  {
  horas<- as.numeric(readline("¿CUANTAS HORAS TRABAJO?"))
  total_horas<- total_horas+ horas
  sueldo<- total_horas*2.50
  print(paste("EL", i, "TRABAJO", horas, "HORAS"))
  }
print(paste("EL SUELDO QUE RECIBIRA ES DE: $", sueldo))

Ejercicio 4

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.

  1. Comenzaremos por asignar valores a la persona1 y persona2:
persona1<- 70
persona2<- 150
kilometro<-0
  1. Finalmente utilizaremos un bucle while() con los argumentos necesarios para hacer este programa
while(persona1 == persona2)
{
 persona1<- persona1+1
 persona2<- persona2-1
 kilometro<- persona2-persona1
 print(paste("SE ENCONTRARON EN EL KILOMETRO", kilometro))
}

Ejecución del código en R

SINTAXIS COMPLETA
##EJERCICIO 4

persona1<- 70
persona2<- 150
kilometro<-0
while(persona1 == persona2)
{
  persona1<- persona1+1
  persona2<- persona2-1
  kilometro<- persona2-persona1
  print(paste("SE ENCONTRARON EN EL KILOMETRO", kilometro))
}

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.

  1. Comenzaremos por asignar valores al pago y al total:
pago<-  10
total<- 0
  1. Finalmente utilizaremos un bucle for() con los argumentos necesarios para hacer este programa
for(i in 1:20)
 {
 pago<- pago*2
 total<- total + pago
 print(paste("EN EL MES", i, "PAGARAS: $", pago))
 }

Ejecución del código en R

SINTAXIS COMPLETA
##EJERCICIO 5

pago<-  10
total<- 0
for(i in 1:20)
  {
  pago<- pago*2
  total<- total + pago
  print(paste("EN EL MES", i, "PAGARAS: $", pago))
  }
print(paste("EL TOTAL QUE PAGASTE EN 20 MESES ES DE: $", total))

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.

  1. Comenzaremos por asignar valores al gasto de la empresa y con ayuda de la funcion readline() tomaremos el valor que entre por la consola del numero de trabajadores que tiene la empresa:
empleados<- as.numeric(readline("CUANTOS TRABAJADORES TIENE?"))
gasto_empresa<- 0
  1. Finalmente utilizaremos un bucle for() con los argumentos necesarios para hacer este programa
for(i in 1:empleados)
 {
 horas<-as.numeric(readline("CUANTAS HORAS TRABAJO A LA SEMANA?"))
 gasto_empresa<- gasto_empresa + horas*2.50
 sueldo<- horas*2.50
 print(paste("EL EMPLEADO", i, "GANA SEMANAL: $", sueldo))
 }

Ejecución del código en R

SINTAXIS COMPLETA
##EJERCICIO 6

empleados<- as.numeric(readline("CUANTOS TRABAJADORES TIENE?"))
gasto_empresa<- 0
for(i in 1:empleados)
  {
  horas<-as.numeric(readline("CUANTAS HORAS TRABAJO A LA SEMANA?"))
  gasto_empresa<- gasto_empresa + horas*2.50
  sueldo<- horas*2.50
  print(paste("EL EMPLEADO", i, "GANA SEMANAL: $", sueldo))
  }
print(paste("LA EMPRESA PAGO POR LOS", empleados, "EMPLEADOS", gasto_empresa))

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.

  1. Comenzaremos por asignar valores al pago y con ayuda de la funcion readline() tomaremos el valor que entre por la consola de los empleados que tiene la empresa:
trab<- as.numeric(readline("CUANTOS EMPLEADOS TIENE?"))
pago<- 0
  1. Finalmente utilizaremos un bucle for() con los argumentos necesarios para hacer este programa
for(i in 1:trab)
 {
 dias<- as.numeric(readline("CUANTOS DIAS TRABAJO EN LA SEMANA?"))
 horas<- as.numeric(readline("CUANTOS HORAS TRABAJO EN ESOS DIAS?"))
 sueldo<- (dias*horas)*2.50
 pago<- pago+ (dias*horas)+ sueldo
 print(paste("EL EMPLEADO", i, "GANA SEMANAL: $", sueldo))
 }

Ejecución del código en R

SINTAXIS COMPLETA
##EJERCICIO 7

trab<- as.numeric(readline("CUANTOS EMPLEADOS TIENE?"))
pago<- 0
for(i in 1:trab)
  {
  dias<- as.numeric(readline("CUANTOS DIAS TRABAJO EN LA SEMANA?"))
  horas<- as.numeric(readline("CUANTOS HORAS TRABAJO EN ESOS DIAS?"))
  sueldo<- (dias*horas)*2.50
  pago<- pago+ (dias*horas)+ sueldo
  print(paste("EL EMPLEADO", i, "GANA SEMANAL: $", sueldo))
  }
print(paste("LA EMPRESA PAGA SEMANALMENTE POR LOS", trab, "EMPLEADOS: $", pago))

Ejercicio 8

Hacer un programa que muestre un cronometro, indicando las horas, minutos y segundos.

  1. Comenzaremos por asignar un nombre, seguido utilizaremos la funcion function():
cronometro<- function(seg)

dentro del parentesis pondremos la variable a la que le vamos a aplicar la funcion

  1. Finalmente pondremos lo que queremos que realice con la variable, para este caso utilizaremos el condicionante while
print(seg)
 while(seg!=0)
 {
   Sys.sleep(1)
   seg<- seg-1
   print(seg)

Ejecución del código en R

SINTAXIS COMPLETA
##EJERCICIO 8

cronometro<- function(seg)
{
  print(seg)
  while(seg!=0)
  {
    Sys.sleep(1)
    seg<- seg-1
    print(seg)
  }
}
cronometro(seg<-as.numeric(readline("INGRESE UN NUMERO:")))

Ejercicio 9

Realizar un ejemplo de menú, donde podemos escoger las distintas opciones hasta que seleccionamos la opción de “Salir”.


Ejecución del código en R

SINTAXIS COMPLETA
##EJERCICIO 9

opc1<-readline("***********************************************
                                    MENU DE OPCIONES?
***********************************************
*                                             
*                       1. OPCION 1           
*                       2. OPCION 2           
*                       3. OPCION 3           
*                       4. SALIR              
*                                             
***********************************************

*SELECCIONE UNA OPCION:*")

Ejercicio 10

Mostrar en pantalla los N primero número primos. Se pide por teclado la cantidad de números primos que queremos mostrar.

  1. Comenzaremos por asignar un nombre, seguido utilizaremos la funcion function():
PRIMO<- function(num)

dentro del parentesis pondremos la variable a la que le vamos a aplicar la funcion

  1. Finalmente pondremos lo que queremos que realice con la variable, para este caso utilizaremos el condicionante if y else
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

Ejecución del código en R

SINTAXIS COMPLETA
##EJERCICIO 10

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(num<-as.numeric(readline("HASTA QUE NUMERO PRIMO QUIERE?")))
COLABORADOR: Phd.Francisco Valverde Alulema.