# Affordable Assignment Experts Help Online – QualityAssignmentHelp PROLOG assignment help and PROLOG student programming help sample - Affordable Assignment Experts Help Online - QualityAssignmentHelp

Call us +96895672917

# PROLOG assignment help sample

## Assignment info in the image. Question)

Atomic statements are given. Create a predicate so that all queries are correct (predicate same value, divide, and count).
have to use predicate value(A, P, V).
The name of the predicate, arguments, and variable has to be the same as in the PNG

Most of the student is facing abrupt challenge and difficulty in completing prolog assignment help as most of them are a beginner and it uses a lot of syntaxes.

We help them at standard rates to achieve their goal.

Prolog 100%

AI, Artificial intelligence terms, Computer abbreviations, Program logic, Programming terms

• Prolog is mainly used for Programming LOGIC. Artificial Intelligence is the main area Prolog is used.
• Prolog has many syntaxes and some shortcuts which need to keep in mind which makes it a declarative language.
For example: While implementing the solution for a given problem, instead of specifying the ways to achieve a certain goal in a specific situation, user needs to specify about the situation (rules and facts) and the goal (query). After these stages, the Prolog interpreter derives the solution.
• it does not have much impact on graphical or other algorithms.

#### Can you get Prolog to compute these answers? 5 + 5 * 10 (5 + 5) * 10 Answers: Type:

```X is 5 + 5 * 10.
```

#### Prolog responds:

`X is 55`

# sameValue(_, [], _). sameValue(Att, [Example|Examples], Val) :- value(Att, Example, Val), sameValue(Att, Examples, Val).

divide([], _, _, [], []).
divide([Example|Examples], Att, Boolean, [P|Pos], Neg) :-
value(Att, Example, Boolean),
P = Example,
divide(Examples, Att, Boolean, Pos, Neg).
divide([Example|Examples], Att, Boolean, Pos, [N|Neg]) :-
value(Att, Example, Val),
Val \= Boolean,
N = Example,
divide(Examples, Att, Boolean, Pos, Neg).
divide([Example|Examples], Att, Boolean, Pos, Neg) :-
not(value(Att, Example, Boolean)),
divide(Examples, Att, Boolean, Pos, Neg).

count([], _, _, 0, 0).
count([Example|Examples], Att, Bool, T, F) :-
value(Att, Example, Bool),
count(Examples, Att, Bool, T1, F),
T is T1 + 1.
count([Example|Examples], Att, Bool, T, F) :-
value(Att, Example, Val),
Val \= Bool,
count(Examples, Att, Bool, T, F1),
F is F1 + 1.
count([Example|Examples], Att, Bool, T, F) :-
not(value(Att, Example, Bool)),
count(Examples, Att, Bool, T, F).

value(debt, p1, high).
value(collateral, p1, none).
value(hist, p2, unknown).
value(debt, p2, high).
value(collateral, p2, none).
value(hist, p3, unknown).
value(debt, p3, low).
value(collateral, p3, none).
value(hist, p4, unknown).
value(debt, p4, low).
value(collateral, p4, none).
value(hist, p5, unknown).
value(debt, p5, low).
value(collateral, p5, none).
value(hist, p6, unknown).<
value(debt, p6, low).
value(debt, p7, low).
value(collateral, p7, none).
value(debt, p8, low).
value(history, p9, good).
value(debt, p9, low).
value(collateral, p9, none).
value(historyK, p10, good).
value(debt, p10, high).
value(history, p11, good).
value(debt, p11, high).
value(collateral, p11, none).
value(historyk, p12, good).
value(debt, p12, high).
value(collateral, p12, none).
value(historyK, p13, good).
value(debt, p13, high).
value(collateral, p13, none).
value(debt, p14, high).
value(collateral, p14, none).