Вообще программа странно написана.
Я так понимаю это Турбо Паскаль, так как в нем обязательно нужно указать значение переменной перед тем как использовать ее в циклах. Поэтому b и c присвоили 0. (В PascalABC нулю присваивать не обязательно)
d = 1000, потому что максимальный вес, который может вместить в себя пакет равен 1кг. Так как фрукты в граммах, то d присваиваем не 1, а 1000.
Я бы написал программу так:
program ll1;
var sum, a, vf: integer;
pr_rub, pr_kop: real;
begin
readln(a); //цена фруктов за кг в руб
max_v:=1000; //максимально возможный вес в гр.
sum:=0; //изначальный вес пакета
while sum<=max_v do</p>
begin
readln(vf); //вводим вес фруктов
if vf > 150 then
while vf > 150 do
begin
writeln('a<=150');</p>
readln(vf);
end; //по условию, вес фрукта не должен превышать 150гр
sum:=sum+vf; //находим общий вес фруктов
end;
pr_rub:= (sum * a) / max_v; //находим цену в рублях
pr_kop:= pr_rub * 100; //переводим рубли в копейки
writeln('Price RUB: ', pr_rub:4:0);
writeln('Price KOP: ', pr_kop:4:0);
readln();
end.