APLICANDO LOS PRIMEROS CONOCIMIENTOS DE RSTUDIO
En este documento se presentan 20 ejercicios de aprendizaje simple y básico para principiantes en la comunidad de RStudio.
AUTORES
COLABORACION
EJERCICIO 1
-Escribir un programa que solicite los catetos de un triángulo rectángulo y muestre su hipotenusa.
FÓRMULA A USAR PARA CALCULAR LA HIPOTENUSA
\[ Hipotenusa = \sqrt{cateto1^{2}+cateto2^{2}} \]
num1<- as.numeric(readline("Ingrese el valor del primer cateto: "))
num1
num2<- as.numeric(readline("Ingrese el valor del segundo cateto: "))
num2
res1<- sqrt((num1^2)+(num2^2))
cat("La hipotenusa del triángulo rectángulo es: ", res1)
## La hipotenusa del triángulo rectángulo es: 8.602325
EJERCICIO 2
Calcule las soluciones de una ecuación de segundo grado.
FÓRMULA DE UNA ECUACIÓN DE SEGUNDO GRADO
\[ x1,x2 = \frac{-b+-\sqrt{b^{2}-4*a*c}}{2*a} \]
a<- as.numeric(readline("Ingrese el valor de a: "))
b<- as.numeric(readline("Ingrese el valor de b: "))
c<- as.numeric(readline("Ingrese el valor de c: "))
x1<- (-b+(sqrt(b^2-4*a*c)))/2*a
x2<- (-b-(sqrt(b^2-4*a*c)))/2*a
cat("La solución x1 es: ", x1)
cat("La solución x2 es: ", x2)
## La solución x1 es: 14
## La solución x2 es: -49
EJERCICIO 3
Calcular el área de un triángulo rectángulo.
FÓRMULA DEL ÁREA DEL TRIÁNGULO RECTÁNGULO
\[ Área = \frac{base*altura}{2} \]
ar1<- as.numeric(readline("Ingrese la base del triángulo: "))
ar2<- as.numeric(readline("Ingrese la altura del triángulo: "))
area<-(ar1*ar2)/2
cat("El área del triángulo ingresado es: ", area)
## El área del triángulo ingresado es: 17.5
EJERCICIO 4
Calcular el área y el perímetro de un rectángulo dado su base y altura.
FÓRMULA DEL ÁREA DEL RECTÁNGULO
\[ Área \ del \ rectangulo = base * altura\] FÓRMULA DEL PERÍMETRO DEL RECTÁNGULO
\[ Perímetro \ del \ rectangulo = 2(altura + base)\]
base<- as.numeric(readline("Ingrese el valor de la base: "))
altura<- as.numeric(readline("Ingrese el valor de la altura: "))
area<-base*altura
perimetro<-(2*base)+(2*altura)
cat("El área del rectángulo es: ", area)
cat(" El perímetro del rectángulo es: ", perimetro)
## El área del rectángulo es: 270
## El perímetro del rectángulo es: 66
EJERCICIO 5
Calcular el promedio de tres notas que esten entre 0 y 20
CÁLCULO PARA SACAR PROMEDIOS
\[Promedio = \frac{(nota1+nota2+nota3)}{3}\]
not1<- as.numeric(readline("Ingrese la primera nota: "))
not2<- as.numeric(readline("Ingrese la segunda nota: "))
not3<- as.numeric(readline("Ingrese la tercera nota: "))
notas<-(not1+not2+not3)/3
cat("El promedio de las tres notas ingresadas es: ", notas)
## El promedio de las tres notas ingresadas es: 18.66667
EJERCICIO 6
Calcular el área de una circunferencia dado el radio.
FÓRMULA PARA OBTENER EL ÁREA DE UN CÍRCULO
\[Área \ Circunferencia = \pi*r^2\]
Calcular el perímetro de una circunferencia dado el radio.
FÓRMULA PARA CALCULAR EL PERÍMETRO DE UN CÍRCULO
\[Perímetro\ Circunferencia = 2\pi*radio\]
radio1<- as.numeric(readline("Ingrese el radio de la circunferencia: "))
area1<-(pi*radio1)^2
perimetro1<- (2*pi*radio1)
cat("El área de la circunferencia es: ", area1)
cat("El perímetro de la circunferencia es: ", perimetro1)
## El área de la circunferencia es: 355.3058
## El perímetro de la circunferencia es: 37.69911
EJERCICIO 7
Calcular el área de un trapecio dado su base menor, base mayor y altura.
FÓRMULA PARA OBTENER EL ÁREA DE UN TRAPECIO
\[Área \ Trapecio = (\frac {Base\ mayor + Base\ menor}{2})*altura\]
B<- as.numeric(readline("Ingrese la base mayor del trapecio: "))
b<- as.numeric(readline("Ingrese la base menor del trapecio: "))
h<- as.numeric(readline("Ingrese la altura del trapecio: "))
area2<-((B+b)/2)*h
cat("El área del trapecio es: ", area2)
## El área del trapecio es: 72
EJERCICIO 8
n1<- as.numeric(readline("Ingrese el número uno: "))
n2<- as.numeric(readline("Ingrese el número dos: "))
sol1<- n1>n2
sol2<- n2>n1
sol3 <- n1==n2
cat("El número ", n1, "es mayor a ", n2, "->", sol1)
cat("El número ", n2, "es mayor a ", n1, "->", sol2)
cat("El número ", n1, "es igual a ", n2, "->", sol3)
## El número 12 es mayor a 5 -> TRUE
## El número 5 es mayor a 12 -> FALSE
## El número 12 es igual a 5 -> FALSE
EJERCICIO 9
Escribe un programa que lea dos números y muestre en las salidas su suma, resta, multiplicación y división
CÁLCULO PARA OBTENER SUMAS
\[Suma = número1+número2\] CÁLCULO PARA OBTENER RESTAS
\[Resta = número1-número2\] CÁLCULO PARA OBTENER MULTIPLICACIONES
\[Multiplicación = número1*número2\] CÁLCULO PARA OBTENER DIVISIONES
\[División = número1/número2\]
nu1<- as.numeric(readline("Ingrese el número uno: "))
nu2<- as.numeric(readline("Ingrese el número dos: "))
suma<-nu1+nu2
resta<-nu1-nu2
multiplicacion<-nu1*nu2
division<-nu1/nu2
cat("La suma de los números ingresados es: ", suma, "\n",
"La resta de los números ingresados es: ", resta, "\n",
"La multiplicación de los números ingresados es: ", multiplicacion, "\n", "La división de los números ingresados es: ", division)
## La suma de los números ingresados es: 13
## La resta de los números ingresados es: 3
## La multiplicación de los números ingresados es: 40
## La división de los números ingresados es: 1.6
EJERCICIO 10
Ingresar la cantidad en dólares y devuelva el valor del iva y su total.
FÓRMULA PARA OBTENER EL IVA DE UN VALOR
\[IVA = Subtotal* 0.12\] FÓRMULA PARA OBTENER EL TOTAL DEL IVA MAS SUBTOTAL
\[Total = IVA + Subtotal\]
dolares<- as.numeric(readline("Ingrese la cantidad en dólares: "))
iva<-dolares*0.12
total<-iva+dolares
cat("El valor del IVA es de: ", iva)
cat("El valor total a pagar es de: ", total)
## El valor del IVA es de: 12
## El valor total a pagar es de: 112
EJERCICIO 1
Escribir un programa que pida la temperatura y si esta es en Fahrenheit o Celsius y presentar en pantalla su transformacion en la otra medida. Ingresar el valor en los grados que tiene el dato, y en el otro colocar 0.
FÓRMULA PARA CALCULAR GRADOS FAHRENHEIT
\[Fahrenheit = celcius * \frac{9}{5}+32\] FÓRMULA PARA CALCULAR GRADOS CELCIUS
\[Celcius = fahrenheit - 32 * \frac{5}{9}\]
a <- as.numeric(readline("Ingrese los grados celsius: "))
b <- as.numeric(readline("Ingrese los grados fahrenheit: "))
Celsius <- ((b - 32) * (5/9))
Fahrenheit <- (a * (9/5) + 32)
cat("La transformación a grados Celsius es: ", Celsius)
cat("La transformación a grados Fahrenheit es: ", Fahrenheit)
## La transformación a grados Celsius es: -17.77778
## La transformación a grados Fahrenheit es: 100.4
EJERCICIO 2
Escribir un programa que pregunte al usuario por el número de horas trabajadas y el coste por horas. Despues debe mostrar por pantalla la paga que le corresponde, ademas debe preguntar si existen horas extras que tienen un valor diferente y con estos valores se calcule la paga correspondiente.
PROGRAMA PARA CALCULAR EL SUELDO A RECIBIR MAS HORAS EXTRAS
\[Sueldo = sueldo\ mensual+(horas\ extras*(valor\ hora+1.5))\]
horast<-as.numeric(readline("Ingrese el numero de horas trabajadas: "))
costoh<-as.numeric(readline("Ingrese el coste por horas: "))
sueldo<-horast*costoh
horase<-as.numeric(readline("Ingrese el numero de horas extras: "))
sueldot<-sueldo+(horase*(costoh+1.5))
cat("El sueldo total a recibir es de $",sueldot,"dolares")
## El sueldo total a recibir es de $ 1375 dolares
EJERICIO 3
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 números positivos puede ser calculada de la siguiente manera suma = n(n+1)/2.
CÁLCULO DE UN VALOR N Y LA SUMA DE SUS ANTERIORES
\[VALORT = numero*\frac{numero+1}{2}\]
SECUENCIA DESDE 1 HASTA NUMERO
\[Suma1 <- (1:número)\] FUNCIÓN PARA SUMAR LOS ACUMULADOS
\[Respuesta <- cumsum(Suma1)\]
num1 <- as.integer(readline("Ingrese el valor del entero:"))
suma <- num1* (num1+1)/2
suma
suma1 <-(1:num1)
respuesta<- cumsum(suma1)
cat("Los números a sumar son: ", suma1)
cat("El resultado acumulado de la suma de dichos números se expresa así: ", respuesta)
## [1] 55
## Los números a sumar son: 1 2 3 4 5 6 7 8 9 10
## El resultado acumulado de la suma de dichos números se expresa así: 1 3 6 10 15 21 28 36 45 55
EJERCICIO 4
Escribir un programa que pida al usuario su peso (en kg) y la estatura (en metros) calcule el Índice de masa corporal y almacene en una variable, y muestre por pantalla la frase “Tu Índice de masa corporal es
FÓRMULA PARA CALCULAR EL INDICE DE MASA CORPORAL
\[IMC=\frac{peso}{altura^2}\]
peso<-as.numeric(readline("Ingrese su peso en kg: "))
altura<-as.numeric(readline("Ingrese su altura en metros: "))
imc <- round(abs(peso / altura^2),2)
gr<-imc>=30
fl<-imc<=18
no<-imc>18 & imc<30
cat("Tu índice de masa corporal es: ", imc)
cat("Usted tiene sobrepeso: ", gr)
cat("Usted esta demasiado delgado para su estatura: ", fl)
cat("Usted está en su imc normal: ", no)
## Tu índice de masa corporal es: 24.22
## Usted tiene sobrepeso: FALSE
## Usted esta demasiado delgado para su estatura: FALSE
## Usted está en su imc normal: TRUE
EJERCICIO 5
Escribir un programa que pida al usuario una cantidad a invertir, el interés anual y el número en años, y muestre por pantalla el capital obtenido en la inversión.
CÁLCULO PARA REALIZAR INVERSIONES
\[Inversion = Valor \ invertir + (valor \ invertir * intereses) * tiempo \ invertir\]
cantidad <- as.numeric(readline("Ingrese la cantidad que desea invertir: "))
interes <- as.numeric(readline("Ingrese el interes anual: "))
tiempo <- as.numeric(readline("Ingrese el numero de años: "))
total_inversion <- cantidad + (cantidad * interes) * tiempo
cat("El total de su inversion es de: ", total_inversion, " dolares")
## El total de su inversion es de: 7250 dolares
EJERCICIO 6
cat("Ingrese los valores en la variable de su eleccion siendo", "\n", "h = Horas; m = Minutos y s = Segundos, en la variable no elegida colocar 0")
h <- as.numeric(readline("Ingrese la cantidad en horas: "))
m <- as.numeric(readline("Ingrese la cantidad en minutos: "))
s <- as.numeric(readline("Ingrese la cantidad en segundos: "))
horas_segundos <- h*3600
horas_minutos <- h*60
minutos_horas <- m/60
minutos_segundos <- m*60
segundos_horas <- s/3600
segundos_minutos <- s/60
cat("La transformación de ",h , "horas a segundos es: ", horas_segundos)
cat(" La transformación de ",h , "horas a minutos es: ", horas_minutos)
cat(" La transformación de ",m , "minutos a horas es: ", minutos_horas)
cat(" La transformación de ",m , "minutos a segundos es: ",minutos_segundos)
cat(" La transformación de ",s , "segundos a horas es: ", segundos_horas)
cat(" La transformación de ",s , "segundos a minutos es: ", segundos_minutos)
## Ingrese los valores en la variable de su eleccion siendo
## h = Horas; m = Minutos y s = Segundos, en la variable no elegida colocar 0
## La transformación de 3 horas a segundos es: 10800
## La transformación de 3 horas a minutos es: 180
## La transformación de 18 minutos a horas es: 0.3
## La transformación de 18 minutos a segundos es: 1080
## La transformación de 30 segundos a horas es: 0.008333333
## La transformación de 30 segundos a minutos es: 0.5
EJERCICIO 7
numeros<-scan()
numeros<-sort(numeros,decreasing=FALSE)
cat("Los numeros ordenados de forma ascendente son:","\n", numeros)
## Los numeros ordenados de forma ascendente son:
## 1 2 15 1658 1695
EJERCICIO 8
Escribir un programa que calcule un factorial del numero que ha sido digitado por el usuario.
FÓRMULA PARA CALCULAR FACTORIAL
\[Factorial = \frac {n!}{(n-r)!}\]
n1 <- as.numeric(readline("Ingrese el número que desea calcular su factorial: "))
n_factorial <-(1:n1)
respuesta<- prod(n_factorial)
factorial1 <- factorial(n1) ; factorial1
cat("Los números a multiplicar son: ", n_factorial)
cat("El factorial de: ",n1, " es ", respuesta)
## [1] 720
## Los números a multiplicar son: 1 2 3 4 5 6
## El factorial de: 6 es 720
EJERCICIO 9
num5<-as.integer(readline("INGRESE UN NUMERO: "))
residuo<-(sum(num5/1:num5==num5%/%1:num5))
if(residuo==2)
{
cat("EL NUMERO", num5, "ES PRIMO")
}else
{
cat("EL NUMERO",num5, "NO ES PRIMO")
}
## EL NUMERO 7 ES PRIMO
EJERCICIO 10
num3<-as.numeric(readline("Ingrese el numero para verificar si es par o impar: "))
par<-num3%%2==0
impar<-num3%%2==1
cat("El numero ingresado es par: ",par)
cat("El numero ingresado es impar: ",impar)
## El numero ingresado es par: FALSE
## El numero ingresado es impar: TRUE