4. Формула, яка вибирає навмання
довільне число з проміжку [a, b]
random(b-a+1)+a
Перевір себе:
1. Довільне число з проміжку [-120;120] визначається
формулою: random (241)-120
а з проміжку [-30; 60]=?
[33; 563]= ?
2. З якого відрізка генерує випадкове число наступна
формула?
а) random (44)+17;
б) random (300)-107;
в) random (289)-34.
5. З проміжка [-15; 15]вибрати навмання 5
цілих чисел і порахувати кількість з них
парних
var x, i, k:integer;
begin k:=0; randomize; {Задали початкове значення лічильника}
for i:=1 to 5 do begin{відкрили цикл по кількості чисел}
x:=random(31)-15;{вибрали навмання число з проміжку [-15;15]}
write (x,’,’);{Видрукували це число}
if x mod 2=0 then k:=k+1; end;{Якщо число парне, то
накопичуємо лічильник }
writeln( ‘k=‘, k); {Вийшли з циклу і надрукували результат}
end.
6. Вибрати довільну кількість цілих чисел з проміжку [-
22; 77] і порахувати середнє арифметичне
додатніх.
program Dodatni_z_promizhka;
var x, i, n, k, S:integer;
begin k:=0; S:=0; randomize;
write(‘vvedit k-st chysel’); readln(n);
for i:=1 to n do begin
x:=random(100)-22;
write (x,’,’);
if x >0 then begin k:=k+1; S:=S+x; end; end;
writeln( ‘Sa=‘, S/k);
end.
7. Вибрати довільну кількість цілих чисел з проміжку [-
100; 100] і видрукувати найбільше з них.
program Max_z_promizhka;
var x, i, n, max:integer;
begin max:=-100; {початкове значення max ми задаємо навмисно дуже мале, щоб
при першій перевірці там з'явилось перше значення х }
randomize; write(‘vvedit k-st chysel’); readln(n);
for i:=1 to n do begin
x:=random(100)-22;
write (x,’,’);
if x >max then max:=x; {порівнює число із значенням в комірці max і при потребі
переприсвоює } end;
writeln( ‘max=‘, max);
end.
8. Задачі
1.З 15-ти довільних чисел з проміжку [-30;30] вивести на екран
парні, зменшені вдвічі.
2.Відомі n оцінок з інформатики одного учня. Визначити різницю
між максимальною і мінімальною оцінкою.
3.Відомий ріст учнів п'ятих класів гімназії. Видрукувати номери
учнів, ріст яких більший за 170 см.
4.Утворити набір з 20-ти довільних цілих чисел з проміжку [-150;
150] знайти:
а) максимальне число;
б) найменше число;
в) кількість чисел кратних 7;
г) суму парних чисел;
д) добуток додатних;
е) різницю непарних та від'ємних.
9. 5. Визначити, що робить наступний
фрагмент програми
а) begin k:=0;
в) begin k:=0;
for i:=1 to 3 do
for i:=1 to 10 do
begin readln (a);
if i mod 2=0 then k:=k+1;
if a mod 3=0 then k:=k+1; end;
writeln (k);
writeln (k); end.
end.
б) begin s:=0; г) begin for i:=1 to 10 do
begin readln (a);
for i:=1 to 3 do
if a <0 then write (i); end;
begin readln (a);
end.
if a >0 then s:=s+a; end;
writeln (s);
end.
10. 5. Визначити, що робить наступний
фрагмент програми
а) begin k:=0;
в) begin k:=0;
for i:=1 to 3 do
for i:=1 to 10 do
begin readln (a);
if i mod 2=0 then k:=k+1;
if a mod 3=0 then k:=k+1; end;
writeln (k);
writeln (k); end.
end.
б) begin s:=0; г) begin for i:=1 to 10 do
begin readln (a);
for i:=1 to 3 do
if a <0 then write (i); end;
begin readln (a);
end.
if a >0 then s:=s+a; end;
writeln (s);
end.