Зачетная работа по модулям 1. В нарушении правил обмена валюты подозреваются четыре работника банка А, В,
Си D. Известно, что:
а) если А не нарушил, то и B не нарушил;
б) если В нарушил, то и А нарушил и D не нарушал,
в) если С нарушил, то D не нарушил и А не нарушал;
г) если D нарушил, то А не нарушил.
2. В классе 30 человек. За контрольную работу по математике получено 5 пятерок, 12
четверок,
10
троек и 3 двойка. Какое количество информации в сообщении о том, что
Иванов получил тройку?
3. Запишите числа в развернутой форме: 154,93 10, 11100101,012, 17DF,A416
4. Перевести числа из шестнадцатеричной системы счисления в двоичную и
десятичную: 5E33,0B16-
5. Запишите машинное представление в знаковом 16-разрядном типе следующих
десятичных чисел: 200, 200, 350, 350.
6. Запишите машинное представление десятичных чисел в вещественном формате
Одинарной точности: 800
7. Перечислите сетевые устройства, которые присутствуют в известных вам сетях.
8. Постройте каркас в глубину и ширину для данного графа:
12
10
охо
3
11
4
6
13
//Pascal ABC.NET v3.1 сборка 1172
Const
n=20;
Var
ar:array[1..n] of integer;
i:integer;
begin
randomize;
writeln('First array:');
for i:=1 to n do
begin
ar[i]:=random(10)-3;
write(ar[i]:4);
if ar[i]>0 then ar[i]:=ar[i]*2 else ar[i]:=0;
end;
writeln;
writeln('Final array:');
for i:=1 to n do
write(ar[i]:4);
end.
Пример работы программы:
First array: 2 -3 5 6 -3 -3 1 -2 -3 1 3 -3 4 -3 1 -1 6 6 2 3
Final array: 4 0 10 12 0 0 2 0 0 2 6 0 8 0 2 0 12 12 4 6
// PascalABC.NET 3.1, сборка 1200 от 13.03.2016
function IsPrime(n:integer):boolean;
begin
if n<4 then Result:=True
else begin
var found:= (n mod 2 = 0);
var p:=3;
while (not found) and (sqr(p)<=n) do
begin
found:=(n mod p = 0);
p+=2
end;
Result:=not found
end
end;
begin
Writeln('k=',ArrRandom(ReadInteger('n='),1,999).Println.
Where(x->IsPrime(x)).Count)
end.
Тестовое решение:
n= 10
401 828 780 444 694 965 23 341 673 875
k=3
2. А вот так это пишется с процедурой
// PascalABC.NET 3.1, сборка 1200 от 13.03.2016
procedure IsPrime(n:integer; var res:boolean);
begin
if n<4 then res:=True
else begin
var found:= (n mod 2 = 0);
var p:=3;
while (not found) and (sqr(p)<=n) do
begin
found:=(n mod p = 0);
p+=2
end;
res:=not found
end
end;
begin
var a:=ArrRandom(ReadInteger('n='),1,999); a.Println;
var k:=0;
var prime:boolean;
foreach var e in a do begin
IsPrime(e,prime);
if Prime then Inc(k)
end;
Writeln('k=',k)
end.
Тестовое решение:
n= 12
199 43 71 365 417 904 170 212 694 103 161 689
k=4