Não consigo resolver

1. Não consigo resolver

Renata silva
Renata100

(usa Ubuntu)

Enviado em 26/03/2015 - 02:10h

Boa noite pessoal estava tentando resolver esses 3 exercício mais não consigo de jeito nenhum, será que tem alguém que pode resolver isso pra mim ajudar
Estava até agora 2 da manhã e não consigo
Grata

1.
Escreva um script que receba por parâmetro o código do cargo de um funcionário e o valor do seu salário atual. Em
seguida, calcular e imprimir o novo salário após o aumento de acordo os dados que seguem: técnicos (código = 1), R$500;
gerentes (código = 2), R$300; demais funcionários (código = 3), R$200;


Escreva um script que receba como parâmetro um número e imprima a sequência de Fibonacci contendo apenas números
menores do que àquele passado como parâmetro. Sequência de Fibonacci = 0 1 1 2 3 5 8 13 …, onde o próximo da
sequência é a soma dos 2 anteriores.


Ler 3 valores inteiros (x,y e z) e responder se eles podem representar os comprimentos dos lados de um triângulo, ou
seja, se (x < y + z) e (y < x + z) e (z < x + y);





  


2. Re: Não consigo resolver

Wagner Souza
wagnerfs

(usa Fedora)

Enviado em 26/03/2015 - 05:01h

Bom dia.

Prezada, dê uma olhada neste artigo que escrevi que tem duas das três questões que você precisa resolver -> http://www.vivaolinux.com.br/artigo/Algoritmos-em-Shell-Script

A sequência de Fibonacci eu vou dar uma olhada para ver se resolvo. Sugiro você procurar também na seção de script daqui do VOL.

Tente resolver e se não consegui avise.

_________________________
Wagner F. de Souza
Graduado em Redes de Computadores
"GNU/Linux for human beings."
LPI ID: LPI000297782



3. Não consigo resolver

Renata silva
Renata100

(usa Ubuntu)

Enviado em 26/03/2015 - 08:42h


Ok, mais em qual página está os 2 exercícios pq não achei aqui


4. Re: Não consigo resolver

Wagner Souza
wagnerfs

(usa Fedora)

Enviado em 26/03/2015 - 09:19h

Exercício 1



#!/bin/bash

# Desenvolvido por Wagner Souza
# 2015-03-26 v1.0

# Escreva um script que receba por parâmetro o código do cargo de um funcionário
# e o valor do seu salário atual. Em seguida, calcular e imprimir o novo salário após
# o aumento de acordo os dados que seguem: técnicos (código = 1), R$500; gerentes
# (código = 2), R$300; demais funcionários (código = 3), R$200;

if [ $1 -eq 1 ];
then
calc=$(($2+500))
echo "Valor atual do salário de um técnico: " $calc

elif [ $1 -eq 2 ];
then
calc=$(($2+300))
echo "Valor atual do salário de um gerente: " $calc
elif [ $1 -eq 3 ];
then
calc=$(($2+200))
echo "Valor atual do salário de um funcionário: " $calc
else
echo "Valor não informado."
fi



Salve o script com o nome que desejar, exemplo script.sh. Dê permissão para execução e em seguida execute o script:


$ sudo chmod +x script.sh
$ ./script.sh 1 1000


O numeral 1 é o parâmetro para o técnico e em seguida o salário. Para os demais cargos é só trocar por 2 e 3 e caso desejo mudar o salário, fique a vontade.
_________________________
Wagner F. de Souza
Graduado em Redes de Computadores
"GNU/Linux for human beings."
LPI ID: LPI000297782



5. Re: Não consigo resolver

Wagner Souza
wagnerfs

(usa Fedora)

Enviado em 26/03/2015 - 09:30h

Bom dia.

