Bienvenidos
Este blog busca darle algunas herramientas para trabajar con varios de los programas más interesantes y útiles de la actualidad.
El objetivo es emplear ejemplos y su desarrollo paso a paso para que el aprendizaje sea lo más fácil y real posible.
El objetivo es emplear ejemplos y su desarrollo paso a paso para que el aprendizaje sea lo más fácil y real posible.
Etiquetas
- _todos_ (66)
- mathematica (1)
- programacion (66)
- prolog (48)
- purebasic (15)
- winprolog (47)
Datos personales
Videos Ejemplo
Programas
Frameworks
Libros
Mathematica
Todo el poder de Mathematica en la Web:
Ejemplos de uso:
1) Plot3D[Sin[x]*Cos[y],{x,0,2 Pi},{y,0,Pi}]
2) Colombia
Escribe el ejemplo y da clic en el igual
Ejemplos de uso:
1) Plot3D[Sin[x]*Cos[y],{x,0,2 Pi},{y,0,Pi}]
2) Colombia
Escribe el ejemplo y da clic en el igual
Seguidores
martes, 25 de junio de 2013
PROLOG: Busca numero mayor en lista (versión 2)
11:25 |
Publicado por
a8a |
Editar entrada
Este programa busca el elemento mayor de una lista:
my_list_max(X, [X]) :- !. my_list_max(X, [X|Ys]) :- my_list_max(X1, Ys), X >= X1, !. my_list_max(X, [_|Xs]) :- my_list_max(X, Xs).
Para ejecutar el programa:
?- my_list_max(X, [5,3,9,2,8,7]).
Y el resultado es:
X = 9
Nota: Este programa fue una contribución de uno de nuestros visitantes, quien propuso una solución recursiva al problema.
PROLOG: Busca numero menor en lista (versión 2)
11:11 |
Publicado por
a8a |
Editar entrada
Este programa busca el elemento menor de una lista:
my_list_min(X, [X]) :- !. my_list_min(X, [X|Ys]) :- my_list_min(X1, Ys), X =< X1, !. my_list_min(X, [_|Xs]) :- my_list_min(X, Xs).
Para ejecutar el programa:
?- my_list_min(X, [5,3,9,2,8,7]).
Y el resultado es:
X = 2
Nota: Este programa fue una contribución de uno de nuestros visitantes, quien propuso una solución recursiva al problema.
miércoles, 24 de abril de 2013
PROLOG: Borra ultimo elemento de una lista
16:53 |
Publicado por
a8a |
Editar entrada
Este programa borra el último elemento de una lista:
my_remove_last_element([_], []). my_remove_last_element([Y|Ys], [Y|Zs]):- my_remove_last_element(Ys, Zs).
Para ejecutar el programa:
?- my_remove_last_element([a,b,c,b,e,b,f,g], Zs).
Y el resultado es:
Zs = [a,b,c,b,e,b,f]
jueves, 1 de noviembre de 2012
PROLOG: Permutacion de una lista
1:54 |
Publicado por
a8a |
Editar entrada
Este programa encuentra todas las permutaciones de los elementos de una lista (La permutación de un conjunto se define como cada una de las posibles ordenaciones de todos los elementos de dicho conjunto):
my_permutation(Bs, [A|As]):- my_append(Xs, [A|Ys], Bs), my_append(Xs, Ys, Zs), my_permutation(Zs, As). my_permutation([], []).
Para ejecutar el programa:
?- my_permutation([a,b,c],Ls).
Y el resultado es:
Ls = [a,b,c] Ls = [a,c,b] Ls = [b,a,c] Ls = [b,c,a] Ls = [c,a,b] Ls = [c,b,a]
Nota: Este programa usa algunas reglas (programas) definidas anteriormente.
lunes, 10 de septiembre de 2012
PROLOG: Convierte lista anidada en lista no anidada
14:22 |
Publicado por
a8a |
Editar entrada
Este programa convierte una lista que contiene elementos que son listas, en una lista de elementos simples:
my_flatten(X, [X]):-
\+ list(X).
my_flatten([], []).
my_flatten([As|Bs], Cs):-
my_flatten(As, ALs),
my_flatten(Bs, BLs),
my_append(ALs, BLs, Cs).
Para ejecutar el programa:
?- my_flatten([1,7,3,4,[5,[[[6],[8]],9,7]],[[8],9],[[[0]]]], Ls).
Y el resultado es:
Ls = [1,7,3,4,5,6,8,9,7,8,9,0]
Nota: Este programa usa algunas reglas (programas) definidas anteriormente.
viernes, 11 de mayo de 2012
PROLOG: Ordena lista de numeros, metodo de la burbuja
10:26 |
Publicado por
a8a |
Editar entrada
Este programa ordena una lista numérica en forma ascendente. Si quieres ordenar en forma descendente cambia la linea "B < A" por "A < B":
my_bubble_sort(Xs, Ys):- my_append(Cs, [A,B|Ds], Xs), B < A, my_append(Cs, [B,A|Ds], Fs), my_bubble_sort(Fs, Ys), !. my_bubble_sort(Xs, Xs).
Para ejecutar el programa:
?- my_bubble_sort([4,7,1,3,2,9,2,6], Ls).
Y el resultado es:
Ls = [1,2,2,3,4,6,7,9]
Nota: Este programa usa algunas reglas (programas) definidas anteriormente.
jueves, 8 de marzo de 2012
PROLOG: Interseccion entre dos listas
23:41 |
Publicado por
a8a |
Editar entrada
Este programa encuentra la intersección de dos listas (intersección de conjuntos):
my_intersect([], _, []). my_intersect([A|As], Bs, [A|Cs]):- my_member(A, Bs), !, my_intersect(As, Bs, Cs). my_intersect([_|As], Bs, Cs):- my_intersect(As, Bs, Cs).
Para ejecutar el programa:
?- my_intersect([1,2,3,4], [2,3,6,7,1], Ls).
Y el resultado es:
Ls = [1,2,3]
Nota: Este programa usa algunas reglas (programas) definidas anteriormente.
Suscribirse a:
Entradas (Atom)