скорей всего так:
Код:
j:=1;
while (j<=max) do
begin
i:=1;
while (i<=n) do
begin
if P[i] = j then
begin
Wt[i]:=w;
w:= w+B[i];
end;
i:=i+1;
end;
j:=j+1;
end;
теперь работает, но так получается ответ 7,75, а должен быть 4,50
входные данные:
Процесс | Время появления | CPU Burst | Приоритет |
1 | 1 | 6 | 4 |
2 | 3 | 2 | 3 |
3 | 7 | 7 | 2 |
4 | 1 | 5 | 1 |
Массивы Время появления (Bu), CPU Burst (B), приоритет (P) заполняются правильно (вывел в Memo для проверки). а вот результирующий массив Wt (время ожидания) неправильный. хотя алгоритм вроде правильный. Wt должен быть [14,3,1,0], а получается [14,12,5,0]
подскажите что не так
Исправленный проект прикрепляю