Resultados da pesquisa a pedido "prolog"

2 a resposta

Como simular "add eax, 1" no Prolog?

Estou tentando simular algum código ASM simples usando o Prolog. (32 bits) Sou novo no Prolog e estou preso em alguns problemas sem nenhuma solução. Basicamente, se aqui está o código: ... add eax, 1 ...e eu quero simular desta maneira: ... ...

2 a resposta

Problemas com armazenamento de fatos no Prolog

Sou um pouco novo no Prolog e estou usando o SWI-Prolog v6.6 para declarações de armazenamento no meu arquivo * .pl. :- dynamic fact/2. assert(fact(fact1,fact2)).Com o código acima, posso fazer declarações e funciona bem, mas o problema é quando ...

1 a resposta

Após a primeira resposta, o Prolog mostra o erro "char_code / 2: não pode representar devido a 'character_code'"

Em situação normal, podemos usar";" para mostrar a próxima resposta, se houver uma. Mas se eu fizer isso, isso me mostra error: char_code/2: Cannot represent due to 'character_code'Ao invés de";", Eu uso"shift + ;", e prólogo me dá um ...

5 a resposta

Programa Prolog para verificar se um número é primo

Eu escrevi o programa a seguir com base na lógica de que um número primo é divisível apenas por 1 e ele próprio. Então, eu apenas passo o processo de dividi-lo em todos os números maiores que um e menores que ele próprio, mas parece que tenho um ...

1 a resposta

Avaliação da expressão aritmética DRY no Prolog

Eu queria escrever um predicado de avaliação no Prolog para aritmética e descobriesta [http://kti.ms.mff.cuni.cz/~bartak/prolog/arithmetics.html]: eval(A+B,CV):-eval(A,AV),eval(B,BV),CV is AV+BV. eval(A-B,CV):-eval(A,AV),eval(B,BV),CV is ...

1 a resposta

Como manter o primeiro resultado de uma função do Prolog?

Preciso escrever uma função personalizada que será chamada muitas vezes por outras funções fixas. Nesta função, na primeira chamada, ele retornará o número total de linhas de um arquivo. O segundo tempo chamado desta função, para frente, ...

0 a resposta

Corte a árvore no Prolog com alguma profundidade

first(M,N):- N>0,M=..[H|T],((T==[],write(H));(T\=[],write(H),Q is N-1,second(T,Q))). second(M,N):- N>0,M=[H|T],first(H,N),((T==[]);(T\=[],second(T,N))). second(_,0):-!.Eu quero cortar a forma da árvore com mais profundidade. Escrevo um programa ...

2 a resposta

Uso correto de findall / 3, especialmente o argumento do último resultado

Sou iniciante em Prolog e estou lidando com um problema que pode parecer estúpido para você, mas realmente não consigo entender o que estou fazendo de errado! Ok, eu tenho esse arquivo fruits.pl e dentro dele tenho algo parecido com ...

1 a resposta

Expansão de termos para obter uma lista de termos

Digamos que eu queira ter várias regras que sigam o mesmo padrão. Eu me deparei com essa situação quando quero evitar um comportamento não determinístico listando explicitamente todos os primeiros argumentos possíveis. Eu sei, no entanto, que ...

2 a resposta

Como executar o SWI-Prolog na linha de comando?

Existe uma maneira de apenas criar um script de prólogo chamadohello.pl como isso: #!/usr/local/bin/swipl -q -s -t main main:- write('Hello World\n').E ser capaz de executá-lo a partir do terminal assim? $ hello.pl Hello World $Quando faço ...