Você está na página 1de 32

Exercícios

Estrutura de decisão

1) Faça um Script que obtenha a idade de uma pessoa e verifica se uma pessoa é maior ou
menor de idade, mostre uma mensagem com a sua situação.

SHELL SCRIPT
#!/bin/bash
echo "Digite a sua idade: "
read idade
if [ $idade -ge 18 ]
then
echo "Você é considerado maior de idade!"
else
echo "Você é considerado menor de idade!"
fi
=============================================================================

2) O índice da massa corpórea (IMC) é usado pelos nutricionistas para determinar se estamos
magros ou acima do peso. Faça um algoritmo que calcule o IMC de uma pessoa qualquer,
dada sua altura e peso. O IMC é calculado como peso em kg, dividido pelo quadrado da
altura, em metros:
peso
IMC=
(altura 2 ) A situação de uma pessoa é baseada na tabela abaixo:

IMC Situação
<= 18.5 Magro
> 18.5 e <= 25 Peso Normal
> 25 e <= 30 Acima do Peso
> 30 Obeso
Utilizando a tabela acima, mostre qual é a situação dessa pessoa

SHELL SCRIPT
#!/bin/bash
echo "IMC Situação";
echo -n "Informe o nome:"
read nome
echo -n "Informe a altura em metros(ex.:1.80):"
read altura
echo -n "Informe o peso em kg(ex.:75):"
read peso
IMC=`echo "scale=2; $peso/($altura^2)"| bc`
echo "O IMC de $nome é: $IMC"
decimal=` echo " $IMC" | tr -d \.`
if [ $decimal -le 185 ]; then
echo "Situação: Magro!"
elif [ $decimal -gt 185 -a $decimal -le 250 ]; then
echo "Situação: Peso Normal!"
elif [ $decimal -gt 250 -a $decimal -le 300 ]; then
echo "Situação:Acima do Peso!"
elif [ $decimal -gt 300 ]; then
echo "Situação:Obeso!"
fi
=============================================================================
3) Uma empresa produz três tipos de peças mecânicas: parafusos, porcas e arruelas.
Têm-se os preços unitários de cada tipo de peça (parafusos: R$ 2,00; porcas: R$
3,00; e arruelas: R$ 4,00)e sabe-se que sobre estes preços incidem descontos de10% para
porcas, 20% para parafusos e 30% para arruelas. Escreva um programa
que calcule o valor total da compra de um cliente (já com os descontos), a
quantidade de cada tipo de peça que o mesmo comprou, e quanto em R$ (reais) o
cliente teve de desconto no valor total da compra
(valor 1.0).

RESPOSTA 1-funcionou
#!/bin/bash
echo " *** COMPRAR *** "
echo "Informe a peça que deseja comprar:(1)PARAFUSO, (2)PORCA ou (3)ARRUELAS : "
read tipo
echo " Insira o valor em R$ correspondente a peça:2.00-parafuso,3.00-porca e 4.00-arruela : "
read num
echo "Informe a quantidade de peça(s): "
read qtd
echo "Total a pagar "
case "$tipo" in
1)des10=`echo "scale=2;$num*$qtd/10"| bc`
totaldes10=`echo "scale=2;$num*$qtd-$des10"| bc`
echo "Quantidade de Peças:", $qtd, " Tipo de Peça:PARAFUSO"
echo "Você teve um desconto de, R$: $des10 "
echo “Total a pagar com desconto:R$ $totaldes10”;;
2)des20=`echo "scale=2;$num*$qtd/20*2*2"| bc`
totaldes20=`echo "scale=2;$num*$qtd-$des20"| bc`
echo "Quantidade de Peças:", $qtd, " Tipo de Peça:PORCA"
echo "Você teve um desconto de, R$: $des20 "
echo “Total a pagar com desconto:R$ $totaldes20”;;
3) des30=`echo "scale=2;$num*$qtd/30*3*3"| bc`
totaldes30=`echo "scale=2;$num*$qtd-$des30"| bc`
echo "Quantidade de Peças:", $qtd, " Tipo de Peça:ARRUELA"
echo "Você teve um desconto de, R$: $des30"
echo “Total a pagar com desconto:R$ $totaldes30”;;
*) echo "Valor Invalido"
Esac

RESPOSTA 2 não funcionou erro sintaxe


#!/bin/bash
echo “COMPRAR”
echo "Qual produto deseja comprar:(1)PARAFUSO,(2)PORCA-(3)ARRUELA: "
read tipo
echo "Preço do produto (1)PARAFUSO-R$2,00,(2)PORCA-R$3,00; (3)ARRUELA-R$4,00: "
read preço
echo "Quantas unidades deseja comprar?"
read qtd
case "$produto" in
1)produto= `echo "scale=3; $qtd*10/100 " | bc `;
total=`echo "scale=3; $qtd*$PARAFUSO " | bc `;
2)PORCA= `echo "scale=3; $qtd*20/100 "| bc `;
total=`echo "scale=3; $qtd*$PORCA " | bc `;
3)ARRUELA= `echo "scale=3; $qtd*$qtd*10/100" | bc `;
total=`echo "scale=3; $produto*$ARRUELA " | bc `;
echo "PREÇO À PAGAR COM DESCONTO: R$", $total
esac

=============================================================================
4) Desenvolver um programa para imprimir o conceito de um aluno, dada a sua nota.
Supor notas inteiras somente. O critério para conceitos é o seguinte (valor 1.0):
Notas inferiores a 3 - conceito E
Nota de 3 a 5 - conceito D
Notas 6 e 7 - conceito C
Notas 8 e 9 - conceito B
Nota 10 - conceito A

#!/bin/bash
echo "Entre com a nota "
read nota
if [ $nota -le 3 ];
then
echo "Conceito E"
elif [ $nota -ge 3 -a $nota -le 5 ];
then
echo "Conceito D"
elif [ $nota -ge 6 -a $nota -le 7 ];
then
echo "Conceito C"
elif [ $nota -ge 8 -a $nota -le 9 ];
then
echo "Conceito B"
elif [ $nota -eq 10 ];
then
echo "Conceito A"
fi

=============================================================================
5) Faça um programa que leia dois valores para as variáveis A e B e efetue a troca
dos valores de forma que a variável A passe a possuir o valor da variável B e a
variável B passe a possuir o valor da variável A.
Imprima os valores trocados
#!/bin/bash
echo "Informe o valor de A"
read A
echo "Informe o valor de B"
read B
vAux=$A
A=$B
B=$vAux
echo "Valor Invertido de A: $A"
echo "Valor Invertido de B: $B

6) Faça um script que obtenha do usuário a quilometragem atual, a quilometragem anterior,


os litros consumidos e informe a taxa de consumo (quilômetros por litro) de um automóvel.
#!/bin/bash
echo "Digite a quilometragem atual"
read qmatual
echo "Digite a quilometragem anterior"
read qmanterior
echo "Digite os litros consumidos"
read litros
consumo=`echo "scale=2; ($qmatual-$qmanterior)/$litros" | bc`
echo “O consumo foi $consumo
=============================================================================
7) Sabendo que uma certa quantidade de latão é constituída de 70% de cobre e 30% de
zinco. Escreva um script que obtenha do usuário uma certa quantidade de latão e que
indique a quantidade de cobre e de zinco.

