
PROGRAMAFICIÓN
R-suelve tus dudas
¡¡DEMUESTRA LO QUE HAS APRENDIDO!!
EJERCICIO 1


SOLUCIÓN:
Nombres= c('Juan', 'Borja', 'Antonio', 'Sara', 'Claudia')
Estatura= c(175, 164, 161, 173, 167)
Peso= c(80, 63, 56, 72, 53)
for (i in 1:length(Peso)){
IMC[i]= Peso[i]/Estatura[i]^2
}
IMC
A= data.frame(Nombres, Peso, Estatura, IMC)
A
pesos=c(runif(100,60,90))
estaturas=c(runif(100,1.60,1.90))
imcs=0
for (i in 1:length(pesos)){imcs[i]= pesos[i]/estaturas[i]^2}
imcs
plot (imcs, col='orange', type='h', xlab='Individuos',
ylab='Indice de masa corporal')
imctotal=0
for (i in 1:100){imctotal=imctotal+imcs[i]}
imcmedio=imctotal/100
imcmedio
if (imcmedio<=15){
p='delgadez muy severa'
} else if (imcmedio>15 & imcmedio<=15.9){
p='delgadez severa'
} else if (imcmedio>16 & imcmedio<=18.4){
p='delgadez'
}else if (imcmedio>18.5 & imcmedio<=24.9){
p='peso saludable'
} else if (imcmedio>25 & imcmedio<=29.9){
p='sobrepeso'
}else if (imcmedio>30 & imcmedio<=34.9){
p='obesidad moderada'
}else if (imcmedio>35 & imcmedio<=39.9){
p='obesidad severa'
}else {p='obesidad muy severa (obesidad mórbida)'}
p
En este primer paso introducimos los datos, calculamos el IMC y creamos nuestra tabla
Generamos dos vectores con números aleatorios y se calcula el IMC de cada uno de los 100 individuos
Calculamos el IMC medio de la población y según la tabla, indicamos su situación


EN R:
COMO 24,575 ESTÁ ENTRE 18,5 Y 24,9, NOS ENCONTRAMOS EN PESO SALUDABLE
EJERCICIO 2

f<-function(k,w,t){
9*exp(-k*t)*cos(w*t)-3.5
}
df<-function(k,w,t){
-9*exp(-k*t)*(k*cos(w*t)+w*sin(w*t))
}
x=0
x[1]=0
k=0.7; w=4; eps=1e-6; tol=2*eps; i=1
while (tol>eps){
i=i+1
x[i]=x[i-1]-f(k,w,x[i-1])/df(k,w,x[i-1])
tol=abs(x[i]-x[i-1])
}
x
tt=seq(0,1,length=300) plot(tt,f(k,w,tt),pch=2,col=’green’,xlab=’tiempo’,ylab=’Desplazamiento’, main=’Oscilacion amort', xlim=c(0,1),ylim=c(-10,6))
par(new=TRUE)
g=0
for (i in 1:300){
g[i]=1} plot(tt,g,type=’l’,xlim=c(0,1),ylim=c(-10,6),xlab=’’,ylab=’’) f(k,w,0.27039776)
EJERCICIO 3

# Método de Crout
n=4 A=matrix(c(3,8,15,log(3),-1,5/4,sin(8),4/3,2,-0.01,pi,0,6,-4,12,2),nrow=n,ncol=n) L=matrix(c(0),nrow=n, ncol=n); U=matrix(c(0),nrow=n, ncol=n)
for (k in 1:n){
for (i in k:n){
suma=0
p=1
while (p <=k-1){
suma=suma+L[i,p]*U[p,k]
p=p+1
}
L[i,k]=A[i,k]-suma
}
for (i in k:n){
suma=0
p=1
while (p <=k-1){
suma=suma+L[k,p]*U[p,i]
p=p+1
} U[k,i]=(A[k,i]-suma)/L[k,k] }
}
L
U
L%*%U