Sie sind auf Seite 1von 21

AULA 02 LGICA DE PROGRAMAO

Prof. Esp. Erivelton da Silva Rocha


1

COMEANDO...

OPERADORES ARITMTICOS

Os operadores aritmticos se relacionam s operaes aritmticas bsicas:

COMANDO DE DESVIO
Permite que o algoritmo decida autonomamente entre caminhos possveis, qual ir executar. Exemplo:

se "tiver R$10,00 sobrando" entao

"irei ao cinema"
fimse

BLOCO DE COMANDOS

Um bloco de comandos uma srie de comandos Em um bloco ou todos os comandos so executados ou nenhum . Exemplo:
leia(n1, n2) media <- (n1+n2)/2

escreva("A mdia ", media)


5

FLUXOGRAMA DO DESVIO

Somente um dos blocos de comando executado.

verdadeira condio

falsa

Bloco de comandos 1

Bloco de comandos 2

COMANDO SE
se <condicao> entao <bloco de comandos 1> senao <bloco de comandos 2> fim se

COMANDO SE SIMPLIFICADO.

Caso o bloco de comandos depois do seno seja vazio, esta parte pode ser omitida. A forma geral simplificada :

se <condicao> entao <bloco de comandos> fimse

FLUXOGRAMA SE SIMPLIFICADO
O bloco de comandos executado somente se a condio for verdadeira. Caso contrrio o algoritmo prossegue normalmente

verdadeira

condio

Bloco de comandos 1

falsa

EXEMPLO
algoritmo "domingo" inicio acorde se estiver fazendo sol entao va a praia compre um picole senao leia jornal durma acorde fimse almoce fimalgoritmo

10

EXEMPLO

Ler dois nmeros e imprimir o maior


algoritmo "maior" var num1,num2,maior : inteiro inicio escreva("Primeiro nmero: ") leia(num1) escreva("Segundo nmero: ") leia(num2) se num1 > num2 entao maior <- num1 senao maior <- num2 fimse escreva("O maior ", maior) fimalgoritmo

11

COMANDOS SE ANINHADOS

As duas formas do comando se podem aparecer dentro de outros comando se. se estiver fazendo sol entao se eu tiver dinheiro entao vou a Portugal fimse fimse

12

QUANDO USAR SE ANINHADOS?

Quando tivermos de executar blocos de comandos diferentes para a clusula seno das duas condies.

se estiver fazendo sol entao se eu tiver dinheiro entao vou a Portugal senao vou a praia fimse senao vou dormir fimse
13

EXEMPLO

Uma empresa vai dar uma gratificao aos empregados que tenham mais de 1 ano de servio: 10% para os que tenham menos de 10 anos e 25% para os demais. Calcule a gratificao de um dado funcionrio, dado o seu salrio e o tempo de servio.

14

GRATIFICAO

algoritmo "aumento" var salario, tempo, gratificacao : real inicio escreva("Entre com o salario: ") leia(salario) escreva("Entre com o tempo de servico: ") leia(tempo) se tempo > 1 entao se tempo < 10 entao gratificacao <- 0.1*salario senao gratificacao <- 0.25*salario fimse fimse escreva("Gratificao: ", gratificacao) fimalgoritmo

15

ESTRUTURAS DE DECISO MLTIPLA DO TIPO CASO

Na estrutura de deciso do tipo Caso pode haver uma ou mais condies a serem testadas e um comando diferente associado a cada uma destas.

A sintaxe da construo de Caso :


escolha <expressao> caso <exp_1>,<exp_2>,...,<exp_n> <bloco_de_comandos_1> caso <exp_1>,<exp_2>,...,<exp_n> <bloco_de_comandos_2> ... caso <exp_1>,<exp_2>,...,<exp_n> <bloco_de_comandos_n> outrocaso <bloco_de_comandos_s> fimescolha

16

algoritmo "extenso" var numero : inteiro inicio escreva("Digite um numero: ") leia(numero) escolha numero caso 1 escreva("um") caso 2 escreva("dois") caso 3 escreva("trs") caso 4 escreva("quatro") caso 5 escreva("cinco") caso 6 escreva("seis") outrocaso escreva("s sei contar at seis") fimescolha fimalgoritmo

17

EXEMPLO
Algoritmo para reajustar o salrio de acordo com a funo. Se for tcnico, aumentar o salrio 50%, se for gerente, aumentar 30% e se for outro cargo, aumentar 20%.

algoritmo "reajuste_salarial" var salario, salario_reaj : real profissao: caracter inicio escreva("Digite o salrio: ") leia(salario) escreva("Digite a profisso: ") leia(profissao) escolha profissao caso "tcnico" salario_reaj <- (0.5 * salario)+ salario caso "gerente" salario_reaj <- (0.3 * salario)+ salario outrocaso salario_reaj <- (0.2 * salario)+ salario fimescolha escreva("Salrio Reajustado: ", salario_reaj) fimalgoritmo
18

EXEMPLO SE

algoritmo "idade" var idade : inteiro resultado : caracter inicio escreva("Digite sua idade: ") leia(idade) se (idade >= 0) e (idade <= 3) entao resultado <- "Beb" senao se (idade >= 4) e (idade <= 10) entao resultado <- "Criana" senao se (idade >= 11) e (idade <= 18) entao resultado <- "Adolescente" senao resultado <- "Adulto" fimse fimse fimse escreva("Voc um ", resultado) fimalgoritmo

19

EXEMPLO CASO
algoritmo "idade" var idade : inteiro resultado : caracter inicio escreva("Digite sua idade: ") leia(idade) escolha idade caso 0,1,2,3 resultado <- "Beb" caso 4,5,6,7,8,9,10 resultado <- "Criana" caso 11,12,13,14,15,16,17,18 resultado <- "Adolescente" outrocaso resultado <- "Adulto" fimescolha escreva("Voc um ", resultado) fimalgoritmo

20

EXERCCIO
1- Escreva um programa que associe um valor qualitativo a uma quantitativa. (1=mau, 2=medocre, 3=suficiente, 4=bom, 5=excelente). 2- Escreva um programa que leia um nmero correspondente a um ms do ano e devolva o n de dias desse ms.
3- Escreva um programa que apresente a estao do ano de um determinado ms (pedido ao utilizador). Crie, alternativamente, uma soluo usando seleo mltiplas.
21

Das könnte Ihnen auch gefallen