Prezada, de fato, não coloquei este algoritmo no artigo, mas ele vai para um livro que estou desenvolvendo baseado neste artigo. Porém, no link http://www.vivaolinux.com.br/artigo/Algoritmos-em-Shell-Script?pagina=4 referente a página 4 do artigo, explico a respeito da estrutura de seleção. Veja a página e a que fala de operadores e tente resolver o exercício 3, pois assim, você fixará melhor o conteúdo. Acredito que a resposta do exercício 1 será de grande ajuda para elucidação do exercício.

Tente fazer o terceiro e qualquer dúvida é só falar. Não me esqueci do segundo exercício não :). Assim que tiver um tempinho vou escrever o código. Mas vá tentando que você conseguirá.

Material de apoio -> http://apoie.org/JulioNeves/

Bons estudos!

_________________________
Wagner F. de Souza
Graduado em Redes de Computadores
"GNU/Linux for human beings."
LPI ID: LPI000297782



6. Não consigo resolver

Renata silva
renata100

(usa Ubuntu)

Enviado em 26/03/2015 - 17:59h


Ok, muito obrigado pelo 1 exercício, no aguardo do 2 exercício que é o Fibonacci e vou tentar fazer o 3 exercício.
Muito obrigada e deus te abençoe


7. Re: Não consigo resolver

Wagner Souza
wagnerfs

(usa Fedora)

Enviado em 27/03/2015 - 00:10h

Boa noite.

Prezada, segue abaixo a solução para o exercício 2:



#!/bin/bash
# Desenvolvido por Wagner Souza em 27/03/2015


i=1
a=0
b=1

echo -n "$a $b "

while [ $i -lt $1 ];
do

aux=$(($a+$b))
a=$b
b=$aux

# Teste na variável aux para não mostrar valores maiores ao que foi passado

if [ $aux -lt $1 ];
then
echo -n "$aux "
else
exit
fi

i=$(($i+1))
done




Tente entender a lógica do problema e em caso de dúvidas é só falar.
_________________________
Wagner F. de Souza
Graduado em Redes de Computadores
"GNU/Linux for human beings."
LPI ID: LPI000297782



8. Re: Não consigo resolver

Renata silva
renata100

(usa Ubuntu)

Enviado em 27/03/2015 - 00:19h


Muito obrigado pela ajuda. Amanhã vou tentar fazer o exercicio 3, qualquer dúvida entro em contato


9. não consigo resolver

Renata silva
renata100

(usa Ubuntu)

Enviado em 30/03/2015 - 13:05h


Boa tarde pessoal
Realmente não consigo resolver o 3 exercicio, tentei fazer como algoritmo mais mesmo assim não deu
Mais o que eu queria mesmo é resolver em shell script
O olha o exercício em baixo, está dificil

Ler 3 valores inteiros (x y z) e responder se eles podem representar os comprimentos dos lados de um triangulo ou seja,se (x<y+z) e (y<x+z) e (z<x+y);


10. Re: Não consigo resolver

thinomar
thinomar

(usa Linux Mint)

Enviado em 30/03/2015 - 16:28h

Pelas condições que ele passou, "se (x<y+z) e (y<x+z) e (z<x+y), lados podem formar triangulo", fica assim:

#!/bin/bash
# Desenvolvido por Thiago Martins 30-03-15

if [[ -z $1 || -z $2 || -z $3 ]] ; then
echo "Faltando argumento"
exit
fi

xAux=`echo $2+$3 | bc -l`
yAux=`echo $1+$3 | bc -l`
zAux=`echo $1+$2 | bc -l`

if [[ $xAux -gt $1 && $yAux -gt $2 && $zAux -gt $3 ]] ; then
echo "Lados podem formar triangulo"
exit
fi

echo "Lados nao podem formar triangulo"
exit


A entrada pode ser feita tanto com números int quanto float e é feita da seguinte forma:
$ ./triangulo.sh [lado1] [lado2] [lado3]

Não esqueça de dar permissão para execução, senão você não conseguirá rodar o script:
$ sudo chmod +x triangulo.sh

Recomendo que estude lógica e algoritmos, pois, se você possuir a lógica, aprender a linguagem será de menos :)






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts