Subi esta presentación donde puse mi problema.
Aqui esta mi presentación donde esta el problema y como lo resuelvo.
Subi esta presentación donde puse mi problema.
Aqui esta mi presentación donde esta el problema y como lo resuelvo.

Para definir un hecho en Prolog, deberá tomar en cuenta que nuestra oración(hecho) debe llevar el formato predicado(sujeto).
HECHOS
Notación en Prolog
maestro (marco).
programador(geniz).

La programación lógica consiste en la aplicación del corpus de conocimiento sobre lógica para el diseño de lenguajes de programación; no debe confundirse con la disciplina de la lógica computacional.
La programación lógica es un tipo de paradigmas de programación dentro del paradigma de programación declarativa. El resto de los subparadigmas de programación dentro de la programación declarativa son: programación funcional, programación basada en restricciones, programas DSL (de dominio específico) e híbridos. La programación lógica gira en torno al concepto de predicado, o relación entre elementos. La programación funcional se basa en el concepto de función (que no es más que una evolución de los predicados), de corte más matemático.
¿Qué es ?
Propuesta por Kowalski en 1974 facilita la tarea de programación liberando al programador haciendo una optimización de las dos componentes básicas de un algoritmo, Lógica y Control.
La programación lógica consiste en la aplicación del corpus de conocimiento sobre lógica para el diseño de lenguajes de programación. Se ha convertido en el pilar de una nueva generación de lenguajes de programación.
Junto con la programación funcional forma parte de lo que se conoce como programación declarativa, Como se irá explicando mas adelante en los lenguajes tradicionales se intenta resolver un problema mediante sentencias, en la programación lógica se trabaja de forma descriptiva, estableciendo relaciones, y no indicando un cómo sino un qué hacer.
Es decir el algoritmo que se quiera diseñar se construye especificando un conocimiento en un lenguaje formal y para resolverlo se uso la inferencia o control que actúa sobre aquel.
¿ Cómo nació ?
Los ordenadores siempre se han programado usando lenguajes con propiedades de la propia maquina: aritmética simple, instrucciones de acceso…Un programa de estas características puede ocultar su propósito a los ojos de un ser humano, incluso uno que maneje dichos lenguajes o técnicas de programación. Estos lenguajes pertenecientes a la la programación imperativa han evolucionado de manera que ya no son tan difíciles de entender.
La lógica matemática es la manera mas sencilla, para el ser humano, de expresar problemas y resolverlos con la aplicación de reglas, hipótesis y teoremas. De ahí el éxito de la programación lógica en campos donde la programación “de siempre” es un fracaso.
¿ Para qué se usa ?
Su principal uso se basa en las aplicaciones de inteligencia artificial o similares.
Sistemas expertos.
Demostración automática.
Reconocimiento de lenguaje natural.
Fundamentos de la Programación Lógica
Se basan principalmente en la teoría Lógica de Primer Orden, y en algunos de nivel superior. Destacamos los lenguajes funcionales como teoría lógica de orden superior que es demostradamente computable.
No se basa en la veracidad o falsedad de expresiones o sentencias sino de las relaciones que se generan entre ellas. Así se basan en un mecanismo de inferencia.
Éste requerirá de un lenguaje que exprese en una forma sencilla y sin ambigüedad las expresiones que representen las afirmaciones y conclusiones. Así nos basamos en expresiones y relaciones de la forma que:
Juan es hijo de Pedro.
Dos es mayor que uno.
Así los programas se establecen como conjuntos de axiomas (base de conocimiento), expresados mediante cláusulas de Horn, para la definición de predicados entre objetos.
REFERENCIAS



La imagen muestra como sacarlo comprobaremos que el programa esta correcto al hacerlo con los siguientes números que se checaron en la corrida del programa 34 y 6.
Al 34 y 6 se le realiza una división.

REFERENCIAS


Paginas que consulte

Aqui una imagen de la pagina donde se puso y se corrio

Si la imagen no se ve bien aqui les dejo el codigo jejeje:

Ahora que ya puse el codigo les dejo la imagen donde lo corri desde su pagina:
Aqui una explicación del codigo:
1. Declaramos el evctor con los datos a ordenar.
2. Declaramos las variables que vamos a utilizar que son dos contadores i, j y una variable auxiliar aux.
3.Después empieza a recorrer todo el vetor comparando cada elemento el valor de la posición con el de la posición anterior preguntando si la posición actual es menor a la posición anterior, si es verdad agrega el valor que tiene la posición actual a la variable aux, el valor de la posición anterior lo agrega a la posición actual y por ultimo agrega lo que se pus en la variable aux a la posición anterior.
4. Termina todos los recorridos e mprime todos los valores de lo que contiene el vector.
Bueno por mi es todo espero que les haya gustado.
REFERENCIAS
Este video es el que se menciona arriba tomado de la siguiente pagian de youtube:
Tutorial que han preparado en la página oficial
Enlace oficial de la página de GO
Fue donde puse el codigo y lo corri
otra mas
Go es un lenguaje de programación concurrente y compilado inspirado en la sintaxis de C. Ha sido desarrollado por Google y sus diseñadores iniciales son Robert Griesemer, Rob Pike y Ken Thompson. Actualmente sólo está disponible para los sistemas operativos GNU/Linux y Mac OS X.
Bueno por mi es todo espero que les haya gustado.
REFERENCIAS