#!/bin/bash
echo "Digite a quantidade de latao"
read latao
cobre=`echo "scale=3; $latao * 0.7" | bc`
zinco=`echo "scale=3; $latao * 0.3" | bc`
echo "Quantidade de cobre: $cobre \nQuantidade de zinco: $zinco"
=============================================================================
Usando Case

8) Elabore um script que calcule o que deve ser pago por um produto, considerando o preço
normal de etiqueta e a escolha da condição de pagamento. Utilize os códigos da tabela a
seguir para ler a qual condição de pagamento escolhida e efetuar o cálculo adequado, se
houver parcelamento, mostrar o valor de uma parcela.
Código Condição de pagamento
1 À vista em dinheiro ou cheque, recebe 10% de desconto
2 À vista no cartão de crédito, recebe 5% de desconto
3 Em 2 vezes, preço normal de etiqueta sem juros
4 Em 3 vezes, preço normal de etiqueta mais juros de 10%

#/bin/bash echo
"Digite o valor gasto"
read valor
echo "Digite a forma de pagamento"
read pag
echo "Valor a pagar: " case "$pag" in
1) d=`echo "scale=2; $valor - $valor * 0.10" | bc`
echo “Pagto a vista com 10% desconto: $d”;;
2) echo "scale=2; $valor - $valor * 0.05" | bc;;
3) echo "scale=2; $valor / 2" | bc;;
4) echo "scale=2; ($valor + $valor * 0.10) / 3" | bc;;
*) echo "Forma de pagamento invalida"
esac

=============================================================================
9) Uma agência bancária possui dois tipos de investimentos, conforme o quadro a seguir.
Faça um script que receba o tipo de investimento e seu valor e que calcule e mostre o valor
corrigido, de acordo com o tipo de investimento:
Tipo Descrição Rendimento Mensal
P Poupança 3%
F Fundos de renda fixa 4%

#!/bin/bash
echo "Digite o valor do investimento"
read valor
echo "digite o tipo de investimento"
read tipo
echo "O valor corrigido e:
" case "$tipo" in
'P' | 'p') echo "scale=2; $valor+$valor*0.03" | bc;;
'F' | 'f') echo "scale=2; $valor+$valor*0.04" | bc;;
*) echo "Tipo de investimento invalido"
Esac
=============================================================================
Usando Decisão composta e encadeada

10) Escreva um script que obtenha a altura e o sexo de uma pessoa e calcula e retorna o seu
peso ideal, utilizando as seguintes fórmulas:
Homens = (72.7*altura) - 58
Mulheres = (62.1*altura)- 44.7

#!/bin/bash
echo "Digite a sua altura"
read altura
echo "Digite o seu sexo"
read sexo
if [ $sexo = 'f' -o $sexo = 'F' ]; then
pesoideal=`echo "scale=2; (62.1*$altura)-44.7" | bc`
echo "O seu peso ideal e: $pesoideal"
elif [ $sexo = 'm' -o $sexo = 'M' ];then
pesoideal=`echo "scale=2; (72.7*altura) - 58" | bc`
echo "O seu peso ideal e: $pesoideal"
else
echo "Opcao invalida"
fi
=============================================================================
11) Um hotel que recebe hóspedes em regime de pensão completa tem preços diferenciados
por idade e sexo conforme está indicado abaixo:
PREÇOS EM REAIS POR IDADE E SEXO
até 12 anos de 12 a 55 anosmais de 55 anos
FEMININO R$ 21,50 R$ 53,99 R$ 40,00
MASCULINO R$ 19,50 R$ 60,30 R$ 45,50
Faça um algoritmo que obtenha a idade e o sexo do hóspede e em seguida mostre o preço
da diária
#!/bin/bash
echo "Digite a sua idade"
read idade
echo "Digite o seu sexo"
read sexo
if [ $sexo = 'f' -o $sexo = 'F' ]; then
if [ $idade -lt 12 ]; then
echo "O valor e: 21,50"
elif [ $idade -lt 55 ]; then
echo "O valor e: 53,99"
else
echo "O valor e: 40,00"
fi
fi
if [ $sexo = 'm' -o $sexo = 'M' ]; then
if [ $idade -lt 12 ]; then
echo "O valor e: 19,50"
elif [ $idade -lt 55 ]; then
echo "O valor e: 60,30"
else
echo "O valor e: 40,50"
fi
fi
=============================================================================
NOVOS SCRIPTS PARA ESTUDAR

12) Verifica se o parâmetro $1 digitado pelo usuário é um arquivo ou um diretório

#!/bin/bash
if test -d $1
then
echo "é um diretório"
elif test -f $1
then
echo "é um arquivo"
fi
=============================================================================
12) Escrever um script que recebe uma temperatura em graus Centígrados, como parâmetro,
e a exiba convertida em graus Fahrenheit. A fórmula de conversão é F=(9C+160)/5, onde F é
a temperatura em Fahrenheit e C é a temperatura em Centígrados.

RESPOSTA1
#!/bin/bash
if test $# -eq 0
then
echo "falta parametro"
exit
else
fire=$(((9 * $1 + 100) /5))
echo "A temperatura em graus Fahrenheit é: $fire F°"
fi
TEM QUE TESTAR NO DOCKER ***
Considere que você recebe informações de um serviço de meteorologia norte -americano e
precisa
converter as informações para as unidades de medidas nacionais. Assim, crie algoritmos em
pseudocódigo para:

a) Ler uma quantidade de chuva (dada em polegadas) e a presentar a mesma quantidade em


milímetros.(1 polegada = 25,4 m m).
#!/bin/bash
echo “ Digite a quantidade de chuva em polegadas: “
read qtdpol
qtdmm=$(($qtdpol * 25.4))
echo “ A quantidade de chuvas em milímetros é: $qtdmm mm”

b) Ler uma temperatura dada na escala Fahrenheit (tF) e mostrar a mesma temperatura em Celsius
(tC ), pela fórmula tC = 5 (tF – 32)/9

