Pular para o conteúdo
  • Denunciar
  • Indicar

1. Ajuda

Enviado em 18/10/2014 - 13:44h

Não consigo encontrar uma maneira de fazer esse script, alguém pode me ajudar?


Crie um script que leia um número entre 2 e 20 e gere uma tela com a seguinte configuração:

Digite um número: 7

Saída:
7xxxxxx
76xxxxx
765xxxx
7654xxx
76543xx
765432x
7654321

Responder tópico

2. Re: Ajuda

Enviado em 18/10/2014 - 18:22h

Poste o código que vc já tentou fazer, ai fica fácil ajudar no que vc teve dificuldade.

3. Re: Ajuda

Enviado em 07/11/2014 - 20:05h

pedro-henriquex escreveu:

Não consigo encontrar uma maneira de fazer esse script, alguém pode me ajudar?


Crie um script que leia um número entre 2 e 20 e gere uma tela com a seguinte configuração:

Digite um número: 7

Saída:
7xxxxxx
76xxxxx
765xxxx
7654xxx
76543xx
765432x
7654321
#!/bin/bash
clear
echo -n "Digite um número entre 2 e 20: "
read num
echo
if [ "$num" -ge 2 ] && [ "$num" -le 20 ]
then
for i in $(seq "$num" -1 1)
do
echo
#while [ $num -ge 1 ]
#do
#echo -n "X"
#j=$[ $num-1 ]
#done

for j in $(seq $num -1 $i)
do

echo -n "$j"
done
done
echo
else
echo "Número inválido, tente novamente!!!"
echo
./questao1.sh
echo
fi

não descobri como completar os espaços com X conforme o exemplo.

4. Re: Ajuda

Enviado em 09/11/2014 - 13:52h

Opa, agora sim, partindo de parte q vc já fez, continuei usando a lógica do seq e for e fiz:


#!/bin/bash
clear
echo -n "Digite um número entre 2 e 20: "
read num
echo
if [ "$num" -ge 2 ] && [ "$num" -le 20 ]; then
for i in $(seq $num -1 1)
do
echo -n $(seq $num -1 $i | xargs | sed 's/ //g') # sequencial sem espacos ate a posicao atual do loop, imprime sem pular linha
for((x=1;x<$i;x++)) # loop para o x que completa os espacos a direita
do
echo -n "x"
done
echo
done
fi
Espero que goste, modifique e teste as possibilidades.

5. Re: Ajuda

Enviado em 11/11/2014 - 23:02h

Valeu Cara me ajudou muito.

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder