Бредово решил, либо все красит зелёным либо все желтым

Program lab_19zadacha_4_28;
uses crt;
type massiv=array[1..20] of integer;
var
m:massiv; n1,n2:real;
begin
textcolor(white);
for i:=1 to 1 do{нужно если препод не соображающий в паскале попросит чисел 5-90}
begin
writeln('Vvedite n1 ', i);
readln(n1);
writeln('Vvedite n2 ',i);
readln(n2);
end;
for i:=1 to 20 do
begin
m[i]:=random(45);
end;{перед ендом хоть и надо вывести но выведет в белом... что мне не желательно}
if (n1<n2) and (n2<=20) {хотел ввести и (n1<20) но подумал что паскалю и так понятно} then textcolor(10) else textcolor(yellow);
write(m[i]); {и так понятно что неверно решена, но надо чтоб в рандоме из 20 чисел он окрашивал до 20 зелёным от 20 жёлтым}
readln;
end.
{ Ввод n1, n2 }работает по условию.
textcolor(green);
for i:=1 to 20 do
begin
m[i] := random(45);
if i = n1 then textcolor(yellow)
else if i = n2 + 1 then textcolor(green);
write(m[i]:4);
end;
writeln;