#!/bin/bash
echo “ Digite a temperatura em Fahrenheit: “
read tempF
tempC= `echo scale=2, 5*($tempF-32)/9 | bc
echo “A temperatura em Celsius é: $tempC ”
=============================================================================

13)Escrever um script que receba um valor inteiro, como parâmetro, e exiba a mensagem
“POSITIVO”, “NEGATIVO” ou “NULO”, conforme o caso.
RESPOSTA1
#!/bin/bash
echo “ Digite um valor: ”
read num
if [ $num -lt 0 ];then
echo "valor negativo"
elif [ $num -eq 0 ];then
echo "nulo"
else
echo "valor positivo"
fi

RESPOSTA 2
#!/bin/bash
if [ $1 -lt 0 ]
then
echo "valor negativo"
elif [ $1 -eq 0 ]
then
echo "nulo"
else
echo "valor positivo"
fi
=============================================================================
14)Escrever um script que receba um valor inteiro positivo, como parâmetro, e exiba todos
os valores anteriores do número até chegar no 0.

#!/bin/bash
for (( i=$1; i!=0; i--))
do
echo $i
done

=============================================================================
15)Faça um conversor de moeda entre de real brasileiro, peso argentino e peso uruguaio.
Quando fornecido um valor em uma determinada moeda o script deve dizer o valor nas
outras duas moedas. Por exemplo, se o usuário tiver reais, o script deve converter o valor
digitado em reais para peso argentino e uruguaio.

#!/bin/bash
echo "#########################################"
echo "########## conversor de moedas ##########"
echo "#########################################"
sleep 1
echo "Escolha a moeda que você possui, digitando o número correspondente: (1 - Real, 2 -
Peso Argentino, 3 - Peso uruguaio"
read tipo
clear
echo "Qual valor você quer cambiar? "
read valor
#Converter de real para outros
if test $tipo -eq "1"
then
echo "$valor Reais convertido para Peso Argentino Equivale a:"
echo "$valor * 3.60" | bc
echo "$valor Reais convertido para Peso Uruguaio Equivale a:"
echo "$valor * 10.40" | bc
fi
#converter de peso argentino para outros
if test $tipo -eq "2"
then
echo "$valor Pesos Argentinos convertido para Reais Equivale a:"
echo "$valor * 0.27" | bc
echo "$valor Pesos Argentinos convertido para Peso Uruguaio Equivale a:"
echo "$valor * 2.88" | bc
fi
#converter de peso uruguaio para outros
if test $tipo -eq "3"
then
echo "$valor Pesos Uruguaios convertido para Reais Equivale a:"
echo "$valor * 0.09" | bc
echo "$valor Pesos Uruguaios convertido para Peso Argentino Equivale a:"
echo "$valor * 0.34" | bc
fi

=============================================================================
16)Script de configuração de placa de rede

#!/bin/bash
read -p "Digite a placa de rede a ser configurada - EX: eth0, eth1 ...: " eth
read -p "Digite o ip desejado: " ip
read -p "Digite a Mascare de Subrede :" mascara
ifconfig $eth $ip netmask $mascara up
echo "Pronto ! $eth configurado com o ip $ip e mascara $mascara"

=============================================================================
17)Script para adicionar domínios para serem bloqueados ou permitidos no squid:

#!/bin/bash
echo "Digite o caminho do squid: "
read caminho
while true
do
echo -e "URL: "
read URL
echo $URL >> $caminho
echo "Cadastro Efetuado!!!"
done
=============================================================================
18) Elabore um programa que calcule e exiba a soma dos números ímpares contidos entre
zero e um número ímpar fornecido via teclado.

RESPOSTA 1
#!/bin/bash
echo "Digite um valor impar: "
read valor
soma=0
for((i=1;i<=$valor;i=i+2))
{
soma=$(($soma+$i))
}
echo "A soma eh: $soma."
==================================
RESPOSTA 2
#!/bin/bash

echo " Digite o valor impar: "


read valor

soma=0
for((i=0;i<=$valor;i++))
{
if [ `expr $i % 2` -eq 1 ]; then
soma=$(($soma+$i))
fi
}
echo " A soma eh: $soma."

***dica do professor***
if [ `expr $i % 2` -eq 1 ]; then (ímpar)
if [ `expr $i % 2` -eq 0 ]; then (par)

19) Elabore um programa que calcule e exiba a soma dos números pares contidos entre zero
e um número par fornecido via teclado
RESPOSTA 1
#!/bin/bash
echo" Digite um valor par: "
read valor
soma=0
for((1=2;i<=$valor;i=i+2))
{
soma=$((soma+$i))
}
echo " A soma eh: $soma.

RESPOSTA 2
#!/bin/bash
echo "Digite o valor par: "
read valor
soma=0
for((i=1;i<=$valor;i++))
{
if [ `expr $i % 2` -eq 0 ]; then
soma=$(($soma+$i))
fi
}
echo "A soma eh: $soma."

=============================================================================
20) Tem-se um conjunto de dados contendo a altura e o sexo (masculino, feminino) de 50 pessoas.
Fazer um programa que calcule e escreva:
a) A maior e a menor altura do grupo;
b) A média de altura das mulheres;
c) O numero de homens.

##!/bin/bash
somaaltmul=0
conth=0
contm=0
for((i=0;i<5;i++))
{
echo "Digite a altura da pessoa: "
read altura
echo "Digite o sexo da pessoa (1) masculino, (2) feminino..."
read sexo
if [ $i -eq 0 ]; then
maior=$altura
menor=$altura
fi
if [ $altura -gt $maior ]; then
maior=$altura
fi
if [ $altura -lt $menor ]; then
menor=$altura
fi
if [ $sexo -eq 1 ]; then
conth=$(($conth+1))
fi
if [ $sexo -eq 2 ]; then
somaaltmul=`echo "scale=2; $(($somaaltmul+$altura))" | bc`
contm=$(($contm+1))
fi
}
media=`echo "scale=2; $somaaltmul/$contm" | bc`
echo "A média da altura das mulheres eh: $media."
echo "A quantidade de homens é: $conth."
echo "O maior eh $maior."
echo "O menor eh $menor."
=============================================================================
21) Escreva um programa que calcule a média dos números digitados pelo usuário, se eles forem
pares. Termine a leitura se o usuário digitar zero (0).Valor1,5

#!/bin/bash
soma=0
cont=0
valor=1
until [ $valor -eq 0 ]
do
echo "Digite o valor: "
read valor
if [ `expr $valor % 2` -eq 0 -a $valor -ne 0 ]; then
soma=$(($soma+$valor))
cont=$(($cont+1))
fi
done
media=`echo "scale=2; $soma/$cont" | bc`
echo "A media eh $media."
===============================================================
#!/bin/bash
soma=0
cont=0
valor=1
until [ $valor -eq 0 ]
do
echo " Digite o valor : "
read valor
if [ `expr $valor % 2` -eq 0 -a $valor -ne 0 ]; then
soma=$(($soma+$valor ))
cont=$(($cont+1))
fi
done
media=`echo "scale=2; $soma/$cont" | bc`
echo " A media é: $media
======================================================================
22) Elabore um programa que calcule os múltiplos de 3, compreendidos no intervalo entre 6 e um
dado limite superior fornecido pelo usuário.

#!/bin/bash
=====================================================================================
23) Escreva um script que tenha uma função que receba três valores e apresente que tipo de
triangulo é formado.
1) Para formar um triangulo a soma dos outros dois lados deveser maior que o outro lado
2) Um triangulo é equilatero se os tes lados forem iguais
3) Um triangulo é isoscele se pelo menos dois lados são iguais
3) Um triangulo é escaleno se os tes lados forem diferentes
RESPOSTA1
#!/bin/bash
# nossa funcao
triang()
{
num1=$1
num2=$2
num3=$3

soma1=$(($num1+$num2))
soma2=$(($num1+$num3))
soma3=$(($num2+$num3))

if [ $soma1 -gt $num3 -a $soma2 -gt $num2 -a $soma3 -gt $num1 ]; then
echo "É um triângulo..."
if [ $num1 -eq $num2 -a $num2 -eq $num3 -a $num1 -eq $num3 ]; then
echo "Equilátero.."
elif [ $num1 -eq $num2 -o $num1 -eq $num3 -o $num2 -eq $num3 ]; then
echo "Isósceles..."
elif [ $num1 -ne $num2 -a $num1 -ne $num3 -a $num2 -ne $num3 ]; then
echo "Escaleno..."
fi
else
echo "Não é um triângulo..."
fi
}

# programa principal
echo "Entre com o 1o valor: "
read a
echo "Entre com o 2o valor: "
read b
echo "Entre com o 3o valor: "
read c
triang $a $b $c
RESPOSTA 2
#!/bin/bash
function triangulo
{
echo "Digite o valor do primeiro lado do triangulo"
read lado1
echo "Digite o segundo valor do lado do triangulo"
read lado2
echo "Digite o terceiro valor do lado do triangulo"
read lado3
soma=`echo "scale=2; $lado1+$lado2" | bc`
soma2=`echo "scale=2; $lado3+$lado1" | bc`
soma3=`echo "scale=2; $lado2+lado3" | bc`
if [ $soma -lt $lado3 ]; then
echo "Não temos um triangulo formado"
elif [ $soma2 -lt $lado2 ]; then
echo "Não temos um triangulo formado"
elif [ $soma3 -lt $lado1 ]; then
echo "Não temos um triangulo formado"
elif [ $lado1 -eq $lado2 -a $lado1 -eq $lado3 ]; then
echo "equilátero"
elif [ $lado1 -eq $lado2 -o $lado3 -eq $lado2 -o $lado1 -eq $lado3 ]; then
echo "Isóscele"
else
echo "Escaleno"
fi
}
triangulo
==================================================================================
24) Ler dois números inteiros e imprima a soma>antes do resultado, deverá aparecer a mensagem :
Soma.

#!/bin/bash
echo "Digite um numero: "
read num1
echo "Digite outro numero: "
read num2
soma=$(($num1 + $num2))
echo "Soma: $soma"

=====================================================================================
25) Ler um número inteiro e imprimir seu sucessor e seu antecessor.

#!/bin/bash
echo "Digite um numero: "
read numero
ant=$(($numero - 1))
suc=$(($numero + 1))
echo “Sucessor : $suc e Antecessor: $ant”
=====================================================================================
26)Sabe-se que para iluminar de maneira correta os cômodos de uma casa, para cada m2 deve-se usar
18 W de potência. Faça um Script que receba as duas dimensões de um cômodo (em metros), calcule e
mostre a sua área (em m2 ) e a potência de iluminação que deverá ser utilizada.

#!/bin/bash
echo “Digite a largura do cômodo em metros: ”
read largura
echo “Digite o comprimento do cômodo em metros: ”
read comprimento

tamanho=$(($largura * $comprimento))
potencia=$(($tamanho / 18))

echo “O tamanho do cômodo é: $tamanho;


echo “A potência para iluminação é: $potencia;
27) Os produtores da Fazenda “Nossa Senhora da Vaca Levemente Gordinha” querem produzir um
novo leite achocolatado a ser distribuído no mercado em caixinhas conforme figura abaixo:
Para produção de tal produto utiliza-se leite retirado das próprias vacas da fazenda que produzem a
fantástica quantia de K litros por ordenha, misturado ao chocolate em pó produzido pela fábrica do
filho do fazendeiro.
Sabe-se que se obtém 10 litros de achocolatado misturando-se 1 kg de chocolate a 9 litros de leite.
Faça um algoritmo que escreva o número máximo de caixinhas que podem ser produzidas por
ordenha.
A fórmula que rege esse problema é: QtdeCaixinhas = (K * (10/9) * 1000) / (x * y * z).

#!/bin/bash
x=0
y=0
z=0
K=1
caixinha=$(($K *(10/9) *1000/ ($x *$y *$z)
echo “Numero máximo de caixinhas é: $caixinha”

=====================================================================================
28) Um funcionário recebe um salário fixo, mais 4% de comissão sobre as vendas. Elabore um Script
que receba o salário fixo de um funcionário e o valor de suas vendas, calcule e mostre a comissão e o
salário final do funcionário.

29) Elabore um Script que receba o número de lados de um polígono convexo, calcule e mostre o
número de diagonais desse polígono, onde N é o número de lados do polígono. Sabe-se que ND=N(N-
3) /2.

=====================================================================================
30) Desenvolva um programa que calcule o IMC de 10 pacientes. Cálculo do IMC: peso / altura^2. Use
estrutura de repetição (valor 1.5).
#!/bin/bash

for((i=0;i<10;i++))
{
echo "Informe a altura: "
read altura
echo "Informe o peso: "
read peso
imc=`echo "scale=2; $peso/($altura^2)" | bc`
}
echo "O IMC é: $imc."

=====================================================================================
31) Escreva um programa que calcule a média dos números digitados pelo usuário, se eles forem
pares. Termine a leitura se o usuário digitar zero (0) (valor 1.5).

#!/bin/bash
soma=0
cont=0
valor=1
until [ $valor -eq 0 ]
do
echo "Digite o valor: "
read valor
if [ `expr $valor % 2` -eq 0 -a $valor -ne 0 ]; then
soma=$(($soma+$valor))
cont=$(($cont+1))
fi
done
media=`echo "scale=2; $soma/$cont" | bc`
echo "A média é: $media."
=====================================================================================
32) Faça um script que, fornecida a quantidade de metros que uma pessoa corre por dia, durante um
mês, apresente (valor 2.0):
(a) Quantos metros essa pessoa correu no mês (considere os meses com 30 dias);
(b) A quantidade média de metros corridos em um mês;

#!/bin/bash
qtdmetros=0
contmts=0

while [ $contmts-le 29 ]
do
echo "Digite os metros"
read metros
qtdmetros=$(( $metros + $qtdmetros ))
contmts=$(( $contmts+1 ))
done
media=`echo "scale=1; $qtdametros/30" | bc`
echo "O total de metros no mês é: $sqtdmetros."
echo "A média de metros no mês é: $media."
===================================================================================
33) Desenvolva um programa que mostre os números de 1 a 50. Ao chegar no número 25 dar
a seguinte mensagem “chegou na metade” e depois continue contando até chegar no
número 50.

#!/bin/bash
cont=1
while [ $cont -le 50 ]
do
echo "Valor : $cont "
cont=$(( $cont+1))
if [ $cont -eq 25 ];then
echo "Cheguei na metade...!"
fi
done
=============================================================================
34)Elabore um programa que mostre os números de 1 a 100 sendo que a partir do número
50 seja incrementado e apresentado de dois em dois.

#!/bin/bash
x=0
while [ $x -le 100 ]
do
echo "Valores: $x "
x=$(($x+1))
if [ $x -gt 50 ]
then
x=$(($x+1))
fi
done
=============================================================================
35)Elabore um programa que conte de 150 até 1 e mostre em ordem decrescente os
números entre 100 e 50
#!/bin/bash
x=150
until [ $x -le 1 -a $x -ge 0 ]
do
x=$(($x-1))
if [ $x -le 100 -a $x -ge 50 ]
then
echo "$x"
fi
done
=============================================================================
(com comando para (for)
36)Escreva um script que calcule a média de 10 números digitados pelo usuário (usar
acumulador).
#!/bin/bash
ac=0
for((i=1;i<=10;i++))
{
echo "Informe a nota: "
read nota
ac=$(($ac+$nota))
}
media=`echo "scale=2; $ac/10" | bc`
echo "Média: $media"
============================================================================
37) Desenvolva um programa em shell script que calcule e imprima a tabuada de um número
digitado pelo usuário. Use estrutura de repetição (valor 1.5).
Elabore um script que apresente a tabuada de um número especificado pelo usuário.
RESPOSTA 1
#!/bin/bash
echo "Digite a tabuada desejada"
read t
contador=1
while [ $contador -lt 11 ];
do
result=$[$t * $contador]
echo "$t x $contador = $result"
contador=$[$contador + 1]
done

RESPOSTA 2
#!/bin/bash
echo "Informe o número da tabuada: "
read t
conttab=1
while [ $conttab -lt 11 ]; do
result=$[$t * $conttab]
echo "$t x $conttab = $result"
conttab=$[$conttab + 1]
done
=====================================================================================
38) Criar um script que leia os limites inferior e superior de um intervalo e imprima todos os números
pares deste intervalo. Suponha que os dados digitados são para um intervalo crescente, ou seja, o
primeiro valor é menor que o segundo (valor 2.0).
Ex:
Valor inferior = 4
Valor superior = 10
Saída:
Números pares: 4, 6, 8 e 10

RESPOSTA 1

#!/bin/bash
echo "Informe o valor do limite inferior: "
read ini
echo "Informe o valor do limite superior: "
read fim
for((i=$ini;i<$fim;i++))
{
if [ `expr $i % 2` -eq 0 ]; then
echo "$i"
fi

RESPOSTA 2 ERRO DE SINTAXE


#!/bin/bash
par=0
impar=0
soma=0
ate=(seq $ini $fim)
echo " "Informe o valor do limite inferior: ""
read ini
echo "Informe o valor do limite superior: "
read fim
if [ `expr $ate % 2` -eq 0 ]; then
read par
else
read impar
fi
for i in $(seq $ini $fim); do
soma=$(($par+i))
echo "$i"
done
echo "Soma: $soma"

=====================================================================================
39) Escreva um programa que leia a quantidade de valores que serão processados, depois leia os
valores e calcule a média dos mesmos. Utilize estrutura de repetição (valor 1.5).1

#!/bin/bash
valor=1
echo "Digite a quantidade de valores para processar:"
read qnt
soma=0
while [ $valor -le $qnt ]
do
echo "Digite um valor:"
read val
soma=$(( $soma+$val ))
valor=$(( $valor+1 ))
done
media=`echo "$soma/$qnt" | bc`
echo "A média dos valores é: $media"

40) Um funcionário recebe um salário fixo, mais 4% de comissão sobre as vendas. Elabore um Script
que receba o salário fixo de um funcionário e o valor de suas vendas, calcule e mostre a comissão e o
salário final do funcionário.

#!/bin/bash
echo "Informe o salário atual (sem ponto e virgulas): "
read salfixo
echo "Informe o valor das vendas (sem ponto e virgulas): "
read vendas
comi=$(($vendas *4/100))
salfinal=$(($comi+$salfixo))
echo "Comissão: $comi"
echo "Salário: $salfinal"

41) Elabore um Script que receba o número de lados de um polígono convexo, calcule e mostre o
número de diagonais desse polígono, onde N é o número de lados do polígono. Sabe-se que ND=N(N-
3) /2.
RESPOSTA1
#!/bin/bash
echo " Informe o número de lados: "
read lados
diagonal=`echo "scale=2; ($lados * $lados -3) /2 " | bc `
echo " O número de diagonais desse polígono é: $diagonal "
RESPOSTA2
#!/bin/bash
echo " Entre com o número de lados: "
read lados
resultado=`echo "scale=2; $lados * ($lados -3)/2 " | bc `
echo " Este polígono tem o número de diagonais : $resultado "
=====================================================================================
42) PESO IDEAL
#!/bin/bash
#IMC Homem e Mulher
echo "Digite a altura"
read altura
echo "Digite o sexo"
read sexo
if [ $sexo = m ]; then
homens=`echo "scale=2; (72.7*$altura) - 58" | bc`
echo "Seu peso ideal $homens"

elif [ $sexo = f ]; then


mulher=`echo "scale=2; (62.1*$altura) - 44.7" | bc`
echo "Seu peso ideal é $mulher"
fi
====================================================================================
43) TAXA DIARIA DE UM HOTEL

#!/bin/bash
#Hotel
echo "Digite seu sexo"
read sexo
echo "Digite sua idade"
read idade
if [ $sexo = m -a $idade -ge 1 -a $idade -le 12 ]; then
echo "Sua taxa diária é R$ 19.50"

elif [ $sexo = m -a $idade -ge 12 -a $idade -le 55 ]; then


echo "Sua taxa diároa é R$ 60.30"

elif [ $sexo = m -a $idade -ge 55 ]; then


echo "Sua taxa diária é R$ 45.50"

elif [ $sexo = f -a $idade -ge 1 -a $idade -le 12 ]; then


echo "Sua taxa diária é R$ 21.50"

elif [ $sexo = f -a $idade -ge 12 -a $idade -le 55 ]; then


echo "Sua taxa diária é R$ 53.90"
=====================================================================================
45) INVESTIMENTO

#!/bin/bash
#Investimento
echo "Digite o valor do investimento"
read investimento
echo "Digite o método de investimento"
read poufixa
case $poufixa in
P) poupanca=`echo "scale=2; ($investimento*3)/100" | bc`;
echo "Rendimento mensal que você terá por mês é $poupanca";;

F) Fundos=`echo "scale=2; ($investimento*4)/100" | bc`;


echo "Fundos da sua renda fixa é $Fundos";;
esac
=====================================================================================
46) PAGAMENTO
#!/bin/bash
#Pagamento
echo "Digite o preço da compra"
read preco
echo "Digite o comando da opção de pagamento"
read pagamento
case $pagamento in

1) dicheque=`echo "scale=2; $preco*10/100" | bc`;


totaldi=`echo "scale=2; $preco-$dicheque" | bc`;
echo "A vista ou em cheque, recebe 10% de desconto, o seu desconto é $dicheque";
echo "O pagamento total é $totaldi";;

2) dicartao=`echo "scale=2; $preco*5/100 " | bc`;


totalca=`echo "scale=2; $preco - $dicartao" | bc`;
echo "Á vista no cartão de crédito, recebe 5% de desconto, seu desconto é $dicartao";
echo "O pagamento total é $totalca";;

3) duasvezes=`echo "scale=2; $preco/2" | bc`;


echo "Em duas 2 vezes, preço sem juros";
echo "Preço que será pago em 2 vezes $duasvezes";;

4) tresvezes=`echo "scale=2; ($preco + $preco*10/100)/3" | bc`;


echo "a parcela eh $tresvezes"
esac
=====================================================================================
47) LATÃO

#!/bin/bash
#Latão
echo "Digite a quantidade de latão"
read latao
Cobre=`echo "scale=2; $latao*70/100" | bc`
Zinco=`echo "scale=2; $latao*30/100" | bc`
echo "A quantidade de zinco é $Zinco"
echo "A quantidade de cobre é $Cobre"
=====================================================================================
48) QUILOMETRAGEM

#!/bin/bash
#Quilometragem
echo "Digite sua quilometragem atual"
read km1
echo "Digite sua quilometragem anterior"
read km2
echo "Digite os litros consumidos"
read litros
Kmlitro=`echo "scale=3; ($km1-$km2)/$litros" | bc`
echo "A taxa de consumo é $Kmlitro"

49) FUNÇAO SOMA FATORIAL MULTIPLO

#!/bin/bash
echo "Digite o numero que deseje fazer o cálculo"
read num
echo "Escolha o que quer fazer de 1 (Soma), 2 (fatorial) e 3 ou + para (Multiplo de 3)"
read resp

if [ $resp -eq 1 ]; then


function soma ()
{
S=2
R=0
while [ $S -ne $num ]; do
R=$(expr $num % $S)
if [ $R -ne 0 ]; then
S=$(($S+1))
else
echo " O numero" $num "não é primo"
echo "Aperte Ctrl+C, para interrromper"
sleep 10
fi
done
if [ $S -eq $num ]; then
echo "O numero" $num "é primo"
fi

}
soma

elif [ $resp -eq 2 ]; then


function fatorial ()
{
for((fat=1; $num>=1; num=$num - 1))
do
fat=$(($fat*$num))
done
echo "$fat"
}
fatorial
=====================================================================================
50) Elabore um programa que, dada a idade de um nadador, classifique-o em uma das seguintes
categorias. Use os comandos if e case para montar esta lógica.

idade classificação
6 Infantil A
7 Infantil B
8 Infantil C
9 Juvenil
10 ou acima livre

#!/bin/bash
echo "idade"
read idade
if [ $idade –gt 5 ]
then
case "$idade" in
6) echo “Infantil A” ;;
7) echo “Infantil B” ;;
8) echo “Infantil C” ;;
9) echo “Juvenil” ;;
*) echo “Livre” ;;
esac
else
echo “valor nao apropriado”
fi
=====================================================================================
51) Escreva um Script que obtenha três números contendo a quantidade de moedas de 25, 10 e 5
centavos respectivamente de um cofre. O Script deve calcular e mostrar o valor em reais (R$).

#!/bin/bash
echo "qtde 25"
read qtde25
echo "qtde 10"
read qtde10
echo "qtde 5"
read qtde5
cent25=`echo “scale=2; $qtde25*25/100” | bc`
echo $cent25
cent10=`echo “scale=2; $qtde10*10/100” | bc`
echo $cent10
cent5=`echo “scale=2; $qtde5*5/100” | bc`
echo $cent5
total=`echo “scale=2; $cent25+$cent10+$cent5” | bc`
echo $total
=====================================================================================
52) Escreva um Script que obtenha três números contendo a quantidade de moedas de 25, 10 e 5
centavos respectivamente de um cofre. O Script deve calcular e mostrar o valor em reais (R$).

#!/bin/bash
echo "codigo"
read codigo
echo "salario atual"
read salarioa
case "$codigo" in
1) echo "escriturario"; aumento=`echo “scale=2; $salarioa*50/100” | bc`;
2) echo "Aumento foi $aumento";
3) n=`echo “scale2; $salarioa+$aumento” | bc`;
4) echo "Novo salario eh $n" ;;

2) echo "secretario"; aumento=`echo “scale=2; $salarioa*35/100” | bc`; echo "Aumento foi $aumento";
n=`echo “scale2; $salarioa+$aumento” | bc`; echo "Novo salario eh $n" ;;
3) echo "caixa"; aumento=`echo “scale=2; $salarioa*20/100” | bc`; echo "Aumento foi $aumento";
n=`echo “scale2; $salarioa+$aumento” | bc`; echo "Novo salario eh $n" ;;
4) echo "gerente"; aumento=`echo “scale=2; $salarioa*10/100” | bc`; echo "Aumento foi $aumento";
n=`echo “scale2; $salarioa+$aumento” | bc`; echo "Novo salario eh $n" ;;
5) echo "diretor"; echo "Nao teve aumento"; echo "O salario continou $salarioa" ;;
*) echo "Nao se aplica"
esac
=====================================================================================
53) Elabore um script que receba o primeiro octeto de um endereço IP e informe se o octeto é válido e
a qual classe pertence:

Classe A 1-126
Classe B 128-191
Classe C 192-223
Classe A - essa classe é para redes muito grandes, como as maiores empresas internacionais. Os
endereços IP com o primeiro octeto de 1 a 126 fazem parte dessa classe.

Classe B - é usada para redes de tamanho médio. Um bom exemplo seria o campus de uma grande
universidade. Os endereços IP com o primeiro octeto de 128 a 191 fazem parte dessa classe.

Classe C - são geralmente usados para empresas de tamanho pequeno a médio. Os endereços IP com
o primeiro octeto de 192 a 223 fazem parte dessa classe.
#!/bin/bash
echo "entre com o primeiro octeto"
read octeto
if [ $octeto –ge 1 –a $octeto –le 126 ]
then
echo “Valido. Classe A.”
elif [ $octeto –ge 128 –a $octeto –le 191 ]
then
echo “Valido. Classe B.”
elif [ $octeto –ge 192 –a $octeto –le 223 ]
then
echo “Valido. Classe C.”
else
echo “nao pertence a nenhuma classe”
fi
RESPOSTA2

#!/bin/bash
echo "Digite o octeto: "
read octeto
if [ $octeto -ge 1 -a $octeto -le 127 ]
then
echo "Classe A"
elif [ $octeto -ge 128 -a $octeto -le 191 ]
then
echo "Classe B"
elif [ $octeto -ge 192 -a $octeto -le 223 ]
then
echo "Classe C"
else
echo "Octeto inválido..."
fi

=====================================================================================
53) Faça um Script que solicite ao usuário três números, o primeiro será o inicio da seqüência, o
segundo o decremento e o último o fim da seqüência.

#!/bin/bash
echo "inicio"
read inicio
echo "decremento"
read dec
echo "fim"
read fim
seq $inicio $dec $fim

=====================================================================================
55) Crie um algoritmo para calcular a área de um retângulo dados a base e a altura (sendo base e
altura sendo números inteiros).
RESPOSTA1
#!/bin/bash
echo "Informe a Base: "
read b
echo " Informe a Altura: "
read a
area=$(($b*$a))
echo “A area do retângulo é: $area"

RESPOSTA 2
#!/bin/bash
echo "informe a Base: "
read b
echo "Informe a Altura: "
read a
area=`echo "scale=2;($b + $a) /2 " | bc `
echo "A area do retângulo é: $area "
=====================================================================================
56) Faça um algoritmo que leia dois valores inteiros representando, respectivamente, um valor de
hora e um de minutos e informe a quantidade em minutos. Exemplo:
valores lidos:
- hora: 13
- minutos: 15
impressão: 795 minutos
#!/bin/bash
echo " Digite a hora: "
read h
echo " Digite os minutos: "
read m
total=$(($h*60+$m))
echo " Quantidade em minutos: $total"
=====================================================================================
57) Faça um algoritmo que receba o ano de nascimento de uma pessoa e o ano atual, calcule e
mostre:
a idade dessa pessoa em anos;
a idade dessa pessoa em meses;
#!/bin/bash
echo " Digite o Ano de Nascimento: "
read ano
echo " Digite o Ano Atual: "
read atual
idade=$(($atual - $ano))
meses=$(($idade * 12))
echo " A idade dessa pessoa é: $idade anos"
echo " A idade dessa pessoa em meses é: $meses meses"
=====================================================================================
58) Fazer um algoritmo que obtenha um valor em metros e imprime o correspondente em decímetros,
centímetros e milímetros.

#!/bin/bash
echo "Informe os Metros: "
read m

Decimetros=$(($m * 10))
Centimetros=$(($m * 100))
Milimetros=$(($m * 1000))
echo " O valor em decímetros é: $Decimetros dm"
echo " O valor em centímetros é: $Centimetros cm"
echo " O valor em milímetros é: $Milimetros mm"

=====================================================================================
59) Desenvolva um script que mostre todos os números divisíveis por três de uma seqüência dada
pelo usuário.
#!/bin/bash
echo "Iniciar a sequencia"
read iniseq
echo "Finalizar a sequencia"
read finseq
for ((i=$iniseq; i<=$finseq; i++))
do
if [ `expr $i % 3` -eq 0 ] ; then
echo "$i numero é divisivel por 3"
fi
done
60) Escreva um script tenha três funções: uma para calcular o fatorial de um número, outra
para calcular se um número é primo ou não e outra para calcular se o número é múltiplo de
3. Dê opções (if) para o usuário escolher qual o calculo que deseja executar.

61) Escreva um script que tenha uma função que receba três valores e apresente que tipo de
triângulo é formado.

Para formar um triângulo a soma dos outros dois lados deve ser maior que o outro lado.
Um triângulo é eqüilátero se os três lados forem iguais
Um triangulo é isóscele se pelo menos dois lados são iguais.
Um triângulo é escaleno se os três lados forem diferentes.
=============================================================================
62)Faça um script que, fornecida a quantidade de metros que uma pessoa corre por dia, durante um
mês, apresente (valor 2.0):
(a) Quantos metros essa pessoa correu no mês (considere os meses com 30 dias);
(b) A quantidade média de metros corridos em um mês;

#!/bin/bash
somametros=0
contd=0

while [ $contd -le 29 ]


do
echo "Digite os metros"
read metros
somametros=$(( $metros + $somametros ))
contd=$(( $contd+1 ))
done
media=`echo "scale=1; $somametros/30" | bc`
echo "O total de metros no mês é: $somametros."
echo "A média de metros no mês é: $media."

=====================================================================================
63) Desenvolva um programa que calcule o IMC de 10 pacientes. Cálculo do IMC: peso / altura^2. Use
estrutura de repetição (valor 1.5).

#!/bin/bash
for((i=0;i<10;i++))
{
echo "Informe a altura : "
read altura
echo "Informe o peso : "
read peso
imc=`echo "scale=2; $peso/($altura^2)" | bc`
}
echo "O IMC dos pacientes é: $imc."

64)

Exercicio 1

#!/bin/bash
#salario
echo "Entre com o salario; "
read salario
var1=`echo "scale=2; $salario*10/100" | bc`
var2=`echo "scale=2; $salario - $var1 " | bc`
var3=`echo "scale=2; $var2*5/100" | bc`
var4=`echo "scale=2; $var2 - $var3 " | bc`
echo "Salario liquido é $var4"

65)

#!/bin/bash
echo " Digite um numero "
read numero
if [ $numero -gt 0 ];
then
echo "Numero positivo "
elif [ $numero -lt 0 ]
then
echo "Numero negativo "
elif [ $numero -eq 0 ]
then
echo "Numero neutro "

fi

66)

#!/bin/bash
echo "Entre com a nota"
read nota
if [ $nota -le 1 ]; then
echo "Conceito E"
elif [ $nota -ge 2 -a $nota -le 4 ]; then
echo "Conceito D"
elif [ $nota -ge 5 -a $nota -le 6 ]; then
echo "Conceito C"
elif [ $nota -ge 7 -a $nota -le 8 ]; then
echo "Conceito B"
elif [ $nota -ge 9 -a $nota -le 10 ]; then
echo "Conceito A"
fi
=====================================================================================
67) Escrever um programa que obtenha dois números, faça a soma destes números e dê uma
mensagem se ele ultrapassar o valor 10.

#!/bin/bash
echo "Digite a primeira nota: "
read num1
echo "Digite a segunda nota: "
read num2
soma=$(($num1+$num2))
if [ $soma -ge 10 ]
then
echo "O resultado da soma é maior ou igual a 10: $soma"
fi

68) Implementar um programa que leia a média e dê a mensagem se o aluno está aprovado ou
reprovado

#!/bin/bash
echo "Digite a sua média: "
read media
if test $media -ge 6
then
echo "Aluno aprovado com média $media."
else
echo "Aluno reprovado com a média: $media."

fi
------------------------------------------------------------------------

68) Implementar um programa que leia a média e dê a mensagem se o aluno está aprovado ou
reprovado ou se vai pra exame

#!/bin/bash
echo "Digite a média: "
read media
if test $media -ge 6
then
echo "Aluno está aprovado com a média: $media."
elif test $media -ge 3 -a $media -lt 6
then
echo "Aluno vai para exame com a média: $media."
else
echo "Aluno está reprovado com a média $media."
fi

69) Escrever um programa que obtenha dois números e os apresente em ordem crescente.

#!/bin/bash
echo "Digite o primeiro número: "
read num1
echo "Digite o segundo número: "
read num2
if test $num1 -lt $num2
then
echo "$num1, $num2"
else
echo "$num2, $num1"
fi

70)

#!/bin/bash
echo "Entre primeiro: "
read num1
echo "Entre segundo: "
read num2
echo "Entre terceiro: "
read num3
if test $num1 -gt $num2 -a $num1 -gt $num3
then
echo "$num1 é o maior."
fi
if test $num2 -g
t $num1 -a $num2 -gt $num3
then
echo "$num2 é o maior."
fi
if test $num3 -gt $num1 -a $num3 -gt $num2
then
echo "$num3 é o maior."

Fi

71) Elabore um programa que, dada a idade de um nadador, classifique-o em uma das seguintes
categorias. Use os comandos if e case para montar esta lógica.
idade classificação
6 Infantil A
7 Infantil B
8 Infantil C
9 Juvenil
10 ou acima livre

#!/bin/bash
echo "idade"
read idade
if [ $idade –gt 5 ]
then
case "$idade" in
6) echo “Infantil A” ;;
7) echo “Infantil B” ;;
8) echo “Infantil C” ;;
9) echo “Juvenil” ;;
*) echo “Livre” ;;
esac
else
echo “Classificação inexistente ”
fi

#!/bin/bash
echo "idade"
read idade
case $idade" in
0|1|2|3|4|5 ) echo "Pre-Infantil";;
6)echo "Infantil A";;
7)echo "Infantil B";;
8)echo "Infantil C";;
9)echo "Juvenil";;
*)echo "livre"
esac

72) Escreva um script que obtenha três números contendo a quantidade de moedas de 25,10 e 5
centavos respectivamente de um cofre. O script deve calcular e mostrar o valor em reais

#!/bin/bash
echo "Digite a quantidade de moedas de 25"
read qtde25
echo "Digite a quantidade de moedas de 10"
read qtde10
echo "digite a quantidade de moedas de 5"
read qtde5

cent25=`echo "scale=2;$qtde25 * 0.25"| bc `


cent10=`echo "scale=2;$qtde10 * 0.1"| bc `
cent5=`echo "scale=2;$qtde5 * 0.05"| bc `
total=`echo "scale=2;$cent25+$cent10+$cent5"| bc `
echo "O valor em reais é: $total"

74) Faça um script que leia dois valores para as variáveis A e B e efetue a troca dos valores de forma
que a variável A passe a possuir o valor da variável B e a variável B passe a possuir o valor da variável
A. Apresente os valores trocados (valor 1,5).
#!/bin/bash
echo "Informe o valor de A"
read A
echo "Informe o valor de B"
read B
vAux=$A
A=$B
B=$vAux
echo "Valor Invertido de A: $A"
echo "Valor Invertido de B: $B

75) O sistema de avaliação de determinada disciplina, é composto por três provas. A primeira prova
tem peso 2, a segunda tem peso 3 e a terceira tem peso 5. Faça um algoritmo para calcular a média
final de um aluno desta disciplina (valor 1,5).
Resposta 1
#!/bin/bash
echo "Entre com a primeira nota: "
read num1
echo "Entre com a segunda nota: "
read num2
echo "Entre com a terceira nota: "
read num3
media=`echo "scale=2;$num1*0.2+$num2*0.3+$num3*0.5"| bc`
Resposta2
echo " A media das notas é $media "
#!/bin/bash
echo " Entre com a primeira nota: "
read num1
echo " Entre com a segunda nota: "
read num2
echo " Entre com a terceira nota: "
read num3
nota1=`echo "scale=2;$num1*0.2" | bc`
nota2=`echo "scale=2;$num2*0.2" | bc`
nota3=`echo "scale=2;$num3*0.2" | bc`
media=`echo "scale=2;($nota1+$nota2+$nota3)" | bc`
echo " A media das notas é $media "

76) Uma empresa de vendas tem três corretores. A empresa paga ao corretor uma comissão calculada
de acordo com o valor de suas vendas. Se o valor da venda de um corretor for maior que R$ 50.000.00
a comissão será de 12% do valor vendido. Se o valor da venda do corre…
... Se o valor da venda do corretor estiver entre R$ 30.000.00 e R$ 50.000.00 (incluindo
extremos) a comissão será de 9.5%. Em qualquer outro caso, a comissão será de 7%.
Escreva um algoritmo que gere um relatório contendo nome, valor da venda e
comissão de cada um dos corretores. O relatório deve mostrar também o total de
vendas da empresa.

#!/bin/bash
echo " Nome Vendedor "
read n
echo "Digite o total de vendas: "
read v
if [ $v -gt 50000 ]; then
comi=$(($v *0.12))
elif [ $v -ge 30000 -a $v -le 50000 ]
then
comi=$(($v * 0.95 ))
else
comi=$(($v * 0.07))
total=$total+$v
fi
echo " Nome $n "
echo " Comissão $comi "
echo "Total $total

*clear
Usado para limpar a tela
*tr
Altera ou deleta caracteres de uma string.
EXEMPLO
echo “seja livre use linux” | tr a-z A-Z
Saída: SEJA LIVRE USE LINUX
echo “#deleta o prompt” | tr –d \#
Saída: deleta o # ou qualquer parâmetro(string)
echo “123:426:linux:shell” | tr : \\t
Saída:123 426 linux shell
-------------------------------------------------------------------------
exemplo1
#!/bin/bash
echo "seja livre use linux" | tr a-z A-Z
echo "#deleta o prompt" | tr -d \#
echo "123:426:linux3:shell" | tr : \\t

exemplo2
#!/bin/bash
echo "seja livre use linux" | tr a-z A-Z
echo "#deleta o prompt" | tr -d \t
echo "123:426:linux3:shell" | tr : \\t

exemplo3
#!/bin/bash
echo "seja livre use linux" | tr a-z A-Z
echo "#deleta o prompt" | tr -d \#
echo "123:426:linux3:shell" | tr : -

* cat imprime na tela sem precisar entrar no * vi


=====================================================================================
==
#!/bin/bash
echo -e '\033[31m Texto Vermelho \033[m'
echo -e '\033[31;1m Texto vermelho brilhante \033[m'
echo -e '\033[44;31;1;5m Fundo azul, texto vermelho brilhante, pisca-pisca \033[m'

=====================================================================================
===
UTILIZANDO ARRAYS
# obtendo o tamanho do vetor
# o @ expande para todos os membros
# o # (antes da variável) encontrará o tamanho do array

#!/bin/bash
vetor[0]="python"
vetor[1]="c++"
vetor[2]="shell script"
vetor[3]="java script"
tam_vetor=${#vetor[@]}
echo "O vetor possui $tam_vetor elementos."
vetor[3]="php"
for((i=0;i<${tam_vetor};i++))
do
echo "vetor[$i]: ${vetor[$i]}"
done
+ soma
- subtração
/ divisão
* multiplicação
() agrupar termos
← ou = para atribuir um valor
^ ou 2 para potência
< <= > >= <> ==
ou ≤ ≥ ≠ =
para operadores relacionais(comparação)
E OU NÃO
para operadores lógicos
Escreva um programa que calcule a média dos números digitados
pelo usuário, se eles forem pares. Termine a leitura se o usuário digitar zero (0) (valor 1.5).

Você também pode gostar