## [1] 439
Al leer la serie de las variaciones del precio de la accion obtenemos que el precio resultante de la accion es P=439
## [1] "el primer precio repetido es ' 124645 ' en la iteración 139891"
El primer valor del precio de la accion que se repitio al menos dos veces segun la lista de variaciones fue de P= $124,645 en la iteracion numero 139,891
NOTA: La funcion ‘precio.rep’ implementada en este ejercicio se encuentra en Anexo1.
## [1] "la suma de todos los multiplos de 3 y 5 menores a 'x= 1000 ' son: 233168"
La suma de todos los multiplos de 3 y 5 menores a 1000 es: 233,168 La funcion ‘secuencia’ calcula la suma de todos los multiplos de 3 y 5 menores a 1000
NOTA: La funcion ‘secuencia’ implementada en este ejercicio se encuentran en Anexo2
## [1] "Los numeros pares son: 2 8 34 144 610 2584 10946 46368 196418 832040 3524578 14930352 63245986 267914296"
## [1] "Los numeros impares son: 1 3 5 13 21 55 89 233 377 987 1597 4181 6765 17711 28657 75025 121393 317811 514229 1346269 2178309 5702887 9227465 24157817 39088169 102334155 165580141 433494437 701408733"
## [1] "Z = X/Y = 4.23606797926205"
Arroja los primeros 43 valores de la serie de fibonacci tales que el mayor numero de ellos es menor o igual a 1,000,000,000
Lo que se implemento fue una funcion ‘fibonacci’ que arroja los primeros terminos de la sucesion de fibonacci tales que el mayor numero de la serie no exceda el valor que se le asigna a la funcion fibonacci, en este caso 1,000,000,000
Luego implemente la funcion ‘pares’ que arroja los numeros pares e los impares de la serie calculada previamente y el valor de Z=x/y=4.23606797926205
NOTA:Las funciones ‘fibonacci’ y ‘pares’ implementada en este ejercicio se encuentran en Anexo3
a=c(2,15,30,45,60,75,90,105,120,135,145) #tomo una muestra
serie=c()
for(i in 1:length(a)){
serie[i]=list(fibonacci1(a[i]))
}
b=c()
for(i in 1:length(a)){
b[i]=freq.pares(serie[[i]])
}
## [1] 1.857143
## [1] 0.5151515
## [1] 0.2048193
## [1] 0.1278195
## [1] 0.09289617
## [1] 0.07296137
## [1] 0.06007067
## [1] 0.05105105
## [1] 0.04438642
## [1] 0.03926097
## [1] 0.03645461
data<- data.frame(n = a,Z = b)
plot(data)
La grafica muestra como las observaciones de Z=x/y se van haciendo mas pequeñas en cuanto el valor de n incrementa.
La funcion ‘freq.pares’ calcula el cociente de los numeros impares entre los pares y la funcion ‘fibonacci1’ calcula la serie de fibonacci segunla cantidad de elementos que tenga la serie; a diferencia de la funcion implementada en el ejercicio anterior que era segun el valor de los terminos de la serie.
NOTA: Las funciones ‘freq.pares’ y ‘fibonacci1’ implementadas en este ejercicio se encuentran en Anexo 4
Se observa un decremento en la proporción porque en cuanto crece n entonces la proporción de numeros primos se va haciendo menor.
NOTA: la funcion ‘muestra.primos’ implementada en este ejercicio se encuentra en el Anexo5 la cual devuelve cuantos primos hay en el intervalo (1:x)
X <- rnorm(1,0,1)
y<- x^2
(Cov <- mean(x - mean(x))*mean(y - mean(y)))
## [1] 0
Un contraejemplo es la Covarianza tal como se observa en el contrajemplo
vector<-datos[,1] #convierto data frame en vector
precio<- c()
precio.rep <- function(vector) {
for(i in 1:250){ #ciclo de las repeticiones del vector
vector1 <- rep(vector,times=i)
for(j in (length(vector1)-length(vector)+1):length(vector1)){ #ciclo de la suma acumulada
precio[j]<-sum(vector1[1:j])
if(is.na((sum(precio[j]==precio[])==1))) {"X es NA"}
else
if((sum(precio[j]==precio[])==1))
{+j}
else
{
texto <- paste("el primer precio repetido es '", precio[j],"' en la iteración ", j)
print(texto)
break}
}
}
}
precio.rep(vector)
multiplo<- c()
secuencia <- function(x) {
y<- seq(1:x)
for(i in 1:(length(y)-1)){
if(i%%3==0 | i%%5==0){
multiplo=c(multiplo,i)
}
}
t<- paste("la suma de todos los multiplos de 3 y 5 menores a 'x' son: ",sum(multiplo))
print(t)
}
fib <- c()
fibonacci <- function(n) { #calculo la serie de fibonacci
fib[1:2] <- c(1,2)
for (i in 3:n){
fib[i] <- fib[i-2] + fib[i-1]
if(fib[i]<n){
+i
} else {return(fib[1:(i-1)])} #regresa los valores de la serie hasta donde el valor de la misma no exceda 'n'
}
}
par = c()
impar = c()
pares <- function (x){
for(i in 1:length(x)){
if(x[i]%%2==0) { # Si al dividir por 2 sale 0
par<-c(par,x[i])
} else {
impar<-c(impar,x[i])} # el numero es par, impar en otro caso
}
sum1<- sum(impar)
sum2<- sum(par)
result<- sum1/sum2
(u1=paste(c("Los numeros pares son: ", par[]),collapse = " "))
(u2=paste(c("Los numeros impares son: ",impar[]),collapse = " "))
(v=paste(c("Z = X/Y = ", result),collapse = " "))
print(u1); print(u2);print(v)
}
par = c()
impar = c()
#cuento la frecuencia de los numeros pares e impares de (1:x)y construyo Z
freq.pares <- function (x){
for(i in 1:length(x)){
if(x[i]%%2==0) { # Si al dividir por 2 sale 0
par<-c(par,x[i])
} else {
impar<-c(impar,x[i])} # el numero es par, impar en otro caso
}
freq1<- length(impar)
freq2<- length(par)
Z<- freq1/freq2
print(Z)
}
fib<- c()
fibonacci1 <- function(n) { #calculo la serie de fibonacci segunla cantidad de elementos en la serie
fib[1:2] <- c(1,2)
if (n>1 & n<200){
for (i in 3:(10*n)){
fib[i] <- fib[i-2] + fib[i-1]
}
return(fib[])
} else {print("El valor dado de n no se encuentra dentro del intervalo (1,200)")}
}
muestra.primos=function(x){
primoo = 2
for(i in 3:x){
num_divisores = 2
if( i %% 2 != 0) { #si el numero no es par
for(j in 2:(i-1)) {
if((i %% j == 0) ) { #si es divisible entre alguno de los numeros anteriores
num_divisores=(num_divisores + 1)
}
}
}
if(num_divisores > 2 | (i %% 2== 0 & i !=2)) { #si es par y no es dos o si num_divisores>2
+i #i no es un numero primo
} else {primoo=c(primoo,i) #i es un numero primo
}
}
length(primoo)
}