Guia de Exercícios de Laboratórios de Introdução à Programação Instituto Politécnico de Setúbal Escola Superior de Tecnologia Departamento de Sistemas e Informática Laboratório 5 – Estruturas de Selecção Disciplina de Introdução à Programação Ano Lectivo 2006/2007 ©DSI – Escola Superior de Tecnologia, Instituto Politécnico de Setúbal 1 Guia de Exercícios de Laboratórios de Introdução à Programação Série 5 – Instrução de Selecção if Objectivos da Série: Com esta série de exercícios pretende-se que o aluno: 1. Aprenda a usar a estrutura de selecção if. 2. Domine a utilização da estrutura if nas suas várias vertentes. Exercício 1 Quais das instruções da tabela 1 são equivalentes e para cada caso encontrado qual será a opção de utilização mais correcta? A B C D if (condição1) if (condição2) instrução; if (condição1) instrução; if (condição2) instrução; E if (condição1 || condição2) instrução; F if (condição1) instrução1; else if (condição2) instrução2; if (condição1) if (condição2) instrução1; else ; else instrução2; G if (condição1) { if (condição2) instrução1; } else instrução2; if (!condição1) if (condição2) instrução2; else ; else instrução1; H if (condição1 && condição2) instrução; Tabela 1 Exercício 2 Uma certa empresa fabrica motores com potências compreendidas entre 1 e 99cv. Ao processar informação sobre um destes motores, um programa usa um de três procedimentos, de acordo com a potência do motor. Partindo do principio que o programa está escrito em C e que a variável inteira pot representa a potência do motor a ser fabricado, utilize a instrução “if” para representar a correcta execução do procedimento de acordo com a tabela 2: Potência do motor pot < 1 1 <= pot < 5 5 <= pot < 20 20<= pot < 100 pot >= 100 Acção a executar Mensagem de erro PW1 PW2 PW3 Mensagem de erro Tabela 2 Nota: As condições das possíveis instruções “if” não devem conter conjunções. ©DSI – Escola Superior de Tecnologia, Instituto Politécnico de Setúbal 2 Guia de Exercícios de Laboratórios de Introdução à Programação Exercício 3 Faça um programa que: • leia 2 números inteiros e informe o utilizador se o primeiro é divisível pelo segundo. • receba um determinado número e informe o utilizador se o mesmo é divisível por 5. Exercício 4 Escreva um programa para verificar se um número inteiro é divisível por 2, 3, 5, 6, 10, 15 ou 30. Exercício 5 Escreva um programa que converta notas quantitativas de 0 a 20 em notas qualitativas de mau a excelente, utilizando uma estrutura de if’s encadeados e que verifique o limite superior das gamas de cada uma das notas qualitativas. Considere que: 0-4: Mau; 5-9: Medíocre; 10-13: Suficiente; 14-17: Bom; 18-20: Muito Bom. Exercício 6 Escreva o programa “calcIrs” que aceite o ordenado de um trabalhador e devolva o imposto a pagar de acordo com a tabela 3: Ordenado <100.000 >= 100 000 e < 300 000 > 300 000 Taxa 5% 15% 25% Tabela 3 Exercício 7 Escreva um programa em C para calcular os juros e o novo saldo de uma conta bancária, tendo em atenção: • se o saldo for inferior a 1.000, a conta não recebe juros e paga uma taxa ao banco (multa representada por uma constante). • se a conta atingir um saldo negativo é cancelada. Deverá receber o saldo anterior, o número de meses ao fim do qual se pretende calcular o saldo, e a taxa de juros anual. Nota: Parta do princípio que não há movimentos na conta e de que os juros só são calculados no fim do número de meses especificado. ©DSI – Escola Superior de Tecnologia, Instituto Politécnico de Setúbal 3 Guia de Exercícios de Laboratórios de Introdução à Programação Exercício 8 Escreva um programa para ordenar: 1. dois números inteiros inseridos pelo utilizador. 2. três números inteiros inseridos pelo utilizador. 3. quatro números inteiros inseridos pelo utilizador. Exercício 9 Escreva um programa que determine os zeros de uma equação de segundo grau. O seu programa deve contemplar os casos em que o coeficiente do termo quadrático é zero e o caso de as raízes serem complexas. ©DSI – Escola Superior de Tecnologia, Instituto Politécnico de Setúbal 4 Guia de Exercícios de Laboratórios de Introdução à Programação Série 6 – Instrução de Selecção switch Objectivos da Série: Com esta série de exercícios pretende-se que o aluno: 1. Pratique a utilização da instrução switch como opção à instrução if. Exercício 1 Crie um programa que receba do utilizador um número correspondente a um mês, e apresente no monitor o mês correspondente. Nota: 1=JAN, 2=FEV, 3=MAR,… Exercício 2 Crie um programa que, tendo dois números inteiros obtidos aleatoriamente, pretende imprimir o resultado de uma operação matemática entre ambos, dependendo do operador escolhido (+, -, *,/). Exercício 3 Escreva um programa que apresente uma lista de 5 livros diferentes ao utilizador, pedindo-lhe que seleccione um deles. Para o livro seleccionado, informe o utilizador do preço do livro. Exercício 4 Escreva um programa que gera um n.º aleatório, e informa se este é divisível por 2, por 3 ou por 5. Exercício 5 Escreva um programa que leia uma data e verifique se esta á válida ou não. Nota: A data pode ser recebida no formato dd/mm/aaaa. Exercício 6 Escreva um programa que indique o número de dias que um mês tem, usando: a) Apenas a instrução if-else; b) O switch; c) O switch sem qualquer break. ©DSI – Escola Superior de Tecnologia, Instituto Politécnico de Setúbal 5