Está en la página 1de 12

Universidad Autónoma De Nuevo León

Facultad De ingeniería Civil


PIA- Calculadora de Probabilidades Integrantes
Equipo:
Rogelio Alexander Cabriales Elías 1967806
Erick Demian Hernández García 2000310
Leonardo Adrián López Mendoza 1945421
Brayan Gerardo Reyna Pérez 1843296
Grupo: 003

Materia: Software Especializado en Matematicas


Docente: M.C Gerardo Armando Hernández Castorena
CODIGO FUENTE
% Calculadora de probabilidad con menú
z = 1; %var. aux. para volver a menú
while z==1
clc, clear
printf('\n\n')
printf('
==========================================
====\n')
printf(' *** CALCULADORA DE PROBABILIDAD ***
\n')
printf('
==========================================
====\n')
printf('\n')
printf(' === MENÚ === \n')
printf(' 1. Distribución normal \n')
printf(' 2. Distribución Poisson \n')
printf(' 3. Distribución hipergeométrica \n')
printf(' 4. Distribución binomial \n')
printf(' 5. Salir \n\n')
printf(' Elige una opción de las anteriores: ')
op = input('')

%ciclo while para validación de la entrada


while op~=1 && op~=2 && op~=3 && op~=4 && op~=5
clc
printf('\n\n')
printf(' ¡ERROR! Opción inválida \n\n')
printf('
==========================================
====\n')
printf(' *** CALCULADORA DE PROBABILIDAD
*** \n')
printf('
==========================================
====\n')
printf('\n')
printf(' === MENÚ === \n')
printf(' 1. Distribución normal \n')
printf(' 2. Distribución Poisson \n')
printf(' 3. Distribución hipergeométrica \n')
printf(' 4. Distribución binomial \n')
printf(' 5. Salir \n\n')
printf(' Elige una opción de las anteriores: ')
op = input('');
end

switch op
case 1
clc
printf('\n\n')
printf('
==========================================
====\n')
printf(' *** 1. DISTRIBUCIÓN NORMAL *** \n')
printf('
==========================================
====\n')
printf('\n')
printf(' Ingresa el valor del límite inferior a = ')
a = input('');

printf(' Ingresa el valor del límite superior b = ')


b = input('');

n = 40; %par
h = (b-a)/n; % tamaño de paso

x = linspace(a,b,n+1);
y = exp(-x.^2/2)/sqrt(2*pi);

% Regla de Simpson
sum_impar = 0;
sum_par = 0;

%suma de y's impares


for i = 2:2:n
sum_impar = sum_impar + y(i);
end

%suma de y's pares


for i = 3:2:n-1
sum_par = sum_par + y(i);
end

p = h*(y(1) + y(end) + 4*sum_impar +


2*sum_par)/3;%fórmula de Simpson

printf('\n\n')
printf('La probabilidad de que z esté entre %g y %g
es %1.6f \n\n',a,b,p)

%líneas para elaborar la gráfica


clf
xx = linspace(-5,5,121);
yy = exp(-xx.^2/2)/sqrt(2*pi);
plot(x,y,'b',xx,yy,'k'), hold on
title('DISTRIBUCIÓN NORMAL ESTÁNDAR')
fill([a x b],[0 y 0],'b')
printf('\n')
printf('Deseas volver a Menú principal 1. Si 2. No: ')
z = input('');

case 2
clc
printf('\n\n')
printf('
==========================================
====\n')
printf(' * 2. DISTRIBUCIÓN POISSON *
\n')
printf('
==========================================
====\n')
printf('\n')
printf(' Ingresa la variable aleatoria, X = ')
X = input('');
printf(' Ingresa el intervalo, N = ')
j = input('','s');
printf(' Ingresa la media, u= ')
g = input('');
y = (exp(-g)*(g^X))/factorial(X);
printf('\n')
printf('La probabilidad de que %d se de en un
intervalo de %s es de %d \n',X,j,y)
printf('\n')
printf('Deseas volver a Menú principal 1. Si 2. No: ')
z = input('')

case 3
clc
printf('\n\n')
printf('
==========================================
====\n')
printf(' **** 3. DISTRIBUCIÓN
HIPERGEOMÉTRICA ***** \n')
printf('
==========================================
====\n')
printf('\n')
printf(' Ingresa el tamaño de la población N = ')
N = input('');
printf(' Ingresa el número de elementos M en la
población, M = ')
M = input('');
printf(' Ingresa el tamaño de la muestra n = ')
n = input('');
printf(' Ingresa el valor de x = ')
x = input('');
p = nchoosek(M,x)*nchoosek(N-M,n-
x)/nchoosek(N,n);
printf('La probabilidad de que la v.a. sea igual a x =
%g es de %1.6f\n',x,p)
for j = 0:n
hip (j+1) = nchoosek(M,j)*nchoosek(N-M,n-
j)/nchoosek(N,n);
end
bar(hip)

printf('Deseas volver a Menú principal 1. Si 2. No: ')


z = input('');
case 4
clc
printf('\n\n')
printf('
==========================================
====\n')
printf(' ******* 4. DISTRIBUCIÓN BIONOMIAL
******** \n')
printf('
==========================================
====\n')
printf('\n')
printf(' Ingresa el número de intentos, n = ')
n = input('');
printf(' Ingresa el número de veces que se obtuvo el
resultado esperado, x = ')
x = input('');
printf(' Ingresa la probabilidad (en decimales) de
exito en un solo intento, p = ')
p = input('');
printf(' Ingresa la probabilidad (en decimales) de fallo
en un solo intento, f = ')
f = input('');
bin = ((factorial(n)/(factorial(x)*(factorial(n-
x))))*(p^x)*f^(n-x))*100;
printf('\n')
printf('La probabilidad de que suceda el evento %d
veces en %d intentos, es igual a = %d%%\n',x,n,bin);
printf('\n')
printf('Deseas volver a Menú principal 1. Si 2. No:
')
z = input('');
case 5
z = input(''); %para que se salga y finalice la
ejecución
end % end del switch
end %end del while primario
printf(' FIN DEL PROGRAMA\n')
EJECUCION DE PROGRAMAS MENU:

1.- DISTRIBUCION NORMAL


2.- DISTRIBUCION POISSON

3.- DISTRIBUCION HIPERGEOMETRICA


4.- DISTRIBUCIÓN BINOMIAL.

También podría gustarte