На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> Помогите с задачей на Visual prolog , Даны три числа a,b,c !найти сумму положительных чисел!
    я вот так сделал, но препод сказал, что она неправильная и надо по другому сделать-через правило: positive (X,X):-X>0,!.
    positive (_,0).
    ||
    \/
    predicates
    onPushButtonClick : button::clickResponder.
    clauses
    onPushButtonClick(_Source) = button::defaultAction():-
    A=toTerm(edit_ctl:gettext()),
    B=toTerm(edit1_ctl:gettext()),
    C=toTerm(edit2_ctl:gettext()),
    summa(A,B,CRez),
    listBox_ctl : add(toString(Rez)),!.
    predicates
    summa:(integer,integer,integer,integer) procedure(i,i,i,o).
    clauses
    summa(A,B,C,Rez):-
    A>0, B>0,C>0,!, Rez=A+B+C.
    summa(A,B,C,A):-
    A>0,B<0,C<0,!.
    summa(A,B,C,B):-
    A<0,B>0,C<0,!.
    summa(A,B,C,C):-
    A<0,B<0,C>0,!.
    summa (_,_,_,0).
    summa(_,_,0).



    прошу помочь ????!!!!!?????
      ExpandedWrap disabled
        t_suma([], 0):-!.
        t_suma([H|T], TSum):- H > 0, t_suma(T, Sum1), TSum is H + Sum1.
        t_suma([_|T], TSum):- t_suma(T, TSum).
      Сообщение отредактировано: xpoint -
      1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0137 ]   [ 14 queries used ]   [ Generated: 19.05.24, 02:07 GMT ]