ProgramasSPFNoel

Páginas: 6 (1431 palabras) Publicado: 30 de septiembre de 2015



PROGRAMA 24/AGO/15
Pi
Descripción: Este programa permite calcular el valor de pi a través de la función de h, que es igual a la raíz cuadrada de la suma de las dos x al cuadrado, ya que es el centro de un círculo. Se parte de la fórmula de x1^2 + x2^2 = 1.

x<-0
n<-1000000 #Declarando n
for(m in 1:n) #Inicio de Ciclo for
{
x1<-runif(1,0,1) #Distribución uniforme para x1x2<-runif(1,0,1) #Distribución uniforme para x2
h<-sqrt((x1^2)+(x2^2)) #Centro del círculo como raíz cuadrada de la suma de las dos x cuadradas
if(h<1) #Condición
{
x<-x+1; #Incremento de 1
}
}
Pi<-(4*x)/n #Cálculo de valor de pi

Resultados:


















PROGRAMA 31/AGO/15
Descripción: Este programa realiza la acumulación de precios de un activo en periodos, por medio de incrementos a través deuna función y probabilidades.

Función:
incrementos <- function(p1,p2,x1,x2,x3) #Función
{
ur<-runif(1,0,1); #Distribuciónuniforme
if(ur<= p1) #Condición
{
inc <- x1;
}
else if (ur <= p1 + p2)
{
inc<- x2;
}
else
{
inc<-x3;
}
inc
}

Programa:
Precios<-numeric(); #Declarando vector Precio<-40; #Declarando valor de precio n<-6 #Declarando nfor(cont in 1:n) #inicio de ciclo
{
incre<-incrementos(0.2,0.5,-1,0,2) #Diferentes aumentos Precios[cont]<-Precio+incre; #Se va acumulando la distribución Precio<-Precios[cont] #Vector
}

plot(Precios) #Gráfica de precios














PROGRAMA 2/SEP/15
Descripción: Este programa desarrolla a través de una función generada, distintas distribuciones para queocurra un evento, donde a cada tiempo distinto le corresponde un valor aleatorio. Son 4 tiempos y por lo tanto 4 valores.

Función:Eventos
{
if(ur<= p1)
{inc <- x1}else if (ur <= p1 + p2)
{ inc<- x2}else if (ur<=p1+p2+p3)
{inc<-x3}else if (ur<=p1+p2+p3+p4)
{inc<-x4}else if (ur<=p1+p2+p3+p4+p5)
{inc<-x5}else if (ur<=p1+p2+p3+p4+p5+p6){inc<-x6}else if (ur<=p1+p2+p3+p4+p5+p6+p7)
{inc<-x7}else if (ur<=p1+p2+p3+p4+p5+p6+p7+p8)
{inc<-x8}else
{inc<-x9}
Inc
}


Tiempos y Valores:
#Distintas distribuciones para que ocurra un evento, se renombró a la función y
# a cada tiempo distinto le corresponde un valor aleatorio. ur<-runif(1,0,1);
t1<-ur; valor<- Eventos(ur,0.02,0.08,0.12,0.25,0.20,0.15,0.10,0.05,20,25,30,35,40,45,50,55,60)ur<-runif(1,0,1);
t2<-ur; valor1<- Eventos(ur,0.05,0.10,0.20,0.25,0.12,0.10,0.08,0.06,20,25,30,35,40,45,50,55,60)

ur<-runif(1,0,1);
t3<-ur; valor2<- Eventos(ur,0.05,0.15,0.20,0.20,0.15,0.12,0.08,0.04,15,20,25,30,35,40,45,50,55)

ur<-runif(1,0,1);
t4<-ur; valor3<- Eventos(ur,0.10,0.18,0.22,0.18,0.10,0.08,0.06,0.05,10,15,20,25,30,35,40,25)










Resultados:


































PROGRAMA9/SEP/15
PROBABILIDAD EXPONECIAL
Descripción: Este programa permite encontrar la probabilidad por medio de una función exponencial, que necesita a la distribución uniforme que si cumple con la condición, se va incrementando

lambda<-0.1; #Declarando valor de lambda
May<-0;
n<-1 #Declarando el valor de n for (cont in n: 1000000) #Inicio ciclo for
{
x<-runif(1,0,1);#Distribución Uniforme
y<-(-1/lambda)*log(1-x); #Función exponencial

if (y>=60) #Condición
{
May<-May + 1; #Contador e incremento
}
}
Prob<-(May/cont) #Calculando la probabilidad exponencial

Resultados:


PROGRAMA 14/SEP/15
Descripción: Este programa permite encontrar un área que inicialmente inicia creciente y a partir de un valor de x es constante. A través de las funciones de probabilidad yrestricciones fue que se encontraron las dos funciones que permiten encontrar el área, con distribución uniforme.

n<-100000
Y<-numeric(n)
p<-1

for (i in p:100000)
{
x<-runif(1,0,1);

if (x<=(1/4))
{
Y[i]=2*(sqrt(x))
}

else
{
Y[i]=2*x+(1/2)
}
}

hist(Y) #Histograma

Histograma:

PROGRAMA 20/SEP/15
Descripción: Este programa permite analizar una distribución uniforme que a...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS