Você está na página 1de 17

Programação

Instituto Politécnico do Cávado e do Ave


UTeSP: Robótica Colaborativa e Inteligência Industrial (RCII) PL

Docente: Nelson Rodrigues (njrodrigues@ipca.pt)


Ano letivo: 2021/2022

Slides adaptados de : Ana Almeida (acalmeida@ipca.pt)


Instruções de decisão
• Estrutura SE..ENTÃO (IF() {})
Instruções de decisão
• Estrutura SE..ENTÃO (IF() {})
• Exercícios:
[01] - Escreva um algoritmo capaz de ler um número inteiro, que lhe incremente 1 no caso deste
ser divisível por 3. (pseudocódigo/c e fluxograma)

[02] - Devido à crise, o governo decidiu criar uma sobretaxa de IRS extraordinária de 3,5% sobre
os salários cujo valor seja superior ao salário mínimo nacional. Esta nova taxa, apenas deve
incidir sobre o valor que remanesce depois de subtraído o salário mínimo ao salário do
funcionário. Sugira um algoritmo para resolver o problema, acautelando a exceção prevista para
os funcionários que apenas aufiram o salário mínimo nacional.
Instruções de decisão
• Estrutura SE..ENTÃO (IF() {})
• Exercícios:
[03] - Faça um programa que leia dois números e mostre qual é o maior e qual é o menor.

[04] - Para dar sangue é necessário ter entre 18 e 67 anos. Faça um programa que pergunte a
idade de uma pessoa e diga se ela pode dar sangue ou não.
Instruções de decisão
• Estrutura SE..ENTÃO.. SENÃO (IF() {} else{})
Instruções de decisão
• Estrutura SE..ENTÃO.. SENÃO (IF() {} else{})
• Exercícios:
[01] - Escreva um algoritmo capaz de ler um número inteiro e verificar se este é par ou impar.
(pseudocódigo e fluxograma)

[02] - Faça um algoritmo que leia um número inteiro diferente de zero e diga se este é positivo
ou negativo.

[03] - Altere o algoritmo anterior para dizer também se o número é igual a zero (use se
encadeados)
Instruções de decisão
• Estrutura SE..ENTÃO.. SENÃO (IF() {} else{})
• Exercícios:
[04] - Na Unidade Curricular de português foi definida a nota mínima de 8,5 valores para o
primeiro teste e de 9 valores para o segundo. Foi também decidido que a nota final à unidade
seria a média aritmética entre as notas desses dois testes.

A aprovação de um aluno é apenas possível se a nota final (média entre os dois testes) for igual
ou superior a 10 valores. Se o aluno tiver uma nota final igual ou superior a 17 valores terá que
fazer defesa oral. Nestes casos, a nota final do aluno será sempre inserida diretamente pelo
professor. Caso não compareça à defesa, o professor atribuirá a nota final de 17 valores.

Desenvolva um algoritmo para resolver o problema e sugira uma implementação.


Instruções de decisão
• Estrutura SE..ENTÃO.. SENÃO (IF() {} else{})
• Exercícios:
[05] - Faça uma algoritmo que leia três valores que representam os três lados de um triângulo e
verifique:
• Se o triângulo é válido
• Se é um triângulo equilátero, isósceles ou escaleno.

Propriedades de um triângulo:
• A soma de dois lados não pode ser menor que a do terceiro lado (ou o comprimento de
cada lado deve ser menor que a soma dos outros dois lados)
• Equilátero: três lados iguais
• Isósceles: dois lados iguais
• Escaleno: três lados diferentes
Instruções de decisão
• Estrutura CASO..SEJA (SWITCH() {CASE …}) (elif)
Instruções de decisão
• Estrutura CASO..SEJA (SWITCH() {CASE …}) (elif)
• Exercícios:
[01] - Escreva um algoritmo capaz de ler um número inteiro de 1 a 7, e apresentar na consola o
dia da semana correspondente. (pseudocódigo/c e fluxograma)

[02] - Um clube de futebol pretende um programa que lhe facilite o processo de classificação de
atletas em categorias. A tabela apresentada abaixo, define as categorias existentes e também os
intervalos de idade que especificam a categoria para cada atleta. Com o objetivo de promover
as inscrições na categoria Juvenil, o clube oferece a taxa de inscrição aos atletas com 11 e 12
anos. Certifique-se que o utilizador é lembrado desse facto na sua implementação.

