2^8=256 оттенков
=>Так как 7 бит недостаточно(128 оттенков), 8 бит.
"Паскалей" различных много. Массивы тоже бывают разные. В вопросе ничего не детализировано, поэтому речь пойдет об одномерных массивах.
1. Турбо (Борланд) Паскаль. Массив - статический, в нем последний элемент не нужно определять, поскольку его индекс известен по описанию массива.
2. Borland Delphi, Free Pascal. Статические массивы - все как и в Турбо Паскаль. Но есть и динамические массивы, индексируемые от нуля, поэтому индекс последнего элемента в них равен количеству элементов минус единица. Можно пользоваться функцией Length(a), возвращающей текущее количество элементов в массиве.
3. PascalABC.NET 3.3. Действительно все, что написано выше. И добавочно можно написать a.Length вместо Length(a).
//Pascal ABC.NET v3.0 сборка 1111
var
a,k,s:integer;
begin
readln(k); //вводим k
a:=0;
s:=0;
while a>=0 do //пока а >=0
begin;
if a>k then s:=s+a; //если a>k, тогда добавляем к s
readln(a); //каждый раз вводим в a
end;
writeln(s); //выводим s
<span>end.
Пример ввода:
45
34
56
67
<span>-2
Пример вывода:
123</span></span>
Количество цветов n = 2^i = 2^6 = 64
<em>// PascalABC.NET 3.3, сборка 1573 от 04.11.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var a:=ArrRandom(7,-5,5); a.Println(',');
a.Transform(t->t>3?-10:t+2); a.Println(',')
end.
<u>Пример</u>
-2,-1,4,2,5,0,2
0,1,-10,4,-10,2,4