Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Распечатка. Проги..docx
Скачиваний:
6
Добавлен:
04.09.2019
Размер:
575.93 Кб
Скачать

Val(inp, out, code);

if code=0 then

begin

fl:=true;

writeln;

end

else begin

head(hd);

writeln('Uncorrect! Please, input Number.');

write('Input: ');

fl:=false;

end;

end;

procedure semena;

const arr=10000;

hd='***Experiment s semenami***';

var sem: array [1..arr] of byte;

i,j,k,sorn,udachno: longint;

percent, ver, mid, all:real;

temp: byte;

key: char;

sr, ii, n:integer;

fl: boolean;

st:string;

begin

randomize;

repeat

head(hd);

writeln('Please, input number of experiments...');

write('Input: ');

repeat

readln(st);

verif(st,n,fl,hd);

until fl=true;

writeln('please wait...');

for i:=1 to 40 do

sem[i]:=1;

for i:=41 to arr do

sem[i]:=0;

udachno:=0;

for k:=1 to n do

begin

for i:=1 to arr do

begin

j:=random(arr)+1;

temp:=sem[j];

sem[j]:=sem[i];

sem[i]:=temp;

end;

sorn:=0;

for i:=1 to 500 do

if sem[i]=1 then sorn:=sorn+1;

if sorn=5 then udachno:=udachno+1;

end;

ver:=udachno/n;

writeln;

writeln('kuchek s 5-u sornyakami=',udachno,' iz ',n,' experimentov');

writeln;

writeln('Veroyatnost`=',ver:5:3);

writeln;

writeln('any key to continue, Esc to exit...');

key:=readkey;

until key=#27;

end;

begin

semena;

end.

Рис.6. Результат работы программы ***Experiment s semenami*** (Работа 5 (б)).

Работа 5 (в).

Текст программы:

uses crt;

procedure head(st:string);

begin

clrscr;

writeln(st);

writeln;

end;

procedure verif(inp:string;var out:integer;var fl:boolean;hd:string);

Var temp,code: integer;

begin

fl:=true;

Val(inp, out, code);

if code=0 then

begin

fl:=true;

writeln;

end

else begin

head(hd);

writeln('Uncorrect! Please, input Number.');

write('Input: ');

fl:=false;

end;

end;

procedure strelba_po_celi;

const n=300000;

var

targ: array[1..10] of byte;

i, j, hit, well, ver1:longint;

Ver: real;

k:longint;

key: char;

begin

randomize;

repeat

well:=0;

repeat

clrscr;

head('***Strelba***');

writeln('Vvedite veroyatnost` popadaniya pri 1-om vistrele (0,3 ili 0,6): ');

write('Input: 0,');

readln(ver1);

until (ver1=3)or(ver1=6);

for i:=1 to ver1 do

targ[i]:=1;

for i:=ver1+1 to 10 do

targ[i]:=0;

for k:=1 to n do

begin

hit:=0;

for i:=1 to 100 do

begin

j:=random(10)+1;

if targ[j]=1 then hit:=hit+1;

end;

if hit> 50 then well:=well+1;

end;

ver:=well/n;

write('Veroyatnost`= ');

writeln(ver:8:7 );

writeln;

writeln('any key to continue, Esc to exit...');

key:=readkey;

until key=#27;

end;

begin

strelba_po_celi;

end.

Рис.6. Результат работы программы ***Strelba*** (Работа 5 (в)) при вероятности попасть по цели 0.3.

Рис.6. Результат работы программы ***Strelba*** (Работа 5 (в)) при вероятности попасть по цели 0.6.

Работа 5 (г).

Текст программы:

uses crt;

procedure head(st:string);

begin

clrscr;

writeln(st);

writeln;

end;

procedure verif(inp:string;var out:integer;var fl:boolean;hd:string);