В языке С/С++ любое ненулевое значение считается истинным.
Цикл с заголовком while (a(x)) выполнятся до тех пор. пока a(x) ненулевое, следовательно, при выходе из цикла a(x)=0.
Первоначально х=1 и если a(1) окажется равным нулю, то тело цикла не выполнится ни разу. В этом случае у будет равен начальному значению, т.е. у=1.
Если же а(1) не равняется нулю, то будет выполняться тело цикла. При у<0 переменная х получает значение 2, у получает значение 10. Мы должны полагать что а(2) ложно и тогда произойдет выход из цикла. Если же это не так, то тело цикла будет выполняться повторно. Ветка при y>=0 дает присваивание х=1, а мы рассматриваем вариант, когда такое значение не приводит к выходу из цикла, следовательно у=20 никогда не будет последним присваиванием значения у. Тогда возможен только вариант ответа 1 (у=1 или 10)
<em><u>Ответ:</u></em> Вариант 1
В файле можно сделать изменения(фамилии, оценки), а а столбце С записана формула, рассчитывающая среднее значение оценок
Const m=200;
<span>var a: array[1..m] of integer;
</span><span> i,j,n: integer;
</span><span>begin
</span><span> write('количество элементов массива: ');
</span><span> readln(n);
</span><span> randomize;
</span><span> write('массив: ');
</span><span> for i:=1 to n do
</span><span> begin
</span><span> a[i]:=random(40);
</span><span> write(a[i],' ');
</span><span> end;
</span><span> writeln;
</span><span> write('отсортированный массив: ');
</span><span> for i:=1 to n-1 do
</span><span> for j:=i+1 to n do
</span><span> if a[i]>a[j] then swap(a[i],a[j]);
</span><span> for i:=1 to n do write(a[i],' ');
</span><span>end.
</span><span>
</span>количество элементов массива: 10
<span>массив: 32 2 10 22 2 13 25 6 15 6
</span><span>отсортированный массив: 2 2 6 6 10 13 15 22 25 32
</span><span>
</span>
K=8 s=12
k=9 s=24
k=10 s=36
k=11 s=48
k=12 s=60
1,5 килобайта * 1024 = 1536 байта (перевели в байты)
3072 / 1536 = 2
2 символа содержит алфавит