|
From: | Alfredo Casanova |
Subject: | [shell-script-pt] Fwd: [shell-script] Ajuda em script mega-sena |
Date: | Tue, 10 Mar 2020 17:26:18 -0300 |
# Recebendo resultadosfor ((Res=1; Res<=6; Res++)){read -p "$Res⁰ resultado: "Result[Res-1]=$(printf '%02i\n' $REPLY)}clearprintf '%23s %02d %02d %02d %02d %02d\n' "${Result[@]}"# Apuraçãowhile read -a Jogodounset Certosfor ((i=0; i<=5; i++)){((10#${Jogo[i]} == 10#${Result[i]})) && Certos[i]=${Jogo[i]} || Certos[i]=--}echo ${Jogo[@]} ++ ${Certos[@]}done < jogos.txtMelhorei (para o meu gosto) a apresentação, mas ela ficaria muito melhor usando zenity ou, muito melhor ainda, usando yad.Abraços,Julio» Não tem tempo para fazer um curso presencial?» Na sua cidade não tem nenhum bom curso de Linux?» Em 27/01/2020 abriremos uma semana de inscrições» para uma nova turma. Veja mais detalhes em:Também damos treinamento em sua empresaem qualquer cidade, com certificado e nota fiscal.Em ter., 10 de mar. de 2020 às 12:12, Dito Ramos address@hidden [shell-script] <address@hidden> escreveu:Mestres, bom dia.
Estou mexendo num "scriptzinho" aqui, para conferir apostas na mega-sena.
Segue o script, o arquivos jogos.txt (onde eu incluo os números das apostas que fiz) e a saída do script:
O script confmega.sh
================
#!/bin/bash
while read line
do
hits=0;
for numero in $*
do
if [ $(grep -o $numero <<< $line | wc -l) -eq 1 ]
then
let hits++;
fi
done
if [ $hits -ge 0 ]
then
echo $line: $hits acertos
fi
done < jogos.txt
O arquivo jogos.txt:
==============
06 14 37 48 54 58
12 17 34 46 57 59
02 12 23 26 45 49
03 17 23 40 53 57
05 07 13 37 39 46
03 10 17 28 37 57
07 24 37 39 50 57
08 11 33 36 44 49
01 14 26 28 36 47
04 09 26 29 47 48
12 16 23 33 53 54
11 25 27 37 40 43
A saída do comando ./confmega.sh 11 20 27 28 53 60 (resultado oficial do concurso):
==============================================================
06 14 37 48 54 58: 0 acertos
12 17 34 46 57 59: 0 acertos
02 12 23 26 45 49: 0 acertos
03 17 23 40 53 57: 1 acertos
05 07 13 37 39 46: 0 acertos
03 10 17 28 37 57: 1 acertos
07 24 37 39 50 57: 0 acertos
08 11 33 36 44 49: 1 acertos
01 14 26 28 36 47: 1 acertos
04 09 26 29 47 48: 0 acertos
12 16 23 33 53 54: 1 acertos
11 25 27 37 40 43: 2 acertos
Está funcionando certinho. Mas preciso implementar mais uma informação na saída para ficar da seguinte forma:
06 14 37 48 54 58: 0 acertos
12 17 34 46 57 59: 0 acertos
02 12 23 26 45 49: 0 acertos
03 17 23 40 53 57: 1 acertos (acertou 53)
05 07 13 37 39 46: 0 acertos
03 10 17 28 37 57: 1 acertos (acertou 28)
07 24 37 39 50 57: 0 acertos
08 11 33 36 44 49: 1 acertos (acertou 11)
01 14 26 28 36 47: 1 acertos (acertou 28)
04 09 26 29 47 48: 0 acertos
12 16 23 33 53 54: 1 acertos (acertou 53)
11 25 27 37 40 43: 2 acertos (acertou 11, 27)
Já tentei aqui e não estou conseguindo.
Podem dar uma força?
Grato desde já.
Dito Ramos
[As partes desta mensagem que não continham texto foram removidas]
__._,_.___
Responder através da web • • através de email • Adicionar um novo tópico • Mensagens neste tópico (2) ---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso.
---------------------------------------------------------------------
Sair da lista: address@hidden
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil
.
__,_._,___
[Prev in Thread] | Current Thread | [Next in Thread] |