Apresente uma solução para o problema.


Instruções de decisão
• Estrutura CASO..SEJA (SWITCH() {CASE …}) (elif)
• Exercícios:
[03] - Para facilitar o controlo no consumo de energia, é necessário criar uma pequena aplicação
que estime o valor da fatura mensal de um cliente, com base nos Kw estimados de consumo
num mês (estimativa de consumo num mês). Tenha em atenção que, o custo por Kw varia em
função do tipo de cliente:
• PC - Particulares (continente) – 0,1865 €
• PI - Particulares (ilhas) – 0,1875 €
• PE - Pequenas empresas – 0,1754 €
• MG - Médias e grandes empresas – 0,1592 €
• EOP - Estado e organismos públicos – 0,1311 €
Note que aos valores indicados é necessário acrescer IVA à taxa de 23%.
Instruções de decisão
• Estrutura CASO..SEJA (SWITCH() {CASE …}) (elif)
• Exercícios:
[04] - A escola “Só Crânios” inscreve automaticamente os alunos com idades compreendidas entre os 14 e
os 18 anos em atividades extracurriculares. Desenvolva uma aplicação que recolha a idade, primeiro e
ultimo nome de um aluno com o objetivo de, no final, indicar ao utilizador qual a atividade em que o aluno
se encontra automaticamente inscrito.
O programa deve garantir o cumprimento das regras seguintes:
• A idade só é válida se estiver entre os 14 e os 18 anos inclusive;
• O primeiro nome só é válido se tiver no mínimo 3 letras;
• O último nome só é válido se tiver no máximo 11 letras e no mínimo 4;
• O nome completo (concatenação do primeiro e último nome) não pode exceder os 18 caracteres
(incluindo o espaço que os separa).
A violação de qualquer uma destas regras significa o abandono prematuro do programa. No entanto, se
todas as regras foram validadas com sucesso, a aplicação deve informar qual a atividade em que o aluno se
encontra inscrito atendendo à sua idade (ver tabela abaixo).
Ficha 2:
[01] - O índice de massa corporal (IMC) de alguém é calculado através
da divisão do peso em Kg pela sua altura em m2. Assim, por exemplo,
uma pessoa de 1,67m que pese 55Kg tem um IMC = 19,72.
a) Desenhe um algoritmo que recolha os dados referentes a uma pessoa e
calcule o seu IMC. Quando terminar, implemente-o.
b) Evolua o algoritmo anterior para que mostre ao utilizador de forma
automática a interpretação do índice introduzido, de acordo com a tabela
seguinte.
Ficha 2:
[02] -Um vendedor ganha um valor de salário fixo acrescido de 15% das
vendas que realiza no mês. No entanto, só recebe comissão se esta for
de valor superior ao seu salário.
a) Desenvolva um algoritmo capaz de automatizar estes cálculos e, de
seguida, implemente-o.
b) No final de cada mês é atribuída uma classificação a cada vendedor em
função do volume de vendas por si conseguido (ver quadro seguinte).
Evolua o programa anterior de forma a mostrar a classificação do vendedor
e também o valor do prémio associado.
Ficha 2:
[02] – Continuação…
c) Por fim, e com o objetivo de promover o desempenho nas atividades de
cobrança, o chefe de vendas distingue cada vendedor com uma nota
qualitativa que representa prémios ao fim de cada mês. Melhore o
algoritmo anterior para fazer face a esta distinção (note que a nota
deve pode ser inserida através do seu código ou da sua descrição).
Ficha 2:
[03] - Numa determinada empresa há a necessidade de criar uma
aplicação que identifique o tipo de cliente em função do seu volume de
compras anual (ver quadro seguinte).

a) Desenvolva um algoritmo capaz de automatizar esta identificação e, de


seguida, sugira uma implementação.
Ficha 2:
[04] - Uma loja de venda de animais pretende criar uma aplicação que
automatize o processo de cálculo de PVP (preços de venda a publico). A
margem a ser praticada varia em função da família dos artigos
vendidos, (conforme tabela seguinte).

a) Desenvolva um algoritmo capaz de automatizar esta identificação, de forma


a mostrar o PVP de um artigo com e sem IVA (23%) atendendo à família a
que pertence. Implemente-o.

Você também pode gostar