Ответ в прилагаемом фото.
Смотря что Вы называете циклом. По установившейся терминологии любой цикл состоит из заголовка цикла (по строению которого циклы часто и именуют) и тела цикла. В языке паскаль в заголовке цикла с предусловием стоит ключевое слово while и ключевое слово цикла с параметром for стоять уже не может. Но в теле цикла, которое может иметь любое содержимое, цикл for, конечно же, может встречаться.
А вот язык Алгол, на базе которого Н.Вирт сконструировал свой Паскаль, мог в заголовке цикла содержать очень много всего и, в том числе, смесь while с for:
for x:=p0 step h1 until q-1, q+1 step h2 until t, t+0.17 step h3 while cos(x/2)<0.85 do ...
Но Н.Вирт решил, что такой цикл неэффективен и... оставил от него жалкие ошметки. Возможно, компилятору "стало проще жить", но зато программисты в Паскале лишились возможности не только писать в цикле вещественные значения, но и вынуждены менять целочисленные только на 1 или -1.
1*2^7+0*2^6+1*2^5+1*2^4+1*2^3+0*2^2+0*2^1+1*2^0=128+32+16+8+1=185
uses crt;
var
a:array [1..1000] of integer;
max,i,k:integer;
begin
write('Введи количество элементов массива: '); read(k);
for i:=1 to k do
begin
a[i]:=random(100)-50;
write(a[i]:4);
end;
writeln;
max:= a[1];
for i:=1 to k do
if a[i]>max then max:=a[i];
writeln('Максимальный элемент: ',max);
writeln ('Сумма первого и максимального элементов: ',max+a[1])
end.