24FreelanceRynek freelancerów, który nigdy nie śpi
Zamknięte

Transfer from Turbo Prologa to Visual Prolog

757 przeglądów 0 opinii#4940
Status projektu
Closed
BudżetDo negocjacji
FormatProjekt jednorazowybrak zaliczki
PłatnośćGotówka, Przelew bankowy
Odpowiedzi akceptowaneZakończonedo 23.02.2017
Odpowiedzi0średnia w kategorii: 0,3
Widoki75732 w ciągu 14 dni

Opis projektu

There is an expert car troubleshooting system for the Turbo Prolog. The program asks questions, the person answers, and then we get the program's answer. What a problem is there in the car, according to its signs.
And there's a knowledge base.
The question is, help transfer the program to the Visual Prolog console. I'll pay a coin!

Program code on Turbo Prolog and knowledge base.

[HIGHLIGHT="prolog"]
DOMAINS
I=integer
S=stringing
C=char
Li=i*
Database - knowledge
Cond(i,s)
Rule(s,li)
DATABASE - dialog
Cond_is(i,c)
PREDICATES
Start starting.
Cars
Check(li)
Test_cond(i)
Update
Add_cond(li)
Print_cond(i,li,li)
Read_cond(c,li,li)
Ex_cond(i,li,li,i)
Wr_cond(c,i,li,li)
New_cond(i,li,li)
Read_true_char(c)
Test(c,c)
Clauses
Start:
consult("exp.DDB",knowledge),
nl,nl,nl,nl,write("*** Help cars ****"),nl,
write("Pomochnik obnaryzgenia nepoladki"),nl.
write("Ovetite na voprosi, a ya ykazgy ploblemy"),nl,
cars
retractall(_,dialog),
retractall(_,knowledge)
nl,nl,write (Mogy snova vam pomoch? (1 - da, 2 - net)",
read_true_char(C),
C='1',!, start.
Start:
nl,nl,write("****************** Vsego dobrogo!) Do novih vstrech",
readchar(_).
Cars:-
rule(X,L),
check(L),
nl,nl,write("********************* Expert sistema Help Cars"),nl,
write("* Opredelila nepoladku:",X),nl.
write("ya prav? (1 - da, 2 - net)",
read_true_char(C), C='1'!
Cars:-
nl,nl,write("************************ Ya ne znayu, chto eto za polomka"),nl,
nl,write("Davaite dobavim ee' v bazu znani"),nl,
update.
Update:-
nl,write("Vvedie nepoladky:"),
readln(S),
add_cond(L),
assert(rule(S,L),knowledge),
save("exp.ddb",knowledge).
Add_cond(L):-
cond_is(_,'1'),!
nl,nl,write("*************************** O nepoladki izvestni, prichina:"),
print_cond(1,[],L1),
nl,write("Izvestno li o nem esho chto-nibud?? (1 - da, 2 - net)",
read_true_char(C),
read_cond(C,L1,L).
Add_cond(L):-
read_cond('1',[],L).
Print_cond(H,L,L):-
not(cond(H,_),!
Print_cond(H,L,L1):-
cond_is(H,'1'),!
cond(H,T),
H1=H+1,
nl,write(T),
print_cond(H1,[H|L],L1).
Print_cond(H,L,L1):-
H1=H+1,
print_cond(H1,L,L1).
Read_cond('1',L,L2):-
ex_cond(1,L,L1,N),
new_cond(N,L1,L2)!
Read_cond(_,L,L):-!
Ex_cond(N,L,L,N):
not(cond(N,_),!
Ex_cond(N,L,L1,N2):-
cond_is(N,_),!
N1 = N+1,
ex_cond(N1,L,L1,N2).
Ex_cond(N,L,L1,N2):-
cond(N,S),
nl,write("Y nee",S"?? (1 - da, 2 - net)",
read_true_char(A),
wr_cond(A,N,L,L2),
N1 = N+1,
ex_cond(N1,L2,L1,N2).
Wr_cond('1',N,L,[N|L]):-!
Wr_cond('2',_,L,L):-!
New_cond(N,L,L1):-
nl,write("Est' esho prichini? (1 - da, 2 - net)",
read_true_char(A),
A='1'!,
nl,write("Ukaghite new svoistvo, polomki"),nl,
nl,write("New otlichintelinoe cvoistvo nepoladki '"), readln(S),
assertz(cond(N,S),
N1 = N+1,
new_cond(N1,[N|L],L1).
New_cond(_,L,L).
Check([H|T]):-
test_cond(H),
check(T).
Check([]).
Test_cond(H):-
cond_is(H,'1'),!
Test_cond(H):-
cond_is(H,'2'),!
fail.
test_cond(H):-
cond(H,S),
nl,nl,write("Y vas",S"??? (1 - da, 2 - net)",
read_true_char(A),
assert(cond_is(H,A),
test_cond(H).
Read_true_char(C):-
readchar(C1),
test(C1,C).
Test(C,C):-
'1'
Rozwój oprogramowania Gotówka, Przelew bankowy
24
Dwadzieścia · wskazówka

Jak napisać odpowiedź, która zostanie wybrana

  • Zacznij od zadania klienta, a nie od opowieści o sobie.
  • Podlinkuj jedno lub dwa podobne projekty ze swojego portfolio.
  • Podaj cenę i termin — oraz co dokładnie one obejmują.
  • Zadaj jedno pytanie wyjaśniające: to rozpoczyna rozmowę.

Odpowiedzi 0

Teksty odpowiedzi są widoczne tylko dla klienta.

Ta sama kategoria

Podobne projekty

Wszystkie projekty w kategorii
Warehouse inventory app with barcode scanner

Warehouse inventory app with barcode scanner

Looking for a developer to build a mobile warehouse inventory app with barcode scanning, receiving, dispatch, stocktake and reports.

Rozwój oprogramowania24.09.20260182
0opinii
Website accessibility audit against WCAG

Website accessibility audit against WCAG

We need an independent WCAG accessibility audit of our website: keyboard, contrast, screen readers and a clear report with fixes.

Rozwój oprogramowania24.09.20260177
0opinii
Dobrze wiedzieć
Jak mogę odpowiedzieć na ten projekt?

Zaloguj się jako freelancer, opisz, jak rozwiążesz zadanie, podaj swoją cenę i termin. Klient czyta odpowiedzi i zaczyna dialog z najlepszymi.

Kto może zobaczyć moją odpowiedź?

Tylko klient, który opublikował projekt, oraz ty. Inni freelancerzy nie widzą twojego tekstu ani ceny.

Gdzie mogę znaleźć podobne prace?

Nowe projekty w „Rozwój oprogramowania” pojawiają się codziennie. Wszystkie projekty w kategorii

FOR CLIENTS · SAFE DEAL ESCROW

Need a similar project? Post your task for free in 30 seconds

Get competitive bids from verified freelancers and release payment only when you approve the work via Safe Deal.

Post a Task for Free →How Safe Deal Works
FOR FREELANCERS · PAYORA 1-CLICK

Pin your profile to the TOP of the category for $5 / week

Boost your profile and portfolio to #1 in the directory (1-click crypto & fiat checkout via Payora) to get 5× more direct orders.

Pin Profile to TOP ($5/wk)Top Up via Payora