Buscar

BCC701 Estrutura de Decisao

Prévia do material em texto

Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
BCC701 – Programação de Computadores I – 2018-01 
Lista de Exercícios 02: Estrutura de Decisão 
http://www.decom.ufop.br/bcc701/ 
Questão 1. (2014-01) 
Em uma loja em liquidação o valor que consta na etiqueta dos produtos é sem o imposto local, o qual é 
8%. Se o cliente efetuar uma compra até R$ 150,00, ele recebe um desconto de 10% sobre o valor da 
compra e se o valor for maior que R$ 150,00 então o desconto é de 20%. Elabore um programa que 
solicita o valor da compra e calcula o valor do desconto, do imposto e o total final da compra. Os valores 
calculados devem ser apresentados conforme os dois exemplos de execução do programa a seguir. 
Exemplo 1: 
INFORME O VALOR DA COMPRA: 80 
 
VALOR DO DESCONTO: R$ 8.00 
VALOR DO IMPOSTO: R$ 5.76 
TOTAL FINAL DA COMPRA: R$ 77.76 
Exemplo 2: 
INFORME O VALOR DA COMPRA: 300 
 
VALOR DO DESCONTO: R$ 60.00 
VALOR DO IMPOSTO: R$ 19.20 
TOTAL FINAL DA COMPRA: R$ 259.20 
 
 
Questão 2. (2014-01) 
Na Geometria Euclidiana, a 32ª proposição de Euclides afirma que a soma dos ângulos 
internos de qualquer triângulo é igual a dois ângulos retos, ou seja, 180°. 
Os triângulos podem ser classificados de acordo com os seus ângulos internos: 
• triângulo retângulo, possui um ângulo reto; 
• triângulo obtusângulo, possui um ângulo obtuso e dois ângulos agudos. 
• triângulo acutângulo, os três ângulos são agudos. 
 
Triângulo Retângulo 
 
Triângulo Obtusângulo 
 
Triângulo Acutângulo 
Codifique um programa Scilab que faça a leitura de 3 ângulos internos de um triângulo. A 
seguir, o programa verifica a condição de existência desse triângulo. Caso o triângulo não exista, 
uma mensagem é impressa para o usuário e o programa termina. Caso o triângulo exista, o 
programa imprime sua classificação de acordo com seus ângulos internos. 
Não é necessária a validação dos dados de entrada. O usuário sempre digitará valores inteiros 
e positivos para os ângulos em graus. 
 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
A seguir, dois exemplos de execução do programa. 
Exemplo 1: 
DIGITE O PRIMEIRO ÂNGULO INTERNO: 20 
DIGITE O SEGUNDO ÂNGULO INTERNO: 50 
DIGITE O TERCEIRO ÂNGULO INTERNO: 90 
TRIÂNGULO INEXISTENTE 
Exemplo 2: 
DIGITE O PRIMEIRO ÂNGULO INTERNO: 45 
DIGITE O SEGUNDO ÂNGULO INTERNO: 80 
DIGITE O TERCEIRO ÂNGULO INTERNO: 55 
TRIÂNGULO ACUTÂNGULO 
 
 
Questão 3. (2014-01) 
A locadora de DVDs Jurubeba & Goiabada faz locações de filmes em DVDs de acordo com a seguinte 
tabela: 
• Para uma locação de até 6 DVDs, R$ 5,00 para cada DVD; 
• Acima de 6 DVDs, e no máximo até 12 DVDs, R$ 4,50 para cada um dos primeiros 6 DVDs, e 
R$ 4,00 para cada um dos próximos DVDs; 
• Acima de 12 DVDs, e no máximo até 20 DVDs, R$ 3,50 para cada um dos primeiros 15 DVDs, e 
R$ 3,00 para cada um dos próximos DVDs; 
• Para uma locação acima de 20 DVDs, R$ 2,50 para cada DVD. 
Escreva um programa Scilab que tenha como entrada a quantidade de DVDs locada por um cliente e 
que calcule o preço total da locação. O programa também calcula o custo médio de locação de um DVD, 
ou seja, o custo total dividido pela quantidade de locações. 
Não é necessária a validação dos dados de entrada; sempre o usuário digitará uma quantidade inteira e 
positiva para representar as locações. 
A seguir, dois exemplos de execução do programa. 
Exemplo 1: 
CUSTO DA LOCAÇÃO DE DVDs 
QUANTIDADE DE DVDs LOCADOS (unidade): 11 
CUSTO TOTAL DA LOCAÇÃO (R$): 47 
CUSTO MÉDIO POR DVD (R$/unidade): 4.27273 
Exemplo 2: 
CUSTO DA LOCAÇÃO DE DVDs 
QUANTIDADE DE DVDs LOCADOS (unidade): 18 
CUSTO TOTAL DA LOCAÇÃO (R$): 61.5 
CUSTO MÉDIO POR DVD (R$/unidade): 3.41667 
 
 
Questão 4. (2014-02) 
A UFOP necessita de um programa que auxilie no cálculo das médias de seus alunos. Sabendo que um 
aluno fez duas provas e um trabalho, cada um valendo 10 pontos, codifique um programa Scilab que leia 
as notas do aluno, calcule sua média e imprima a média e a sua situação. 
A situação do aluno depende do valor de sua média. Caso a média seja maior ou igual a 6,0, o aluno 
está aprovado. Caso a média seja menor que 3,0, o aluno já está reprovado. Caso a média seja maior ou 
igual a 3,0 e menor que 6,0, o aluno está de recuperação. 
Não é necessária a validação dos dados de entrada, ou seja, cada nota digitada pelo aluno será válida, 
tendo um valor entre zero e dez (intervalo fechado). 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
A seguir, dois exemplos de execução do programa. 
Exemplo 1: 
INFORME A NOTA DA PROVA 1 : 6.5 
INFORME A NOTA DA PROVA 2 : 7.8 
INFORME A NOTA DO TRABALHO : 8.2 
MÉDIA DO ALUNO: 7.5 
ALUNO APROVADO 
Exemplo 2: 
INFORME A NOTA DA PROVA 1 : 2 
INFORME A NOTA DA PROVA 2 : 4 
INFORME A NOTA DO TRABALHO : 8 
MÉDIA DO ALUNO: 4.66667 
ALUNO EM RECUPERAÇÃO 
 
 
Questão 5. (2014-02) 
Em matemática, um elipsoide é um sólido que resulta da rotação de uma elipse em torno de um de 
seus eixos. A equação de um elipsoide em um sistema de coordenadas cartesianas (x-y-z) é; 𝒙𝟐𝒂𝟐 + 𝒚𝟐𝒃𝟐 + 𝒛𝟐𝒄𝟐 = 𝟏 
onde a , b , e c são números reais positivos que determinam as dimensões e a forma do elipsoide. 
Escreva um programa Scilab para classificar um elipsoide, a partir dos valores de a , b , e c , de acordo 
com as seguintes regras: 
1. Somente são classificados os elipsoides onde a ≥ b ≥ c 
2. Se a = b = c , o elipsoide tem a forma de uma ESFERA 
3. Se a ≠ b ≠ c , o elipsoide é ESCALENO 
4. Se c = 0 , o elipsoide é PLANO 
5. Se b = c , o elipsoide tem a forma de um CHARUTO 
6. Se a = b , o elipsoide tem a forma de um COMPRIMIDO 
O programa deve ler os valores de a , b , e c , e imprimir a classificação do elipsoide de acordo com os 
modelos de execução ilustrados abaixo. 
Não é necessária a validação dos dados de entrada. O usuário sempre digitará valores reais e 
positivos. 
A seguir, dois exemplos de execução do programa. 
Exemplo 1: 
CLASSIFICAÇÃO DE UM ELIPSOIDE 
DIGITE O VALOR DE a: 3 
DIGITE O VALOR DE b: 8 
DIGITE O VALOR DE c: 1 
ERRO - SEM CLASSIFICAÇÃO 
Exemplo 2: 
CLASSIFICAÇÃO DE UM ELIPSOIDE 
DIGITE O VALOR DE a: 8 
DIGITE O VALOR DE b: 6 
DIGITE O VALOR DE c: 6 
CHARUTO 
 
 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
Questão 6. (2014-02) 
A companhia Springfield Gás Ltda fornece gás encanado para várias cidades. Para emitir a fatura 
de cobrança de um cliente residencial, a empresa verifica o consumo mensal (volume de gás consumido 
em metros cúbicos, m3) e calcula o preço de acordo com a fórmula e as regras abaixo: 𝑷𝒓𝒆ç𝒐 = 𝑽𝒐𝒍𝒖𝒎𝒆 ∗ 𝒕𝒂𝒙𝒂 + 𝑻𝒂𝒙𝒂 𝑭𝒊𝒙𝒂 
Regras: 
• Para um volume de até 1 m3, o preço é de R$ 3,50; 
• Acima de 1 m3, até 10 m3, o custo é a quantidade de volume multiplicada pela taxa de R$ 2,50. 
Acrescenta-se também a taxa fixa de R$ 3,10; 
• Acima de 10 m3, até 20 m3, o custo é a quantidade de volume multiplicada pela taxa de R$ 2,00. 
Acrescenta-se também a taxa fixa de R$ 3,50; 
• Acima de 20 m3, a taxa fixa é zero e utilizam-se as seguintes taxas para os cálculos: 
o R$ 1,992 para os primeiros 15 m3; 
o R$ 2,938 para os próximos 5 m3; 
o R$ 4,00 para o volume restante; 
Escreva um programa Scilab que tenha como entrada o volume de gás consumido por um cliente 
residencial. O volume é representado por um número real positivo. Ocorre um erro quando o número 
digitado for nulo ou negativo (neste caso é exibida uma mensagemapropriada). 
O programa calcula o preço da fatura do cliente. As impressões seguem os modelos de execução 
abaixo. 
A seguir, dois exemplos de execução do programa. 
Exemplo 1: 
COMPANHIA SPRINGFIELD GÁS LTDA 
DIGITE O CONSUMO MENSAL DE GÁS (m^3): -14.8 
ERRO: CONSUMO NULO OU NEGATIVO 
FIM DO PROGRAMA 
Exemplo 2: 
COMPANHIA SPRINGFIELD GÁS LTDA 
DIGITE O CONSUMO MENSAL DE GÁS (m^3): 38 
PREÇO DA FATURA R$ 116.57 
FIM DO PROGRAMA 
 
 
Questão 7. (2015-01) 
O número de matrícula de um aluno da UFOP é utilizado para identificá-lo em todas as suas atividades 
acadêmicas. Este número é composto por sete dígitos, sendo que os dois primeiros indicam o ano de 
ingresso do aluno na universidade, por exemplo: 
Matrícula Ano de Ingresso Semestre 
12.2.0025 2012 segundo 
13.2.4587 2013 segundo 
14.1.2589 2014 primeiro 
15.1.7364 2015 primeiro 
Observação: 12.2.0025: segundo semestre; 15.1.7364: primeiro semestre. 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
Escreva um programa que leia um número de matrícula, supondo que seja digitado um número de 
matrícula válido, sem os “pontos” (apenas os algarismos). O programa deve exibir as seguintes 
informações: 
1. Se o ano de ingresso é “par” ou “ímpar”, com base nos dois primeiros algarismos (da esquerda 
para a direita) do número de matrícula. 
2. Se o aluno ingressou no primeiro ou no segundo semestre, com base no terceiro algarismo (da 
esquerda para a direita) do número de matrícula. 
Observação: Não é necessário verificar se o valor digitado é um número de matrícula válido. 
As entradas e saídas de dados seguem os modelos de execução abaixo. 
 
Exemplo 1: 
ANO DE INGRESSO NA UFOP 
QUAL O NÚMERO DE MATRÍCULA ? (SOMENTE DÍGITOS): 1220025 
12 É UM ANO PAR 
INGRESSO NO SEGUNDO SEMESTRE 
Exemplo 2: 
ANO DE INGRESSO NA UFOP 
QUAL O NÚMERO DE MATRÍCULA ? (SOMENTE DÍGITOS): 1324587 
13 É UM ANO ÍMPAR 
INGRESSO NO SEGUNDO SEMESTRE 
Exemplo 3: 
ANO DE INGRESSO NA UFOP 
QUAL O NÚMERO DE MATRÍCULA ? (SOMENTE DÍGITOS): 1517364 
15 É UM ANO ÍMPAR 
INGRESSO NO PRIMEIRO SEMESTRE 
 
 
Questão 8. (2015-01) 
Em tempos de escassez de água, o governador Alckiminguado decidiu estabelecer a cobrança para o 
consumo de água de duas maneiras distintas: situação 1 (normal) e situação 2 (escassez), conforme a 
tabela abaixo: 
Situação 0 < consumo <= 1000 litros Consumo > 1000 litros 
1 R$ 0,30 por litro R$ 300,00 + (R$ 0,50 por litro excedente a 1000 litros) 
2 R$ 0,50 por litro R$ 500,00 + (R$ 0,70 por litro excedente a 1000 litros) 
 
Escreva um programa para calcular o valor de uma conta de água, calculada conforme a tabela acima. 
Primeiramente, o programa deve ler a situação (1 ou 2) e, caso outro valor seja digitado, deve imprimir 
uma mensagem de erro e terminar. Caso o valor digitado para a situação seja válido, o programa deve ler 
o consumo de água (em litros) e imprimir o valor a ser pago na conta de água, conforme mostrado nos 
exemplos de execução a seguir. O programa deve também terminar com uma mensagem de erro caso o 
valor digitado para o consumo de água seja negativo. 
Exemplo 1: 
CONTA DE ÁGUA 
QUAL É A SITUAÇÃO (1 ou 2)? 5 
SITUAÇÃO INVÄLIDA! 
 
 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
Exemplo 2: 
CONTA DE ÁGUA 
QUAL É A SITUAÇÃO (1 ou 2)? 1 
QUAL É O CONSUMO DE ÁGUA (L)? 560 
VALOR A PAGAR = R$ 168.00 
Exemplo 3: 
CONTA DE ÁGUA 
QUAL É A SITUAÇÃO (1 ou 2)? 2 
QUAL É O CONSUMO DE ÁGUA (L)? 1340 
VALOR A PAGAR = R$ 738.00 
Exemplo 4: 
CONTA DE ÁGUA 
QUAL É A SITUAÇÃO (1 ou 2)? 2 
QUAL É O CONSUMO DE ÁGUA (L)? -12 
CONSUMO INVÁLIDO! 
 
 
Questão 9. (2015-01) 
Os jogadores do time de basquete Jurubera Cavaliers querem agendar um horário de treinamento no 
ginásio da UFOP. Você vai escrever o programa que é usado pelos funcionários do ginásio para 
agendamento de horários. O programa tem o seguinte comportamento: 
Primeiramente, o programa lê o turno no qual se deseja utilizar o ginásio, que pode ser o número 1, 
significando turno da manhã, ou 2, significando turno da tarde. Se qualquer outro valor for digitado, o 
programa deve exibir uma mensagem de erro e terminar. 
Quando é digitado um turno correto, o programa deve solicitar o horário de agendamento desejado, 
sendo sempre por um período de 1 hora, em um dos seguintes horários disponíveis: 
Turno Horários Disponíveis 
1 8 h 12 h 
2 14 h 15 h 
Nos horários não listados na tabela, o ginásio está ocupado e indisponível. 
Se o horário digitado for um dos horários disponíveis na tabela, deve ser exibida a mensagem: 
“HORÁRIO AGENDADO!”. Caso contrário deve ser exibida a mensagem: “HORÁRIO INDISPONÍVEL!”. 
As entradas e saídas de dados devem seguir o modelo apresentado nos exemplos de execução abaixo: 
Exemplo 1: 
AGENDAMENTO DE HORÁRIO: 
QUAL O TURNO DESEJADO (1 OU 2) ? 4 
ERRO: O TURNO 4 NÃO EXISTE 
Exemplo 2: 
AGENDAMENTO DE HORÁRIO: 
QUAL O TURNO DESEJADO (1 OU 2) ? 2 
QUAL O HORÁRIO (h) ? 15 
HORÁRIO AGENDADO ! 
Exemplo 3: 
AGENDAMENTO DE HORÁRIO: 
QUAL O TURNO DESEJADO (1 OU 2) ? 2 
QUAL O HORÁRIO (h) ? 10 
HORÁRIO INDISPONÍVEL ! 
 
 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
Questão 10. (2015-02) 
Escreva um programa que leia os comprimentos dos dois lados de um retângulo, considerando 
que o lado maior será digitado primeiro, e compare a área desse retângulo com a área do círculo cujo 
diâmetro tem medida igual à do maior lado do retângulo. O programa deve imprimir uma mensagem 
indicando se a área do círculo é ou não é maior do que a do retângulo, conforme ilustrado nos exemplos a 
seguir. 
Exemplo 1: 
Lados do retângulo: 
digite o lado maior: 10 
digite o lado menor: 6 
 
Área do retângulo = 60 
Área do círculo = 78,54 
A área do círculo é maior 
Exemplo 2: 
Lados do retângulo: 
digite o lado maior: 10 
digite o lado menor: 8 
 
Área do retângulo = 80 
Área do círculo = 78,54 
A área do círculo não é maior 
 
 
Questão 11. (2015-02) 
A distância (h) percorrida por um objeto em queda livre é dada por: h = gt2/2, onde g é a aceleração da 
gravidade (9,8m/s2) e t é o tempo (s) decorrido desde o início da queda. 
Considere o lançamento de um objeto do alto de um edifício com n andares, em que cada andar tem 3 
metros de altura. Escreva um programa para ler o número de andares do edifício (n), um intervalo de 
tempo (t) e um número k<n; o programa deve verificar se em t segundos o corpo já terá descido k andares 
completos, imprimindo uma mensagem, conforme se mostra nos exemplos de execução abaixo: 
Exemplo 1: 
n: 5 
t: 1 
k: 1 
 
Distância percorrida = 4.9m 
O corpo já desceu 1 andar(es) 
Exemplo 2: 
n: 10 
t: 2 
k: 8 
 
Distância percorrida = 19.6m 
O corpo ainda não desceu 8 andar(es) 
Exemplo 3: 
n: 5 
t: 2 
k: 3 
 
Distância percorrida = 19.6m 
O corpo já atingiu o chão 
 
 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
Questão 12. (2015-02) 
A empresa de viagens Stardust oferece um bônus (desconto) para a próxima viagem de seus clientes, 
conforme o cliente seja convencional (tipo 1) ou asteróide (tipo 2), de acordo com a seguinte tabela: 
Cliente X = Valor da passagem (R$) Bônus 
1 - Convencional 
X ≤ 500,00 5 % do valor da passagem 
500,00 < X ≤ 1000,00 10 % do valor da passagem 
X > 1000,00 15 % do valor da passagem 
2 – Asteróide 
X ≤ 500,00 20 % do valor da passagem 
X > 500,00 30 % do valor da passagem 
Cliente inexistente --- --- 
 
Escreva um programa que leia o tipodo cliente (1 ou 2) e o valor da passagem a ser comprada, e 
imprima o bônus obtido pelo cliente. Se for digitado um tipo de cliente diferente de 1 ou 2, o programa 
deve exibir uma mensagem na tela e encerrar a execução, conforme é ilustrado a seguir. Observe que o 
valor da passagem somente deve ser lido se o tipo de cliente digitado for válido. 
Exemplo 1: 
Empresa de Viagens Stardust 
Digite o tipo do cliente (1 ou 2): 3 
Cliente Inexistente! Fim de programa. 
Exemplo 2: 
Empresa de Viagens Stardust 
Digite o tipo do cliente (1 ou 2): 2 
Digite o valor da passagem (R$): 2000 
 
Bônus obtidos (R$): 600 
 
 
Questão 13. (2016-01) 
Em uma obra de construção civil, os operários são pagos semanalmente, pelo número de horas 
trabalhadas. Caso um operário trabalhe horas extras – mais do que 40 horas na semana – cada hora extra 
trabalhada é paga com adicional de 50% em relação ao valor pago por hora de trabalho normal. Por 
exemplo, supondo que o salário/hora seja 35,00 reais e que o operário trabalhe 36 horas, ele receberá 36 
x 35,00 = 1260,00 reais; se ele trabalhar 47 horas, receberá 47 x 35,00 + (47-40) x (35,00 x 0,5) = 
1767,50 reais. 
Além disso, a cada 10 semanas de trabalho (especificamente nas semanas 10, 20, 30 e assim por 
diante), o operário recebe um abono de 10% sobre a remuneração calculada para aquela semana. 
Escreva um programa para calcular o salário semanal de um empregado. Para isso, deverá ser lido o 
número da semana de trabalho (ns), o salário/hora e o número de horas trabalhadas naquela semana; o 
programa deverá calcular e imprimir a remuneração do operário relativa à semana ns. 
Os exemplos a seguir ilustram a execução do programa. 
 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
Exemplo 1: 
-- Salário semanal -- 
Número da semana de trabalho: 4 
Valor da hora trabalhada: 35.00 
Número de horas trabalhadas: 36 
Remuneração da semana 4 = R$ 1260.00 
Exemplo 2: 
-- Salário semanal -- 
Número da semana de trabalho: 6 
Valor da hora trabalhada: 35.00 
Número de horas trabalhadas: 47 
Remuneração da semana 6 = R$ 1767.50 
Exemplo 3: 
-- Salário semanal -- 
Número da semana de trabalho: 20 
Valor da hora trabalhada: 35.00 
Número de horas trabalhadas: 47 
Remuneração da semana 20 = R$ 1944.25 
 
 
Questão 14. (2016-01) 
Considere um objeto lançado verticalmente para cima, tal como mostrado na figura abaixo. O objeto é 
lançado a partir do chão (ponto A), com velocidade inicial v0, e sobe, com velocidade decrescente, em 
razão da aceleração da gravidade g, até uma altura máxima H (ponto B), voltando depois a cair, até atingir 
o chão. 
 
Escreva um programa que leia a velocidade inicial de lançamento do projétil (v0) e o tempo t decorrido 
após o lançamento e calcule e imprima os seguintes dados: 
1. O tempo total de subida do projétil (Ts) 
2. A altura máxima que o projétil irá atingir (H) 
3. A situação do projétil depois de decorrido o tempo t: subindo, ou no topo, ou descendo, ou já 
chegou ao chão (OBS: o tempo de descida é igual ao tempo total de subida). 
4. Se o projétil estiver subindo, imprima a distância que falta para chegar ao topo (H-y); se estiver 
descendo, imprima a distância que falta para chegar ao chão (y) 
 
Aceleração	da	gravidade:							
g	=	9,8		m/s2	
	
Posição	no	instante	t	após	o	lançamento:	
y	=	v0	t	–	(1/2)	g	t2	
Tempo	de	subida	do	projétil:	
Ts	=	v0/g	
	
Altura	máxima	atingida	pelo	projétil:	
H	=	v02/	2g	
 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
Os exemplos a seguir ilustram a execução do programa. 
Exemplo 1: 
-- Lançamento vertical -- 
Velocidade inicial: 19 
Tempo decorrido: 1 
Tempo de subida = 1.93878 s 
Altura máxima = 18.4184 m 
Subindo...faltam 4.31837 m para o topo 
Exemplo 2: 
-- Lançamento vertical -- 
Velocidade inicial: 19 
Tempo decorrido: 3 
Tempo de subida = 1.93878 s 
Altura máxima = 18.4184 m 
Descendo...faltam 12.9 m para o chão 
Exemplo 3: 
-- Lançamento vertical -- 
Velocidade inicial: 19.6 
Tempo decorrido: 2 
Tempo de subida = 2 s 
Altura máxima = 19.6 m 
Projétil no topo. 
Exemplo 4: 
-- Lançamento vertical -- 
Velocidade inicial: 19.6 
Tempo decorrido: 2 
Tempo de subida = 2 s 
Altura máxima = 19.6 m 
Projétil no topo. 
 
 
Questão 15. (2016-01) 
Escreva um programa para informar a uma pessoa se ela pode ou não aposentar-se. O programa deve 
ler o sexo da pessoa (m – masculino ou f – feminino), a sua idade e seu tempo de contribuição para o 
INSS (em anos). Caso o sexo seja masculino, ela poderá aposentar-se se a soma da idade com o tempo 
de contribuição for maior ou igual a 95 anos. Caso o sexo seja feminino, ela poderá aposentar-se se a 
soma da idade com o tempo de contribuição for maior ou igual a 85 anos. 
O programa apenas deve ler a idade e o tempo de contribuição caso o sexo informado seja m ou f, 
emitindo mensagem de valor inválido em caso contrário. O programa deve também emitir mensagem de 
valor inválido se a idade ou o tempo de contribuição não forem valores inteiros ou forem negativos. 
Os exemplos a seguir ilustram a execução do programa. 
Exemplo 1: 
APOSENTADORIA 
Informe o sexo (m ou f): k 
Valor inválido. 
Exemplo 2: 
APOSENTADORIA 
Sexo (m ou f): f 
Idade (anos): 45.9 
Tempo de contribuição (anos): 20 
Valores inválidos. 
 
 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
Exemplo 3: 
APOSENTADORIA 
Informe o sexo (m ou f): m 
Idade (anos): 68 
Tempo de contribuição (anos): 30 
 Você já pode aposentar-se. 
Exemplo 4: 
APOSENTADORIA 
Informe o sexo (m ou f): m 
Idade (anos): 50 
Tempo de contribuição (anos): 20 
Você ainda não pode aposentar-se. 
 
 
Questão 16. (2016-02) 
De acordo com a Receita Federal, os trabalhadores brasileiros devem pagar o IRPF (Imposto de Renda 
da Pessoa Física) de acordo com a seguinte tabela: 
Base de cálculo mensal em R$ Alíquota (%) 
Até 2.000,00 15% 
Acima de 2.000,00 22,5% 
 
Isso significa que um trabalhador que ganha, por exemplo, R$ 1.500,00/mês, deve pagar 15% de 
imposto sobre o seu rendimento anual, ou seja, 12 x 1.500 x 0,15 = 2.700. Já um trabalhador que recebe, 
por exemplo, R$ 3.000,00/mês, irá pagar 15% sobre R$ 2.000,00 mais 22,5% sobre o restante (R$ 
3.000,00 – R$ 2.000,00), resultando em 12 x 2.000 x 0,15 + 12 x 1.000 x 0,225 = 3.600 + 2.700 = 6.300. 
No entanto, se o trabalhador possuir dependentes, ele terá um desconto no valor do IRPF de R$ 300,00 
por dependente. Vale ressaltar que, se o valor total do desconto for maior ou igual ao valor do imposto 
calculado antes do desconto, então o valor a ser pago de IRPF será igual a R$ 0. 
Escreva um programa que receba como entradas o salário do trabalhador e a quantidade de 
dependentes que o mesmo possui. A partir desses dados, o programa deve calcular o valor do IRPF a ser 
pago e imprimi-lo na tela. 
Veja os exemplos de execução a seguir: 
Exemplo 1: 
Entre com o valor do seu salário mensal: 1800 
Entre com o número de dependentes: 1 
Imposto a ser pago: R$ 2940 
Exemplo 2: 
Entre com o valor do seu salário mensal: 1000 
Entre com o número de dependentes: 7 
Imposto a ser pago: R$ 0 
 
 
 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
Questão 17. (2016-02) 
Uma cidade resolveu fazer um rodízio de veículos para melhorar o trânsito, de acordo com a tabela a 
seguir: 
Dia da semana Veículos que não podem trafegar 
Segunda Placas com final 0 e 1 
Terça Placas com final 2 e 3 
Quarta Placas com final 4 e 5 
Quinta Placas com final6 e 7 
Sexta Placas com final 8 e 9 
Sábado e Domingo Liberado para todos os veículos 
 
Escreva um programa que leia o dia da semana e a placa de um veículo e informe se ele pode trafegar 
naquele dia ou não. O programa deve verificar se a placa é um número válido (entre 1 e 9999) e, caso seja 
invalido, emitir uma mensagem de erro e terminar o programa. 
Os exemplos a seguir ilustram e execução do programa. 
Exemplo 1: 
-- Rodízio de Veículos -- 
Dia da semana: segunda 
Placa do veículo: 398762 
 
Placa inválida! 
Exemplo 2: 
-- Rodízio de Veículos -- 
Dia da semana: segunda 
Placa do veículo: 8761 
 
Não pode trafegar neste dia da semana 
Exemplo 3: 
-- Rodízio de Veículos -- 
Dia da semana: quarta 
Placa do veículo: 8541 
 
Tráfego liberado neste dia da semana 
 
 
Questão 18. (2016-02) 
De acordo com as normas da UFOP, no final do semestre letivo, podem realizar o Exame Especial 
somente os alunos que não alcançaram média 6,0 e tiveram frequência maior ou igual a 75% das aulas 
dadas. Os alunos que faltaram em mais do que 25% das aulas dadas estão reprovados por falta e não 
podem fazer o Exame Especial. Para os alunos aptos a realizar o Exame Especial, tem-se duas 
possibilidades: 
a) Exame Especial Parcial: esta é uma possibilidade para os alunos que faltaram em alguma(s) 
avaliação(ções), desde que tenham feito pelo menos de 50% das avaliações dadas ao longo do 
curso. 
b) Exame Especial Total: para os alunos que não podem ou não desejam realizar o Exame 
Especial Parcial. 
 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
