Estrutura de decisão - ebrito.com.brebrito.com.br/profa-elaine/2LP.pdf · Exercícios a) Dados...

Post on 11-Jul-2019

215 views 0 download

Transcript of Estrutura de decisão - ebrito.com.brebrito.com.br/profa-elaine/2LP.pdf · Exercícios a) Dados...

Estrutura de decisão• Os comandos de decisão ou desvio fazem partedas técnicas de programação que conduzem aestruturas de programas que não são totalmentesequenciais.

• Com as instruções de SALTO ou DESVIO pode-sefazer com que o programa proceda de uma ououtra maneira, de acordo com as decisões lógicastomadas em função dos dados ou resultadosanteriores.

• As principais estruturas de decisão são: “SeEntão”, “Se então Senão” e “Caso Selecione”

IF

IF

IF

Exercícios• Escreva um fluxograma e um programa pascal para cada um dos exercícios a

seguir:a) Ler 2 números e apresentar a diferença do maior pelo menor.

b) Ler um número e dizer se o número digitado é par ou ímpar

c) Em um curso, a nota final do aluno é calculada a partir do seu desempenho em 3aspectos do trabalho semestral. Existe um exame intermediário que vale 30% da notafinal. Ao trabalho de laboratório é dada uma nota que vale 20% da nota final. O examefinal completa o restante. Faça um algoritmo que leia o nome do estudante e suasnotas em cada item, calcule e informe o nome do estudante, suas notasintermediárias, sua nota final e uma indicação sobre a sua aprovação ou não, sabendoque a nota final mínima para aprovação é 6.

d) Faça um algoritmo que leia o nome de um funcionário, as horas trabalhadas no diae o seu salário/hora. Calcule o que ele tem a receber e escreva o nome do funcionário,as horas trabalhadas e o salário a receber. OBS. Se a jornada de trabalho for maior que8 horas, esta diferença será considerada hora-extra, a qual tem um acréscimo de 50%.

Estrutura condicional composta aninhada

Exercícios

a) Dados três valores X, Y e Z, verificar se eles podem ser os comprimentos dos lados de um triângulo e, se forem, verificar se é um triângulo equilátero, isósceles ou escaleno. Se não forem um triângulo escrever uma mensagem. Considerar que:O comprimento de cada lado de um triângulo é menor que a soma dos outros dois lados;Chama-se triângulo equilátero o que tem 3 lados iguais;Chama-se triângulo isósceles o que tem o comprimento de 2 lados iguaisChama-se triângulo escaleno o que tem 3 lados diferentes

b) Efetuar a leitura de três valores (variáveis A,B e C) e apresentar os valores em ordem crescente.

c) Efetuar a leitura de três valores (variáveis A,B e C) e efetuar o cálculo da equação do segundo grau, apresentando as duas raízes, se para os valores informados for possível efetuar o referido cálculo.

d) Considerando uma moeda fictícia. Certa máquina realiza a cobrança automática de valores de até 50,00. Ela é informada que valor deve ser cobrado, recebe uma nota de 50,00 e precisa devolver o troco utilizando o menor número de moedas possível. As notas disponíveis para o troco são de 10,00, 5,00 e 1,00. Desenvolva um algoritmo que calcule o troco e informe quantas notas de cada valor devem ser usadas. Os valores não necessários não devem ser informados.

Múltiplas escolhas Estrutura CASE

O comando CASE só compara valores do tipo CHAR,INTEGER ou BOOLEAN.

Múltiplas escolhas Estrutura CASE

Exercícios

MÉDIA PONDERADA CONCEITO9,0 - 10,0 A7,0 - 8,0 B5,0 - 6,0 C3,0 - 4,0 D0,0 - 2,0 E

Faça um programa que obtenha as três notas de um alunoe calcule a média e o conceito que segue a tabela abaixo:

