Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
UNIVERSIDADE LUTERANA DO BRASIL EDUCAÇÃO A DISTÂNCIA CURSO: Sistemas para Internet DISCIPLINA: Algoritmos e Programação I PROFESSOR(A): Vanessa Lindemann CRÉDITOS: 4 UNIDADE/EAD: 1000 HORAS/AULA TOTAIS: 68 ANO/SEM.: 2013/2 ATIVIDADE PRÁTICA 5 Esta atividade prática, que pode ser realizada em grupo ou individualmente, vai lhe possibilitar a revisão de conteúdos dos capítulos 5 a 6, em que são abordadas as estruturas de controle condicional para construção de algoritmos. Praticando esta atividade, você estará se preparando para a Atividade Avaliativa Discursiva 2 na NetAula. 1 ESTRUTURAS DE CONTROLE CONDICIONAL Os algoritmos seguem um fluxo de execução determinado por três estruturas básicas de controle: sequencial, condicional e repetitiva. A estrutura condicional é utilizada para desviar o fluxo de execução do algoritmo para diferentes partes da solução. Ela divide-se em estrutura SE e estrutura ESCOLHA. 1.1 Estrutura SE A estrutura SE é mais flexível, podendo utilizar na sua condição todos os operadores relacionais (<, >, <=, >=, =, <>) e, quando forem necessárias, mais de uma condição com os operadores lógicos (E e OU) entre elas. Esta estrutura também é classificada como estrutura condicional SE simples, composta ou encadeada. A sintaxe da estrutura condicional SE simples é apresentada a seguir. se(<condição ou lista de condições>)então <instrução ou bloco de instruções> A sintaxe da estrutura condicional SE composta pode ser observada a seguir. se(<condição ou lista de condições>)então <instrução ou bloco de instruções> senão <instrução ou bloco de instruções> Quando a condição avaliada resultar verdadeiro, a instrução da cláusula então será executada; caso contrário, quando resultar falso, é a instrução da cláusula senão que será executada. A aplicação da estrutura condicional SE encadeada, cuja sintaxe é apresentada a seguir, pode ser observada no exemplo do Quadro 1. se(<condição ou lista de condições>)então <instrução ou bloco de instruções> senão se(<condição ou lista de condições>)então <instrução ou bloco de instruções> senão <instrução ou bloco de instruções> Exemplo 1 Descrição do problema: construa um algoritmo que leia um valor e verifique se ele é negativo ou positivo. Quadro 1 − Solução do exemplo 1 Exemplo 1 - Verifica se um valor é negativo ou positivo. 01 algoritmo exemplo1 02 variáveis 03 valor: real 04 início 05 escrever("Informe um valor qualquer: ") 06 ler(valor) 07 se(valor<0)então 08 escrever("Negativo") 09 senão 10 se(valor>0)então 11 escrever("Positivo") 12 senão 13 escrever("Zero é neutro") 14 fim 1.2 Estrutura ESCOLHA O uso da estrutura condicional ESCOLHA pode simplificar bastante a "cascata" de estruturas SE necessária em situações de seleção de múltipla escolha. A estrutura ESCOLHA pode ser utilizada, portanto, em situações de igualdade para uma mesma variável, desde que esta variável seja do tipo inteiro, caractere ou lógico. A sintaxe da estrutura condicional ESCOLHA é apresentada a seguir. escolha(<variável>) caso <1>: <instrução ou bloco de instruções> caso <2>: <instrução ou bloco de instruções> caso <n>: <instrução ou bloco de instruções> senão <instrução ou bloco de instruções> fim Se a variável avaliada tiver um dos valores listados nas opções, a instrução (ou bloco de instruções) correspondente ao caso será executada. Quando a variável for diferente de todas as opções listadas, a instrução (ou bloco de instruções) da cláusula senão será executada. A cláusula senão é opcional nesta estrutura. Exemplo 2 Descrição do problema: faça um algoritmo que execute as operações básicas de uma calculadora. Leia dois valores numéricos e um símbolo; caso o símbolo seja um dos relacionados a seguir efetue a operação correspondente com os valores digitados pelo usuário; caso contrário, digite a mensagem "Operador inválido!". Símbolos: + soma, - subtração, * multiplicação, / divisão. Atenção para a divisão por 0! Quadro 2 − Solução do exemplo 2 Exemplo 5.8 - Executa as operações básicas de uma calculadora. 01 algoritmo exemplo2 02 variáveis 03 valor1, valor2: real 04 op: caractere 05 início 06 escrever("Valor 1: ") 07 ler(valor1) 08 escrever("Operador (+ - * /): ") 09 ler(op) 10 escrever("Valor 2: ") 11 ler(valor2) 12 escolha(op) 13 caso "+": escrever("Resultado = ", valor1+valor2) 14 caso "-": escrever("Resultado = ", valor1-valor2) 15 caso "*": escrever("Resultado = ", valor1*valor2) 16 caso "/": se(valor2<>0)então 17 escrever("Resultado = ", valor1/valor2) 18 senão 19 escrever("Não é possível dividir por 0.") 20 senão 21 escrever("Operador inválido!") 22 fim 23 fim CHEGOU A SUA VEZ DE RESOLVER PROBLEMAS! Considerando a revisão apresentada anteriormente, resolva os problemas propostos a seguir, apresentando a solução em português estruturado e, em seguida, faça o teste de mesa. Antes de iniciar a construção dos algoritmos, leia o enunciado dos dois problemas e defina uma estrutura condicional diferente para cada exercício. (a) Escreva um algoritmo que leia três valores e escreva-os em ordem crescente. (b) Uma empresa concederá um aumento de salário aos seus funcionários, variáveis de acordo com o cargo, conforme a tabela abaixo. Escreva um algoritmo que leia o salário e o código do cargo de um funcionário, calcule o valor do novo salário. Se o cargo do funcionário não estiver na tabela, ele deverá receber 40% de aumento. Imprima a descrição do cargo, o salário antigo, o novo salário e a diferença. Código Cargo % de aumento 101 Gerente 10% 102 Engenheiro 20% 103 Técnico 30% A realização desta atividade lhe auxiliará na resolução da Atividade Avaliativa Discursiva 2 na NetAula. Se sentir necessidade, volte a estudar os conteúdos dos capítulos 5 e 6. Fique atento ao prazo para a realização desta atividade.