Escreva um programa que solicite ao aluno sua média final em BCC701, o número de aulas dadas ao 
longo do semestre letivo, a sua quantidade total de faltas nas aulas dadas e o seu percentual de faltas nas 
avaliações. Em seguida, o programa deve imprimir na tela a mensagem que representa a situação do 
aluno, que deve ser uma das elencadas a seguir: 
a) Parabéns, você foi aprovado em BCC701! 
b) Você poderá fazer Exame Especial Total. 
c) Você poderá fazer Exame Especial Parcial ou Exame Especial Total. 
d) Infelizmente você reprovou por faltas. 
Obs.: O percentual de faltas nas avaliações deve ser solicitado (lido) somente quando o aluno estiver 
apto a realizar o Exame Especial. 
Os exemplos a seguir ilustram e execução do programa. 
Exemplo 1: 
Entre com a sua média final em BCC701: 5.9 
Entre com o número de aulas dadas: 72 
Entre com sua quantidade de faltas nas aulas: 12 
Em quantos por cento das avaliações você faltou?: 33 
Você poderá fazer Exame Especial Parcial ou Exame Especial Total. 
Exemplo 2: 
Entre com a sua média final em BCC701: 6.5 
Entre com o número de aulas dadas: 76 
Entre com sua quantidade de faltas nas aulas: 20 
Infelizmente você reprovou por faltas. 
Exemplo 3: 
Entre com a sua média final em BCC701: 8.5 
Entre com o número de aulas dadas: 78 
Entre com sua quantidade de faltas nas aulas: 2 
Parabéns, você foi aprovado em BCC701! 
Exemplo 4: 
Entre com a sua média final em BCC701: 1.5 
Entre com o número de aulas dadas: 75 
Entre com sua quantidade de faltas nas aulas: 10 
Em quantos por cento das avaliações você faltou?: 0 
Você poderá fazer Exame Especial Total. 
 
 
Questão 19. (2017-01) 
Implemente um programa que calcule o valor do Imposto de Renda a ser retido na fonte conforme a 
tabela e exemplo a seguir: 
Base de Cálculo (R$) Alíquota (%) Dedução (R$) 
Até 1.903,98 - - 
De 1.903,99 até 2.826,65 7,5 142,80 
De 2.826,66 até 3.751,05 15 354,80 
De 3.751,06 até 4.664,68 22,5 636,13 
Acima de 4.664,68 27,5 869,36 
* Dedução por dependente é de R$ 189,00, limitado a no máximo 4 dependentes. 
Exemplo de cálculo para um salario bruto de R$ 4.000,00 e 1 dependente: 
• Contribuição INSS = 440,00 (11% sobre o Salário Bruto) 
• Dedução por Dependentes = Número de Dependentes * 189,59 = 189,00 
• Base de Cálculo = 4.000,00 – 440,00 – 189,00 = 3.371,00 
• Pela tabela, a alíquota é de 15% e a dedução é de 354,80 
• Valor do Imposto Retido: 3.371,00 * 0,15 – 354,80 = 150,85 
 
Universidade Federal de Ouro Preto – UFOP 
Instituto de Ciências Exatas e Biológicas – ICEB 
Departamento de Computação – DECOM 
 
Exemplo 1: 
Salário bruto: 4000.00 
Número de dependentes: 1 
Valor do Imposto Retido: 150.85 
 
 
Questão 20. (2017-02) 
A indústria química de perfumes, JahCathynga Inc. Co., presenteia mensalmente seus clientes com 
um cupom para concorrerem a um sorteio, realizado da seguinte forma: 
1) Cada cupom é numerado com 6 dígitos, de 111111 a 999999. 
2) Extrai-se do número do cupom o dígito referente à unidade de milhar. Também, extrai-se o dígito 
das unidades. Por exemplo, se o numero do cupom for 852614, são extraídos os números 2 
(unidade de milhar) e 4 (unidades). 
3) O dígito da unidade de milhar, x, determina o kit que o cliente receberá: 
• se x ≤ 3, o cliente recebe um “Kit desodorante!”; esta mensagem deve ser exibida; 
• se 3 < x ≤ 6, o cliente recebe um “Kit perfume!”; esta mensagem deve ser exibida; 
• se x > 6, o cliente recebe um “Kit loção para os pés!”; esta mensagem deve ser exibida; 
4) Quanto ao dígito das unidades, caso ele seja um número par, o cliente recebe uma quantidade de 
sabonetes igual a esse dígito. Caso seja ímpar, o cliente recebe um novo cupom. 
Escreva um programa Scilab que executa o sorteio. A seguir, 3 exemplos de execução desse 
programa. DICA: Para extrair um determinado dígito você pode: a) obter o valor inteiro do resultado de 
uma divisão para eliminar uma parte do número; b) em seguida, obter o resto da divisão do número obtido 
por um determinado valor, conforme exemplificado a seguir: 
a) int(852614 / ValorEspecial) è resulta em 852. 
b) modulo(852, OutroValorEspecial) è resulta em 2. 
 
Exemplo 1: 
Festival de Prêmios JahCathynga 
Digite o seu cupom (6 dígitos): 852614 
Prêmio 1: Kit desodorante! 
Prêmio 2: 4 sabonete(s) 
Exemplo 2: 
Festival de Prêmios JahCathynga 
Digite o seu cupom (6 dígitos): 245689 
Prêmio 1: Kit perfume! 
Prêmio 2: um cupom adicional 
Exemplo 3: 
Festival de Prêmios JahCathynga 
Digite o seu cupom (6 dígitos): 258748 
Prêmio 1: Kit loção para os pés! 
Prêmio 2: 8 sabonete(s)

Continue navegando