Предположим, что в массиве A записаны данные о росте игроков баскетбольной команды. Найдем количество игроков, рост которых больше 180 см, но меньше 190 см, а так же сумму элементов удовлетворяющих условию и их среднее арифметическое. ПИТОН
1) в русском алфавите 33 буквы 33-4=29 заглавных букв используются в идентификаторе и 9 цифр 29+9=38 символов используется в идентификаторе 2) 2^5<38<2^6 ---> 6 бит для кодировки одного символа 3) 6 бит * 6 символов=36 бит =[36:8] =5 -байт - целое кол-во байт для одного идентификатора 4) 5*180=900 байт≈1 Кбайт < ответ или 900:1024=0,87891 Кбайта < или такой ответ???
Var a: array[0..99] of integer; begin //заполняем массив случайными числами Randomize(); for var i:=0 to 99 do a[i]:=random(-100,100);
//а теперь заменяем все отрицательные элементы на ноль for var i:=0 to 99 do if (a[i]<0) then a[i]:=0; end.
Вот второй вариант программы, со вводом с клавиатуры и со сдвигом нулевых элементов в хвост массива program pr_1;constn = 6;varA: array [1..n] of integer; n1: integer; beginWrite('введите ');for i := 1 to n doread(A[i]); n1:=n; for var i:=n downto 1 do{в цикле просматриваем элементы массива} begin if A[i] < 0 then {проверяем, нужно ли удалять i-ый элемент} begin{если нужно – удаляем i-ый элемент} for var j := i to n1 - 1 do A[j] := A[j + 1]; {сдвигаем} A[n1]:=0; Dec(n1); {уменьшаем количество элементов} end; end; for var i:=1 to n1 do write(A[i], ' ');end.
33-4=29 заглавных букв используются в идентификаторе
и 9 цифр 29+9=38 символов используется в идентификаторе
2) 2^5<38<2^6 ---> 6 бит для кодировки одного символа
3) 6 бит * 6 символов=36 бит =[36:8] =5 -байт - целое кол-во байт для одного идентификатора
4) 5*180=900 байт≈1 Кбайт < ответ
или 900:1024=0,87891 Кбайта < или такой ответ???
a: array[0..99] of integer;
begin
//заполняем массив случайными числами
Randomize();
for var i:=0 to 99 do a[i]:=random(-100,100);
//а теперь заменяем все отрицательные элементы на ноль
for var i:=0 to 99 do
if (a[i]<0) then a[i]:=0;
end.
Вот второй вариант программы, со вводом с клавиатуры и со сдвигом нулевых элементов в хвост массива
program pr_1;constn = 6;varA: array [1..n] of integer; n1: integer;
beginWrite('введите ');for i := 1 to n doread(A[i]); n1:=n; for var i:=n downto 1 do{в цикле просматриваем элементы массива} begin if A[i] < 0 then {проверяем, нужно ли удалять i-ый элемент} begin{если нужно – удаляем i-ый элемент} for var j := i to n1 - 1 do A[j] := A[j + 1]; {сдвигаем} A[n1]:=0; Dec(n1); {уменьшаем количество элементов} end; end; for var i:=1 to n1 do write(A[i], ' ');end.