Obs: O Case não aceita comparação com variável real,apenas inteira, então use o trunc para utilizar apenas aparte inteira da média.Ex: A é uma variável do tipo inteiro e B é uma variável dotipo real. Quando fazemos a atribuição A:=trunc(B)atribuímos a A parte inteira da variável B edesconsideramos as casas decimais.

Exercícios

• Faça um programa que mostre o menu de opções acima, receba a opção do usuário (+,-,* ou /) e os valores necessários para os cálculo e exiba o resultado

Opção Calculo+ A+B- A-B* A*B/ A/BR SQRT(A)

Estruturas de Repetição

• Muitas vezes temos a necessidade de repetirum trecho de programa.

• Neste caso, será criado o chamado looping oulaço de repetição, que executa umdeterminado conjunto de comandos tantasvezes quantas forem necessárias.

Repetição com variável de controleFOR ... TO... DO

• As repetições que possuem um número pré-determinado de execuções poderão serprocessadas através da estrutura PARA.

• Essa estrutura tem o seu funcionamentocontrolado por uma variável denominadacontador. Sendo assim, poderá executar umdeterminado conjunto de instruções umdeterminado número de vezes.

FOR ... TO... DO• Nesse exemplo, inicializamos a variável cont com o valor 1 e

esse valor será incrementado de 1 em 1 até alcançar o limitesuperior de 100. Para cada incremento será escrito o valor decont e um hífen para separar os valores, como pede ocomando writeln, (como esse looping é composto de umúnico comando, não usamos begin e end.)

FOR...DOWNTO...DO

• Se quisermos que a contagem seja regressiva devemos utilizar FOR DOWNTO DO

FOR ... TO... DO

Exercícios1 Apresentar os resultado de um tabuada de um número qualquer. Esta deverá ser impressa no seguinte formato:

Considerando o número 22 X 1 = 22 X 2 = 42 X 3 = 6(...)2 X 10 = 20

Exercícios

2 Apresentar o total da soma obtida dos cem primeiros números inteiros ( 1 + 2 + ... + 99 + 100)

3 Calcular a soma de dez números quaisquer fornecidos pelo usuário.

Exercícios

4 Calcular o Fatorial de um número qualquer solicitado pelo usuário. Sabendo que: 5! = 5 * 4 * 3 * 2 * 1 = 120

5 Ler 10 valores para a, um de cada vez, e conta quantos destes valores são negativos, escrevendo esta informação.

Exercícios

6 Escreva um programa que apresente a série e

Fibonacci com a quantidade de termos

solicitados pelo usuário.

– A série de Fibonacci é formada pela sequência:

1, 1, 2, 3, 5, 8, 13,21,34,...etc.

Esta série caracteriza-se pela soma de um termo

posterior com seu anterior subsequente.

Exercícios

7 Escrever um algoritmo/programa em Pascal que lê um número e calcula e escreve quantos divisores ele possui.

8 Faça um programa que obtenha dados de 10 pessoas, onde será perguntado o sexo e a idade da pessoa. Ao final será exibida a média de idade do sexo masculino, a média de idade do sexo feminino, a maior e menor idade digitada.

Estrutura de Repetição - WHILE DO teste lógico no início

• Neste caso, o bloco de operações seráexecutado enquanto a condição x forverdadeira. O teste da condição será semprerealizado antes de qualquer operação.

• Enquanto a condição for verdadeira oprocesso se repete.

WHILE DO com contagem

WHILE DO sem contagem

Estrutura de repetição - Repeat Untilteste lógico no final

• Neste caso, executa-se primeiro o bloco deoperações e somente depois é realizado oteste de condição. Se a condição forverdadeira, o fluxo do programa continuanormalmente. Caso contrário são processadosnovamente os comandos do bloco derepetição.

Estrutura de repetição - Repeat Untilteste lógico no final

Exercícios• Faça um programa que receba vários números

(até que seja digitado 0), calcule e mostre: a) a soma dos números digitados;b) a quantidade de números digitado;c) a média dos números digitados;d) o maior número digitado;e) o menor número digitado f) a média dos números pares .Não considerar o 0 em nenhum cálculo.