Chicos como van espero que bien, soy estudiante de II semstre de sistemas y bueno tyengo que crear un algoritmo que me muestra todas las combinaciones diferentes para  4 datos(letras, o numeros y letras), esos datos el usuario los escribe, despues de capturarlos y guardarlos en un arreglo o en una variable particular para cada uno, este algoritmo debe mostrar las combinacione sposibles para estos elementos ingresados...ejemplo:
Los datos ingresados son:
A  B   C  D  ========>>> El usuario los ingreso
El algoritmo debe de empezar a mostrar todas las combinaciones, haciendo uso de los arreglos donde guardamos los datos, o combinandos las variables con sentencias de control como for, while, do..loop..... las combinaciones:
A  B  C  D
A  B  D  C
A  C  B  D
A  C  D  B
A  D  B  D
""""""""""""
""""""""""""     ESTE PROCESO DEBE HACERSE ......
""""""""""""
""""""""""""
D  C   B   A
================>>>> AL FINAL EL ALGORITMO DEBE MOSTRAR 24 COMBINACIONES, HACIENDO CASO AL FACTORIUAL 4! QUE SERIA: 4*3*2*1=24 COMBINACIONES DIFERENTES
GRACIAS