5
APOSTILA DE ALGORITMOS I __________________________________________________________ Gilene B. Gomes & Alexandre M. Gomes ___ ____ http://www.bracad.com.br ________________________________________________________________________________ 13 5. Comando de alternativa simples e composta (se .. então .. senão) A instrução se tem por finalidade tomar uma decisão e efetuar um desvio no processamento, dependendo, é claro, da < condição > atribuída ser Verdadeira ou Falsa. Sendo a condição Verdadeira, será executada a instrução que estiver escrita após a instrução então. Caso seja necessário executar mais de uma instrução para uma condição verdadeira, estas deverão estar mencionadas dentro de um bloco (definido com o uso das instruções início e fim). Sendo a condição Falsa, será executada a instrução que estiver escrita após a instrução senão. Se não existir a instrução senão, será executada a instrução definida após a instrução então. Caso seja necessário executar mais de uma instrução para uma condição falsa, estas deverão também estar mencionadas dentro de um bloco. Alternativa simples se < condição > se < condição > então C 1 ; então C 1 ; fim se ; C 2 ; C n ; fim se ; Alternativa composta se < condição > se < condição > então C 1 ; então C 1 ; senão C a ; C n ; fim se ; senão C a ; C m ; fim se ; Exemplo: Fazer um algoritmo para ler o sexo de uma pessoa e mostrar uma mensagem dizendo se é masculino ou feminino. Algoritmo sexo : caracter ; início leia (sexo); se sexo = ‘M’ então escreva (‘Masculino’); senão escreva (‘Feminino’); fim se ; fim .

A3 se

Embed Size (px)

Citation preview

Page 1: A3 se

APOSTILA DE ALGORITMOS I __________________________________________________________ Gilene B. Gomes & Alexandre M. Gomes ___

____ http://www.bracad.com.br ________________________________________________________________________________ 13

5. Comando de alternativa simples e composta (se .. então .. senão)

A instrução se tem por finalidade tomar uma decisão e efetuar um desvio no processamento, dependendo, é claro, da < condição > atribuída ser Verdadeira ou Falsa.

Sendo a condição Verdadeira, será executada a instrução que estiver escrita após a instrução

então. Caso seja necessário executar mais de uma instrução para uma condição verdadeira, estas deverão estar mencionadas dentro de um bloco (definido com o uso das instruções início e fim).

Sendo a condição Falsa, será executada a instrução que estiver escrita após a instrução senão.

Se não existir a instrução senão, será executada a instrução definida após a instrução então. Caso seja necessário executar mais de uma instrução para uma condição falsa, estas deverão também estar mencionadas dentro de um bloco. Alternativa simples se < condição > se < condição >

então C1; então C1; fim se; C2;

Cn; fim se;

Alternativa composta se < condição > se < condição >

então C1; então C1; senão Ca; Cn;

fim se; senão Ca; Cm;

fim se; Exemplo: Fazer um algoritmo para ler o sexo de uma pessoa e mostrar uma mensagem dizendo se é masculino ou feminino.

Algoritmo sexo : caracter; início leia (sexo);

se sexo = ‘M’ então escreva (‘Masculino’); senão escreva (‘Feminino’);

fim se; fim.

Page 2: A3 se

APOSTILA DE ALGORITMOS I __________________________________________________________ Gilene B. Gomes & Alexandre M. Gomes ___

____ http://www.bracad.com.br ________________________________________________________________________________ 14

Exemplo: Fazer um algoritmo para ler um número e mostrar se o número é positivo, negativo ou neutro.

Algoritmo numero : real; início leia ( numero );

se numero > 0 então escreva ( ‘Número positivo’ ); senão se numero < 0

então escreva ( ‘Número negativo’ ); senão escreva ( ‘Número neutro’ );

fim se; fim se;

fim.

1.1. Exercícios 1. Qual o valor de L após a execução deste trecho de algoritmo?

Algoritmo A, B, C : lógico; X, Y : real; L : inteiro;

início A falso;

B verdadeiro; C falso;

X 1.5; Y 3.2; X X + 1; se C ou ( (X + Y > 5) ou (não A e B) )

então L 0; senão L 1;

fim se; fim.

2. Os comandos:

A B = C e se B = C então A verdadeiro;

senão A falso; fim se;

são equivalentes? Explique por quê. Qual é o tipo da variável A?

Page 3: A3 se

APOSTILA DE ALGORITMOS I __________________________________________________________ Gilene B. Gomes & Alexandre M. Gomes ___

____ http://www.bracad.com.br ________________________________________________________________________________ 15

3. Dado o algoritmo abaixo:

Algoritmo B1, B2, B3 : lógico;

início se B1 = verdadeiro

então escreva (‘Distrito Federal’); senão se B2 = verdadeiro

então se B3 = verdadeiro então escreva (‘São Paulo’); senão escreva (‘Minas Gerais’); escreva (‘Bahia’);

fim se; fim se;

fim se; escreva (‘Goiás’);

fim. Responda:

a) Se B1 = verdadeiro, B2 = verdadeiro, B3 = falso, o que será apresentado na tela? b) Se B1 = falso, B2 = verdadeiro, B3 = falso, o que será apresentado na tela?

