> -- Цитата:
> BEGINнота.момент:= 100;нота.струна:= SetСтруна(значение);нота.лад := SetЛад(значение);END;

Такой код избыточен.

Всё можно упаковать в процедуру.

ТНота = RECORD
момент:INTEGER;
струна:INTEGER;
лад:INTEGER;
END;

PROCEDURE УстановитьНоту(Нота: TНота; Момент, Струна, Лад: INTEGER):
VAR
Н: TНота;
BEGIN
ASSERT(Момент >= МИН_МОМЕНТ AND Момент <= МАКС_МОМЕНТ);
ASSERT(Струна >= МИН_СТРУНА AND Струна <= МАКС_СТРУНА);
ASSERT(Лад >= МИН_ЛАД AND Лад <= МАКС_ЛАД);

Н.Момент := Момент;
Н.Струна := Струна;
Н.Лад      := Лад;

И дальше ваш код
END;
VAR
Нота: TНота;

УстановитьНоту(Нота, 0, 2, 9):

Как то так.