d. w:=d div 7;
Объяснение:
w:=d div 7; строка не верна так как она делит введенное число на 7 без остатка , например 1 день это понедельник то 1/7=0,14 1 div 7 = 0
а понедельник выводиться если значение =1
если день 14 div 7 = 2 должно быть воскресенье , а выводиться ’вторник’
Чтоб программа работала верно строку w:=d div 7; заменить на
while d>7 do
begin
d:=d-7;
end;
w:=d;