c) Se B1 = falso, B2 = verdadeiro, B3 = verdadeiro, o que será apresentado na tela? d) Quais os valores de B1, B2, B3 para que somente a palavra Goiás seja mostrada na tela?

4. Dado o algoritmo:

Algoritmo QUALE : caracter; NUM : inteiro;

início leia (NUM); se NUM = 0

então QUALE ‘ZERO’; senão se NUM > 0

então QUALE ‘NÚMERO POSITIVO’; senão QUALE ‘NÚMERO NEGATIVO’;

fim se; fim se; escreva (QUALE);

fim. O que será impresso depois de executado o algoritmo se:

a) NUM = 10? b) NUM = 0? c) NUM = -4?

Page 4: A3 se

APOSTILA DE ALGORITMOS I __________________________________________________________ Gilene B. Gomes & Alexandre M. Gomes ___

____ http://www.bracad.com.br ________________________________________________________________________________ 16

5. Considerando o algoritmo abaixo, responda:

Algoritmo sx : caracter; início leia (sx); se sx = ‘F’ então escreva ( ‘ Tipo A ‘ ); senão se sx < > ‘M’

então escreva ( ‘ Tipo X ‘ ); senão escreva ( ‘ Tipo B ‘ );

fim se; fim se; fim.

a) Qual será a mensagem apresentada se sx = ‘M’ ? __________________

b) Qual será a mensagem apresentada se sx = ‘Fem’ ? __________________

c) Qual será a mensagem apresentada se sx = ‘f’ ? __________________ 6. Considerando o algoritmo abaixo, responda:

Algoritmo D, E, F : inteiro; início se D = 0 então se E > 0

então F D + E; senão F 0;

fim se; senão se D > 0

então se E > 0 então F 100; senão F D * E;

fim se; senão F D – E; fim se;

fim se; fim.

a) Se D = 10 e E = 5, qual será o valor de F ao final do algoritmo: __________________

b) Se D = 0 e E = 0, qual será o valor de F ao final do algoritmo: __________________

c) Se D = 0 e E = 20, qual será o valor de F ao final do algoritmo: __________________

d) Se D = -5 e E = 100, qual será o valor de F ao final do algoritmo: _________________

e) Se D = 10 e E = -2, qual será o valor de F ao final do algoritmo: __________________

Page 5: A3 se

APOSTILA DE ALGORITMOS I __________________________________________________________ Gilene B. Gomes & Alexandre M. Gomes ___

____ http://www.bracad.com.br ________________________________________________________________________________ 17

7. Elaborar um algoritmo para ler um número inteiro e informar se ele é par ou ímpar. Regra: o número é par, se o resto da divisão do número por dois for igual a zero. 8. Criar um algoritmo para ler a idade da pessoa e dizer se pode se candidatar a vereador ou não. Regra: Mínimo de dezoito anos. 9. Escrever um algoritmo para ler dois números quaisquer e mostrar uma mensagem indicando se são

iguais ou qual deles é o maior. 10. Desenvolver um algoritmo para ler três números e informar qual deles é menor. Suponha que os

números são diferentes. 11. Construir um algoritmo para ler os coeficientes a, b e c de uma equação de segundo grau e calcular

o delta. O algoritmo deve mostrar o valor de delta e se o delta for negativo, a mensagem ‘A equação não tem solução real’. Regra: = b2 – 4ac.

12. Fazer um algoritmo para ler três números e informar o maior e o menor. Suponha que os números

são diferentes. 13. Elaborar um algoritmo para ler três números e mostra-los em ordem crescente. 14. Criar um algoritmo para ler um código e mostrar em qual faixa se encontra:

1 Cod 100 - Grupo 1 101 Cod 200 - Grupo 2 201 Cod 1000 - Grupo 3 Cod 1000 - Importados

15. Uma faculdade atribui menções aos alunos conforme a faixa de notas que tenha atingido:

9,0 a 10: SS (superior) 7,0 a 8,9: MS (médio superior) 5, 0 a 6,9: MM (médio) 3,0 a 4,9: MI (médio inferior) 0,1 a 2,9: II (inferior) 0 : SR (sem rendimento).

Implementar um algoritmo para ler a nota e informar a menção. 16. Elaborar um algoritmo para ler os valores dos três lados de um triângulo (A, B, C). Verificar e

mostrar se é um triângulo ou não e qual é o tipo. Dica 1: Triângulo é uma forma geométrica (polígono) composta por três lados, onde cada lado é

menor que a soma dos outros dois lados. Dica 2: Um triângulo é: a) isósceles quando possui dois lados iguais e um diferente; b) escaleno

quando possui todos os lados diferentes; e c) equilátero quando possui todos os lados iguais. 17. Desenvolver um algoritmo para ler um número e mostrar uma mensagem dizendo se é par ou

ímpar e se é positivo ou negativo. Considerar o zero como número neutro. 18. Fazer um algoritmo para ler o dia e o mês e mostrar qual é a estação: Primavera (22/set), Verão

(21/dez), Outono (21/mar) ou Inverno (21/jun).