Ich mache eine Prolog-Praxis, die aus this übernommen wird.Fehler beim Ein- und Ausgang in Prolog
Was ich jetzt tun möchte, ist die Eingabe und Ausgabe des Programms zu ändern.
Ich brauche das Programm auszuführen, indem diese in der Konsole eingeben:
goldbach(100, L).
nur zum Beispiel, und ich muß die Taste [;] nächstes Ergebnis zu zeigen, wenn vorherige auf dem Bildschirm gedruckt wird.
L = [3, 97];
L = [11, 89];
L = ....
jedoch, was ich machen möchte, ist wie folgt:
Input a number:100.
L = [3, 97].
L = [11, 89].
.....
, dass das Programm wird „Geben Sie eine Nummer:“ zuerst drucken und Ihre Eingabe lesen, dann automatisch alle möglichen Ergebnis auszudrucken .
Ich habe Abschnitte über Lese lesen() und schreiben, aber ich erhalte fehlschlagen, wenn ich diese hinzufügen:
read_gold :-
write('Input a number:'),
read(X),
write(goldbach(X, L)).
Wie kann ich meinen Code beheben, um das Programm zu machen die Eingabe und Ausgabe zu erreichen, was ich will ? Danke für die Antwort.
Sie möchten den Toplevel ändern oder neu implementieren. Definitiv zu komplex für einen Anfänger. – false
Sie können nicht 'schreiben (goldbach (X, L))', um die Ergebnisse der Abfrage von 'goldbach (X, L)' zu bekommen. Prädikate geben keine Lösungen zurück, da Funktionen Werte zurückgeben. – lurker