Sunteți pe pagina 1din 8

INTEGRANTES

Ma. Angeles Espinoza Amaro


Abril Alejandra Santos Salas.
Anguiano Torres Jonathan.
NÚMEROS
Los números usados en Prolog incluyen números enteros y números reales. La sintaxis
de los enteros es simple:

1
1313
0
El tratamiento de números reales depende de la implementación de Prolog.
Asumiendo una sintaxis simple:

3.14
-0.0035
100.2
Los números reales no son muy utilizados en programas de
Prolog.
La razón de esto es que Prolog es principalmente utilizado
como un lenguaje simbólico, no de computación
numérica.
En la computación simbólica, los enteros son utilizados, por
ejemplo, para contar el número de elementos en una
lista; por lo que los números reales son poco utilizados.
Conversión entre números, átomos y cadenas de caracteres
Existe cierta correspondencia entre estos elementos. Tanto los números como los átomos se pueden
convertir a cadena de caracteres mediante los predicados number_codes/2 y atom_codes/2
respectivamente. Utilizando las cadenas de caracteres como elemento intermedio, es posible
convertir de átomos a números y viceversa.
Si en Prolog no existen declaraciones de tipo, ¿ cómo estamos seguros de que un argumento es de
un tipo determinado ?. La respuesta está en los tests de tipo. Éstos son predicados que
(habitualmente) reciben un dato como argumento y fallan si el argumento no es del tipo esperado.
OPERADORES
Los operadores de Prolog están divididos en dos clases: aritméticos y relacionales

• Los operadores aritméticos


incluyen los símbolos para suma, • Siempre que uno de los operandos,
resta, multiplicación y división . En en cualquiera de estas operaciones
Prolog, si dos enteros son sumados, sea un número real, el resultado
restados o multiplicados, el siempre será un real. El resultado de
resultado será un entero. una división, siempre que los
operandos sean enteros o reales,
será siempre real.
ARITMÉTICOS
Todas las versiones de Prolog soportan los siguientes operadores aritméticos, listados en el orden de
prioridad de ejecución.
+ --> SUMA
- --> RESTA
* --> MULTIPLICACIÓN
/ --> DIVISIÓN
// --> DIVISION ENTERA
MOD --> RESIDUO
^ --> POTENCIA
Los paréntesis se pueden utilizar para dar
preferencia de ejecución en una expresión
compuesta. Prolog utiliza la precedencia de
operadores con la regla de la mano izquierda.
RELACIONALES
Prolog soporta los siguientes operadores relacionales: OPERACIÓN DESCRIPCIÓN
= --> IGUAL QUE
> --> MAYOR QUE Sqrt(X) Calcula la raíz
>= --> MAYOR O IGUAL QUE cuadrada de la variable
>= --> MENOR O IGUAL QUE
<> --> DESIGUAL QUE
=/= --> DIFERENTE QUE log(X) Calcula el logaritmo de
is --> EVALUADOR DE EXPRESIÓN X
seed --> GENERADOR DE NÚMEROS ALEATORIOS ln(X) Calcula el logaritmo
natural de X
Cuando dos objetos que son símbolos o cadenas de
caracteres son comparados, los caracteres son
convertidos a su equivalente ASCII. El valor de cada abs(B) Regresa el valor
carácter es examinado a partir del operador relacional, absoluto de B
de izquierda a derecha. sin(T) Seno de T
cos(A) Coseno de A
tan(C) Tangente de C
?- X is sqrt(9).
X=3
Ejemplos:
?- X is sqrt(10).
Ejemplo: ?- X is abs(-7.8).
X=3.16228
%suma de dos variables X=7.8
?- X is sin(2).
?- X is min(9,2*3+1).
X=0.909297
X=7
suma:- write('ingrese primer numero='), ?- X is random(10). ?- X is sin(2*pi/4).
read(A), X=5 X=1
?- X is random(10). ?- X is log(1000).
write('ingrese segundo numero=').
X=6 ?- X=6.90776
read(B),
X is random(10). ?- X is log(e).
C is A+B, X=8 X=1
format('el resultado es ~w',[C]). ?- X is log(e**5).
X=5
?- X is log10(1000).
X=3

S-ar putea să vă placă și