pascalabc.net
begin
// 1
var a : = arrrandom(15, 0, 500);
a.println;
println('сумма элементов равна', a.sum);
// 2
var b : = arrrandom(20, 0, 200);
b.println;
var i : = b.indexmin;
println('наименьший элемент номер', i + 1,
'имеет значение', b[i]);
// 3
var c : = arrrandom(10, 0, 100);
c.println;
println('количество элементов кратных трем равно',
c.count(p -> p mod 3 = 0))
end.
ответ:
14
объяснение:
а = 7
b = 4
if (если) a > b: (то выполняется) b += 5
else: (иначе (когда a < = b) выполняется) а += 7
(x += y прибавляет значение левой переменной к правой, равносильно x = x + y)
if (если) 7 > 4 (правда): (то выполняется) b += 5
b = b + 5 = 4 + 5 = 9
else: (иначе (когда 7 < = 4 - неправда) не выполняется) а += 7
а = 7
b = 9
if (если) a > b: (то выполняется) a += 12
else: (иначе (когда а < = b) выполняется) а += 7
(x += y прибавляет значение левой переменной к правой, равносильно x = x + y)
if (если) 7 > 9 (неправда): (то не выполняется) а += 12
else: (иначе (когда 7 < = 9 - правда) выполняется) а += 7
а = а + 7 = 7 + 7 = 14
а = 14
b = 9
Поделитесь своими знаниями, ответьте на вопрос:
жесткие, кину одну функцию, помню давненько её находил для перевода из 16 в 10, могут быть ошибки не проверял
function hex2dec(hex: string): longint;
function digt(ch: char): byte;
const hexdigts: string[16] = '0123456789abcdef';
var i: byte; n: byte;
begin n : = 0; for i : = 1 to length(hexdigts) do if ch = hexdigts[i] then n : = i - 1; digt : = n; end;
const hexset: set of char = ['0'..'9', 'a'..'f'];
var j: longint; error: boolean; dec: longint;
begin dec : = 0; error : = false; for j : = 1 to length(hex) do begin if not (upcase(hex[j]) in hexset) then error : = true; dec : = dec + digt(upcase(hex[j])) shl ((length(hex) - j) * 4); { 16^n = 2^(n * 4) } { n shl ((length(hex) - j) * 4) = n * 16^(length(hex) - j) } end; if error then hex2dec : = 0 else hex2dec : = dec; end;