Advertisement
PavelMiridonov

Untitled

Sep 28th, 2021
2,637
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scilab 1.54 KB | None | 0 0
  1. raspred_type = 'norm_raspr'; // ТИП РАСПРЕДЕЛЕНИЯ ЕПТА (exp | norm_raspr)
  2. mu = 3.2;
  3. sigma = 0.6;
  4. lambda = 0.58;
  5. sum_r = 0;
  6. N = 12;
  7. nu_0 = 0;
  8. nu = 0;
  9. t1 = 0; t2 = 0; t3 = 0; t4 = 0;
  10. function [nu_0]= Time_calc(r)
  11.     for i = 1:N
  12.         sum_r = sum_r + r;
  13.     end
  14.     nu_0 = (sum_r - N/2)/(sqrt(N/12));
  15. endfunction
  16. if (raspred_type == 'norm_raspr') then
  17.     for i = 1:400
  18.     r = rand();
  19.     nu = (Time_calc(r))*sigma + mu;
  20.     msg = 0;
  21.     if r >= 0 & r < 0.03 then t1 = t1 + 1;
  22.     msg = 1;
  23.     else if r >= 0.03 & r < 0.60 then t2 = t2 + 1;
  24.     msg = 2;
  25.     else if r >= 0.60 & r < 0.73 then t3 = t3 + 1;
  26.     msg = 3;
  27.     else t4 = t4 + 1;
  28.     msg = 4;
  29.     end;
  30.     end;
  31.     end;
  32.     printf('Рандомное число: %f Тип сообщения:%i Время???: %f \n',r,msg,nu);
  33. end;
  34. else if (raspred_type == 'exp') then
  35.         for i = 1:400
  36.     r = rand();
  37.     x = (-1)*(1/lambda)*log(r);
  38.     msg = 0;
  39.     if r >= 0 & r < 0.03 then t1 = t1 + 1;
  40.     msg = 1;
  41.     else if r >= 0.03 & r < 0.60 then t2 = t2 + 1;
  42.     msg = 2;
  43.     else if r >= 0.60 & r < 0.73 then t3 = t3 + 1;
  44.     msg = 3;
  45.     else t4 = t4 + 1;
  46.     msg = 4;
  47.     end;
  48.     end;
  49.     end;
  50.     printf('Рандомное число: %f Тип сообщения:%i Время???: %f \n',r,msg,x);
  51.     end;
  52. end;
  53. end
  54.     disp('____________________');
  55.     disp(t1);
  56.     disp(t2);
  57.     disp(t3);
  58.     disp(t4);
  59.     disp('____________________');
  60.     disp(t1/(400));
  61.     disp(t2/(400));
  62.     disp(t3/(400));
  63.     disp(t4/(400));
  64.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement