Выдавать сообщение об ошибке при попытке деления на ноль - Prolog
Формулировка задачи:
Листинг программы
- domains
- i=integer*
- r=real
- predicates
- sum(i,r)
- avg(i,r)
- length(i,r)
- clauses
- sum([], 0).
- sum([H|T], S) :-sum(T, S_T),
- S = S_T + H.
- length([], 0).
- length([_|T], L) :-length(T, L_T),
- L = L_T + 1.
- avg(L,A):-sum(L,S),
- length(L,K),
- A=S/K.
Решение задачи: «Выдавать сообщение об ошибке при попытке деления на ноль»
textual
Листинг программы
- domains
- reall=real*
- predicates
- len(reall,real)
- sum(reall,real)
- avg(reall,real)
- clauses
- len([],0.0).
- len([_|Q],N) :- len(Q,N1), N=N1+1.
- sum([],0.0).
- sum([H|Q],S) :- sum(Q,R), S=R+H.
- avg([],0) :- write("Empty list"),nl.
- avg(A,R) :- len(A,L),L>0,sum(A,S), R=S/L.
Объяснение кода листинга программы
- В коде используется язык программирования Prolog.
- Код выполняет вычисления с числами, работая с тремя основными функциями: len, sum и avg.
- Функция len вычисляет длину списка чисел.
- Функция sum вычисляет сумму чисел в списке.
- Функция avg вычисляет среднее значение чисел в списке.
- Для пустого списка все функции возвращают начальное значение 0.
- Функция avg выводит сообщение об ошибке, если список пуст.
- Функция avg вычисляет среднее значение, если список не пуст.
- Для вычисления среднего значения функции avg используют функции len и sum.
- Если список не пуст, то среднее значение вычисляется как отношение суммы чисел к их количеству.
- Значение переменной R в функции avg сохраняет результат вычисления среднего значения.
- Значение переменной L в функции avg сохраняет результат вычисления длины списка чисел.
- Значение переменной S в функции avg сохраняет результат вычисления суммы чисел в списке.
- Значение переменной A в функции avg является списком чисел для вычисления среднего значения.
- Значение переменной Q в функции avg является хвостом списка чисел для вычисления длины или суммы.
- Значение переменной H в функции avg является первым числом в списке для вычисления суммы.
- Значение переменной R в функции sum сохраняет результат вычисления суммы чисел.
- Значение переменной S в функции sum сохраняет результат вычисления суммы чисел.
- Значение переменной Q в функции sum является списком чисел для вычисления суммы.
- Значение переменной H в функции sum является первым числом в списке для вычисления суммы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д