En este trabajo se emplea RStudio como entorno de desarrollo para ejecutar una serie de ejercicios con el lenguaje de programación R. RStudio facilita la escritura, ejecución y organización del código, permitiendo una interacción eficiente con R mediante una interfaz amigable que incluye un editor de scripts, consola interactiva, panel de objetos y visualización de gráficos. Esta plataforma es ideal para fortalecer y aplicar conocimientos fundamentales en programación, lógica computacional y resolución de problemas matemáticos, ya que ofrece herramientas como autocompletado, gestión de proyectos y depuración que optimizan el proceso de aprendizaje y análisis. Además, RStudio es ampliamente utilizado en ámbitos académicos y profesionales por su capacidad para manejar desde operaciones básicas hasta análisis estadísticos complejos, consolidándose como una herramienta versátil y potente para el trabajo con datos.
Actualmente, el aprendizaje de la programación es una competencia indispensable en el ámbito científico y técnico. Sin embargo, muchas veces los conceptos básicos como operaciones matemáticas, estructuras condicionales y manejo de datos por consola no se practican lo suficiente. Para superar esta barrera, se plantea el desarrollo de 10 ejercicios en el lenguaje R que permitan aplicar los fundamentos de la programación en situaciones reales y comprensibles, como el cálculo de áreas, promedios, comparación de números, entre otros.
El desarrollo de estos ejercicios tiene como finalidad fortalecer las habilidades lógicas y computacionales mediante la resolución de problemas cotidianos aplicando programación en R. Estos ejercicios permiten al estudiante adquirir destrezas en el manejo de variables, operaciones, estructuras de control y validación de datos, competencias claves tanto en análisis de datos como en disciplinas científicas y técnicas. Además, permiten familiarizarse con la sintaxis y características del lenguaje R, abriendo paso a usos más avanzados en estadística, ciencia de datos y automatización de procesos.
Desarrollar un conjunto de programas en lenguaje R que resuelvan problemas matemáticos elementales mediante la aplicación de estructuras de control, operaciones aritméticas y entrada/salida de datos.
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.
1.- En el programa RStudio se hará el uso de distintas funciones entre ellas “as.character” el cual nos servirá para crear una variable de texto ,”readline” permitirá introducir la opción a elegir para convertir ya sea en Fahrenheit o Celsius ,la segunda línea de código permitirá asignar una variable numérica e ingresar respectivamente el valor de la temperatura.
#INGRESAR LA TEMPERATURA
temperatura<-as.numeric(readline("Por favor ingrese la temperatura \n"))
## Por favor ingrese la temperatura
med<-as.character(readline("Si su temperatura esta en Fahrenheit ingrese una F y si esta en Celsiusuna C\n"))
## Si su temperatura esta en Fahrenheit ingrese una F y si esta en Celsiusuna C
2.- En esta ocasión se va a utilizar la función “if” el cual permite evaluar una expresión.
if(med=="F" | med=="f" ) {
Farenheit<- (temperatura*1.8)+32
cat("Los grados de Farenheit es de:", Farenheit, "F")
}else{
Celsius<- (temperatura-32)/1.8
cat("Los grados en Celsius es:", Celsius, "C")
}
## Los grados en Celsius es: NA C
3.- Suponiendo que el usuario ingresó “C” y el valor de la temperatura es 45 ,se puden observar los siguientes resultados:
## Los grados en Celsius es de: 7.222222 C
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.
1.- Se inicia el código en RStudio primero se va a crear las variables horas, costo,extras, las cuales se van a asignar como una variable numérica nos ayudamos con la función “as.numeric” y “readline” permite poder ingresar los valores.
horas<- as.numeric(readline("Ingrese por favor el nC:mero de horas trabajadas:\n"))
## Ingrese por favor el nC:mero de horas trabajadas:
costo<- as.numeric(readline("Ingrese el costo por hora trabajada:\n"))
## Ingrese el costo por hora trabajada:
extras<-as.numeric(readline("ingrese el numero de horas extras trabajadas:\n"))
## ingrese el numero de horas extras trabajadas:
2.- Utilizaremos el comando “cat” para poder desarrollar el cálculo que se solicita.
cat("Sueldo sin horas extras: ", horas*costo)
## Sueldo sin horas extras: NA
cat("Valor por horas extras trabajadas :", extras*((costo/2)+costo))
## Valor por horas extras trabajadas : NA
cat("Sueldo total a recibir: ",(horas*costo+extras*(costo/2)+costo))
## Sueldo total a recibir: NA
3.- Para este ejercicio se desea ingresar los siguientes valores horas: 8, costo: 20,horas extras: 8, para lo cual se obtiene los siguientes resultados.
## Sueldo a recibir sin horas extras : 160
## Valor por horas extras trabajadas : 240
## Sueldo total a recibir : 260
Escribir un programa que lea un entero positivo, n, introducido por el usuario y después 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 = n(n+1)/2\]
1.- Para poder resolver este ejercicio, asignaremos una variable “n” la cual será una variable de tipo numérico, para ello la función “as.numeric” ayudará y “readline” permitirá ingresar los valores numéricos.
n<-as.numeric(readline("Ingrese un nC:mero entero positivo:\n"))
## Ingrese un nC:mero entero positivo:
2.- Se utilizará el comando “cat” para poder desarrollar el cálculo que se solicita y,para calcular la suma, se debe recordar cómo se podrá desarrollar “suma=n(n+1)/2”.
suma<-(n*(n+1)/2)
suma
## [1] NA
cat("LA SUMA DE LOS NC:MEROS ENTEROS POSITIVOS DESDE 1 HASTA",n,"es:", suma)
## LA SUMA DE LOS NC:MEROS ENTEROS POSITIVOS DESDE 1 HASTA NA es: NA
3.- Si el usuario desea ingresar el numero “4” se podrá obtener el siguiente resultado:
## La suma de los enteros positivos desde 1 hasta 4 es : 10
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.
1.- Para poder obtener índice corporal de una persona, se utilizará la siguiente fórmula:
\[(IMC) = Peso(en Kg)/Altura(en m**2)\] 2.- Se inicia el código en RStudio, primero debemos crear las variables necesarias para desarrollar su cálculo y a su vez asignándole sus respectivos mensajes como a continuación se muestra:
kg <- as.numeric(readline("Ingresa tu peso en kilos"))
## Ingresa tu peso en kilos
alt <- as.numeric(readline("Ingresa tu estatura en metros"))
## Ingresa tu estatura en metros
3.- Se creó la variable imc, para los respectivos cálculos, donde se asignaron las anteriores variables, usando ya la fórmula del IMC. Se utilizó el comando cat, el cual va a tener el mensaje “Tú índice de masa corporal es”, además de usar función round, para redondear la respuesta a dos decimales.
imc<- kg/(alt^2)
imc <- round(imc,2)
4.- Una vez ya teniendo el procedimiento, se inicia la ejecución del programa donde suponiendo que el usuario ingresa los siguientes datos, siendo su peso 89 en kg y su estatura de 1,87 metros, se obtuvo la siguiente respuesta:
## Tu índice de masa corporal es de (imc): 25.45
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.
1.- Iniciar el código en RStudio, se deberá crear las variables necesarias, para desarrollar su cálculo se usó la función as.numeric para transformar un vector de caracteres a numéricos, y la función as.integer para un valor entero, por último se utilizó readline para sus respectivos mensajes como a continuación se muestra:
inversión<-as.numeric(readline("Ingrese la cantidad que desea invertir: "))
## Ingrese la cantidad que desea invertir:
interés_anual<-as.numeric(readline("Ingrese el interés anual de inversión: "))
## Ingrese el interés anual de inversión:
años<-as.integer(readline("Ingrese los años plazo: "))
## Ingrese los años plazo:
2.- Usando las variables ya asignadas, se procede a utilizar sus respectivas fórmulas.
interés_anual<-interés_anual/100
capital<-inversión*(1+interés_anual)^años
3.- Por último, se realiza la ejecución del programa, donde el usuario podrá colocar los valores que desee, en este caso, la inversión es de 2700, el interés anual de 12 y 3 años plazo.
## El capital que ha obtenido es de: 3793.306
Realizar un programa que pida el tiempo ya sea en horas, minutos o segundos, luego indicar en qué tipo de tiempo desea transformar y luego presentar el resultado.
1.- Iniciar el código en RStudio, se deberá crear las variables necesarias, para desarrollar su cálculo se usó la función as.numeric para transformar un vector de caracteres a numéricos, y la función as.integer para un valor entero, por último se utilizó readline para sus respectivos mensajes como a continuación se muestra:
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:
2.-Se utilizará la función cat para hacer los cálculos, con sus respectivos mensajes y fórmulas.
cat("El número de horas ingresadas, equivalen a: \n\n", horas*(60/1), "minutos \n\ 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: \n\n", minutos*(1/60), "horas \n\ 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: \n\n", segundos*(1/3600), "horas \n\ y a", segundos*(1/60), "minutos")
## El número de segundos ingresados, equivalen a:
##
## NA horas
## y a NA minutos
3.- Por último, se ejecutará el programa donde el usuario podrá ingresar los datos que desee, siendo 3 el número de horas, 45 minutos y 60 segundos:
## El número de horas ingresadas, equivalen a:
## 180 minutos
## y a 10800 segundos
Escribir un programa en el que se digiten varios números y luego los números se presenten en pantalla ordenados.
1.- Para realizar este programa primero se define una variable, luego a la misma se la asignará como tipo numérico, luego se colocarán los números ingresados como un vector, se hará uso de la función, c ( ), y por último se usara de la función, sort( ), la cual ordenará los números.
a1 <- as.numeric(readline("Ingrese el primer número: "))
## Ingrese el primer número:
a2 <- as.numeric(readline("Ingrese el segundo número: "))
## Ingrese el segundo número:
a3 <- as.numeric(readline("Ingrese el tercer número: "))
## Ingrese el tercer número:
a4 <- as.numeric(readline("Ingrese el cuarto número: "))
## Ingrese el cuarto número:
a5 <- as.numeric(readline("Ingrese el quinto número: "))
## Ingrese el quinto número:
2.- Se utilizará la función for para hacer los cálculos, con sus respectivos mensajes y fórmulas.
números <- c(a1,a2,a3,a4,a5)
cat("Sus números ingresados son ordenados de forma ascendente", sort(números))
## Sus números ingresados son ordenados de forma ascendente
3.- Por último, se ejecutará el programa donde el usuario podrá ingresar los datos que desee, siendo los valores 4, 6, 8, 2 y 1 correspondientemente.
## Sus números ingresados son ordenados de forma ascendente son: 1 2 4 6 8
Escribir un programa que calcule el factorial de un número que ha sido digitado por el usuario.
\[n! = n * (n-1) * (n-2) * ...* 1\] \[1! = 1\] \[2! = 2*1 = 2\] \[3! = 3*2*1 =6\] \[4! = 4*3*2*1 =24\] \[5! = 5*4*3*2*1 =120\] 1.- Para poder realizar el programa primero se define una variable a la cual se le asignará como tipo numérica, luego se utilizará la función, factorial ( ), la función viene por defecto en RStudio y calcula de manera automática el factorial de cualquier número.
a <- as.numeric(readline("Ingrese un número: "))
## Ingrese un número:
2.- Se utilizará la función cat para hacer los cálculos, con sus respectivos mensajes y fórmulas.
cat("La factorial de su número va de 1 hasta", a, " : ",factorial(a) )
## La factorial de su número va de 1 hasta NA : NA
3.- Por último, se ejecutará el programa, en este caso, se calculó el factorial de 5.
## El factorial de 5 es de: 120
Escribir un programa que pida un número e indique si el número es primo o no.
1.- Inicialmente, el usuario deberá conocer un poco acerca de qué números son primos o no.
2.- Crear una variable en donde pida el ingreso de un número. Con el signo % se realizará la operación de división y con ella se obtendrá el cociente del ejercicio y el resultado de si es primo o no; en la parte del resultado, con el uso del número 2 se obtendrá la respuesta de la operación anterior.
x <- as.numeric(readline("Introduzca un número:"))
## Introduzca un número:
x <- 7
pri <- (sum(x/1:x==x%/%1:x))
pri==2
## [1] TRUE
x <- 10
pri <- (sum(x/1:x==x%/%1:x))
pri==2
## [1] FALSE
3.- Por último, se ejecutará el programa, en este caso, se reveló el resultado de 7 y 10.
pri==2
## [1] FALSE
pri==2
## [1] FALSE
Escribir un programa que pida un número e indique si el número es par o impar.
1.- Se inicia el código con la petición de un número a través de la asignación de una variable y el uso de los comandos as.numeric y readline; por otra parte, se crean dos variables más para saber si el número es par o impar. Por último, se ejecuta el código.
y <- as.numeric(readline("Ingrese el número a identificar: "))
## Ingrese el número a identificar:
2.-De igual manera, se asigna una función a las variables par e impar.
par <- y %% 2 == 0
impar <- y %% 2 == 1
cat("El número ingresado es par: ", par)
## El número ingresado es par: NA
cat("El número ingresado es impar: ", impar)
## El número ingresado es impar: NA
3.- Por último, se ejecutará el programa, en este caso, se reveló el resultado de 21.
par
## [1] NA
impar
## [1] NA