Skip to content

Instantly share code, notes, and snippets.

@marcoonroad
Last active August 29, 2015 14:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save marcoonroad/785c7698ba3c46463060 to your computer and use it in GitHub Desktop.
Save marcoonroad/785c7698ba3c46463060 to your computer and use it in GitHub Desktop.
Jogo de caça-palavras aleatório.
#!/usr/bin/perl6
use v6;
# caça-palavras em P6
"Só um outro jogo de caça-palavras...".say;
"Diga o número de === colunas ~ linhas ===.".say;
my $limite = prompt "Qual o limite que você quer?" ~ " ";
my @numeros = ^$limite;
my @letras = 65 .. 90; # De A a Z
my @matriz;
for @numeros -> $linha {
@matriz[$linha] = (@letras.pick($limite))>>.chr; # Gera letras aleatórias
}
@matriz>>.say; # Mostra a tabela
my $palavra = prompt "Qual palavra você quer buscar?" ~ " ";
my $invertida = $palavra.flip;
for @numeros -> $linha {
# Procura a palavra pelas linhas
given @matriz[$linha].join {
"Encontrou a palavra $palavra na linha { $linha.succ }.".say and last
when /$palavra/;
"Encontrou como '$invertida' na linha { $linha.succ }.".say and last
when /$invertida/;
}
}
for @numeros -> $coluna {
# Procura a palavra pelas colunas
given @matriz>>[$coluna].join {
"Encontrou a palavra $palavra na coluna { $coluna.succ }.".say and last
when /$palavra/;
"Encontrou como '$invertida' na coluna { $coluna.succ }.".say and last
when /$invertida/;
}
}
# fim do script
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment