Skip to content

Instantly share code, notes, and snippets.

@HiroNakamura
Last active October 9, 2022 22:31
Show Gist options
  • Save HiroNakamura/2185404 to your computer and use it in GitHub Desktop.
Save HiroNakamura/2185404 to your computer and use it in GitHub Desktop.
Calcula la carta de tarot que te corresponde de acuerdo al año que inicia
package tarot
import java.util.Scanner
public class Tarot{
static main(args) {
def mapaArcanos=[1:"El Mago",2:"La Papisa",3:"La Emperatriz",4:"El Emperador",5:"El Papa",6:"El Enamorado",7:"El Carro",8:"La Justicia",9:"El Ermitaño",10:"La Rueda",11:"La Fuerza",12:"El Colgado",13:"La Muerte",14:"La Templanza",15:"El Diablo",16:"La Torre",17:"La Estrella",18:"La Luna",19:"El Sol",20:"El Juicio",21:"El Mundo",22:"El Loco"]
def mapaMeses=["enero":1,"febrero":2,"marzo":3,"abril":4,"mayo":5,"junio":6,"julio":7,"agosto":8,"septiembre":9,"octubre":10,"noviembre":11,"diciembre":12]
def dia=0
def mes=0
def nuevo=0
def sumaParcial=0
def cadena=""
Scanner teclado=new Scanner(System.in)
println("\t [ Arcanos del Tarot en Groovy ]")
println("Dia de nacimiento:")
dia=teclado.nextLine()
println("Mes de nacimiento:")
mes=teclado.nextLine()
println("Año nuevo que inicia:")
nuevo=teclado.nextLine()
try{
sumaParcial=Integer.parseInt(dia)+mapaMeses[mes]+Integer.parseInt(nuevo)
cadena=String.valueOf(sumaParcial)
println("No. "+obtenerSuma(cadena))
println("La carta del tarot que te corresponde es: "+mapaArcanos[obtenerSuma(cadena)])
}catch(Exception ex){
println("Excepcion: ${ex.getMessage()}")
}
}
static int obtenerSuma(String cad){
int sumaTotal=0
for(int i=0;i<cad.length();i++){
char caracter=cad.charAt(i)
String cadena=String.valueOf(caracter)
sumaTotal+=Integer.parseInt(cadena)
}
return sumaTotal
}
}
@HiroNakamura
Copy link
Author

Cualquier mejora es bienvenida.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment