1
Lista de Exercícios 6 Entrada e Saída
1) Faça um programa que calcule e exiba o percentual de aprovados de uma turma. O programa deverá ler a quantidade de alunos da turma e a quantidade de alunos aprovados. Faça uma função que receba como parâmetro a quantidade de alunos da turma e a quantidade de alunos aprovados. Esta função deverá calcular e exibir o percentual de aprovados da turma.
2) A Terra gira em torno do sol a 30 km/s. Faça um programa que exiba a distância (em km/h) que a Terra percorre no espaço durante uma quantidade de horas fornecida via teclado.
3)
a) Escreva uma função para calcular e retornar a área de um lado de uma caixa retangular. Esta função deverá receber como parâmetro as dimensões do lado.
b) Escreva uma função para calcular e retornar a área de um círculo de raio r. Esta função deverá receber como parâmetro o raio.
c) Usando as funções dos itens anteriores, escreva um programa para calcular a metragem necessária para forrar uma caixa com uma tampa circular, com as dimensões ilustradas na figura abaixo. O programa deve capturar do teclado os valores das dimensões da peça.
4) Sabe-se que o volume de uma caixa de lados a, b e c é dado por Vcaixa = a x b x c e que o volume de um cilindro de raio r e altura h é dado por Vcilindro = πhr2. Pede-se:
a) Escreva uma função para calcular e retornar o volume de uma caixa de lados a, b e c. Esta função deverá receber como parâmetro os lados a, b e c.
b) Escreva uma função para calcular e retornar o volume de um cilindro de raio r e altura h. Esta função deverá receber como parâmetro o raio e a altura.
2
c) Usando as funções dos itens anteriores, escreva um programa para calcular o volume de uma caixa com um furo cilíndrico, com as dimensões ilustradas na figura abaixo.
O programa deve capturar do teclado os valores das dimensões da peça e deve exibir o valor do volume calculado.
5) Faça um programa que capture do teclado o número de dias decorrido em um evento e exiba na tela o mesmo valor expresso em números de semanas e número de dias. Por exemplo, se um usuário fornecer o valor 19, o programa deve exibir 2 semanas e 5 dias. 6) Faça um programa que capture do teclado uma data no formato 'dd de mês de ano' e
mostre a data no formato dd/três primeiras letras do mês/ano'. Exemplo: Entrada: 12 de abril de 1943 Saída: 12/abr/1943
7) Considere o polígono irregular abaixo, formado por três retângulos e um triângulo.
a) Crie a função areaRetangulo: recebe os lados de um retângulo e retorna a área
b) Crie a função hipotenusa(cateto1,cateto2) que recebe dois catetos de um triângulo retângulo e retorna a hipotenusa deste triângulo
c) Crie a função areaTotal(a, b, c, d, e) que dados os valores dos lados a, b, c, d e e, calcule a área total do polígono. Utilize, obrigatoriamente, as funções do item a e b definidas anteriormente para calcular as áreas dos retângulos e do triângulo. Lembre-se que a área de um triângulo retângulo de catetos cateto1 e cateto2 é dada pela metade da área de um retângulo de lados cateto1 e cateto2.
3
d) Faça um programa que pergunte ao usuário os valores de a,b,c,d e e e exiba a área total
e) Crie uma função escolheCor,que recebe o nome da figura (triângulo ou retângulo de pé ou retângulo deitado ou retângulo inclinado), apresente para o usuário um menu com uma paleta de cores (green','orange','red','blue','green','pink') e peça para que ele escolha a cor de preenchimento da figura.
modifique o programa do item c, para que após perguntar os valores de a,b,c,d e e, apresente o menu para cada uma das figuras e, usando a turtle, desenhe-as preenchiddesenhe-as com desenhe-as cores escolhiddesenhe-as pelo usuário.
8) Faça um programa que pergunte ao usuário o tamanho de um arquivo para downloads (em mb) e a velocidade de um link de internet (em mbps), calcule e informe o tempo aproximado de download do arquivo usando este link
a) em minutos
b) em horas: minutos:segundos
9) Uma escola deseja monitorar quanto tempo seus alunos ficam na escola. Faça um programa que leia o horário de entrada e o horário de saída de um aluno exibindo o tempo (em horas:minutos) que o aluno ficou na escola.
a) Faça uma função que obtenha um horário(hora e minutos) e retorne-o convertido em minutos
b) Faça uma função que receba uma quantidade de minutos e exiba-a no formato h:m:s
10) Na medicina, calcula-se a área da superfície do corpo de um ser humano para determinar, entre outras aplicações, a quantidade de suor expelido durante a realização de atividades física e a dosagem de alguns medicamentos. Há várias fórmulas para o cálculo da área da superfície corporal, entre elas pode-se citar:
Fórmula de Mosteller
Fórmula de Haycock e
colaboradores
A = p 0.5378 * h 0.3964 * 0.024265
onde A é a área em m2, p é o peso em quilogramas e h, a estatura em cm.
Faça um programa que capture a altura( em cm) e o peso( em kg) de uma pessoa, exibindo a área corporal calculada pela fórmula de Mosteller e a área corporal calculada pela fórmula de Haycock. No final, seu programa deve mostrar também a diferença dos valores das áreas corporais entre a Fórmula de Mosteller e a Fórmula de Haycock. Seu programa deve chamar adequadamente as seguintes funções:
4
a) area_Mostellerl(altura, peso): esta função recebe como parâmetro a altura e o peso de uma pessoa e retorna sua área corporal de acordo com a fórmula de Mosteller b) area_ Haycock corporal altura, peso): esta função recebe como parâmetro o a altura
e o peso de uma pessoa e retorna sua área corporal de acordo com a fórmula de Haycock e colaboradores.
11) Construa uma função que, dado um número de conta corrente com três dígitos, retorne o seu dígito verificador, o qual é calculado da seguinte maneira:
Exemplo: número da conta: 25678
I. Somar o número da conta com o seu inverso: 256 + 652 = 908;
II. Multiplicar cada dígito pela sua ordem posicional e somar este resultado: 9 0 8 9 0 8
x 1 x 2 x 3
9 + 0 + 24 = 33
III. O último dígito deste resultado é o dígito verificador da conta (33 3)
12) Efetuar o cálculo do valor de uma prestação em atraso de um cliente inadimplente da loja, a partir do valor inicial e do número de meses em atraso:
prestação = valor+(taxa/100)* tempo.
Obs. A taxa é de 6%
modifique o programa para que a taxa seja informada
13) Faça um programa que calcule e apresente o volume de cada kit de latas de óleo
vendido pela empresa. Volume = 3.14159* r2 * altura
Obs. Em cada Kit tem-se 4 latas. Há 6 Kits
modifique o programa para saber a quantidade de Kits
modifique o programa para que a quantidade de latas de um Kit seja constante mas informada
modifique o programa para saber o custo do Kit, considerando que cada lata custa 10,00
modifique o programa para saber o preço de venda do Kit sabendo que deseja-se 30% de lucro
14) Suponha que uma escola utilize, como código de matrícula, um número inteiro no formato AASDDD, onde:
• Os dois primeiros dígitos, representados pela letra A, são os dois últimos algarismos do ano da ingresso;
5
• O terceiro dígito, representado pela letra S, vale 1 ou 2, conforme o aluno tenha ingressado no 1º ou 2º semestre;
• Os quatro últimos dígitos, representados pela letra D, correspondem à sua posição no vestibular do curso do aluno, no semestre e no ano em questão.
Faça um programa que leia o número de matrícula de um aluno e imprima o ano e o semestre em que ele ingressou
15) Faça um programa para informar o tempo ( em horas: minutos) necessário para que um carro a uma velocidade constante de 100 km/h percorra uma distância fornecida pelo usuário.
modifique o programa para que a velocidade do carro também seja fornecido se, a cada hora, o motorista desejar parar por 15 minutos, exiba o número
total de paradas
modifique o programa anterior para informar o tempo total decorrido entre a saída e a chegada no destino
modifique o programa anterior para informar a velocidade que poderia ser empregada se o motorista utilizasse todo o tempo encontrado no item anterior, mas evitando as paradas.
16) Escreva um programa para calcular a redução do tempo de vida de um fumante. Pergunte a quantidade de cigarros fumados por dia e quantos anos ele já fumou. Considere que um fumante perde 10 minutos de vida a cada cigarro, calcule quantos dias de vida um fumante perderá.
a) Exiba o total em dias. b) Exiba o total em semanas
c) Exiba o total em meses, dias ( considere todos os meses com 30 dias)
d) Exiba o total em anos, meses, dias ( considere todos os anos com 365 dias e os meses com 30 dias)
17) Faça um programa que informe quantos pontos um time de futebol no Brasileirão possui no campeonato, sabendo que o número de vitórias, derrotas e empates do time serão fornecidos. Vitória: 3 pontos, empate:2 pontos e derrota: 0 pontos
18) Faça um algoritmo que informe a razão entre o número de arremessos e o número de cestas do pivot de um time de basquete sabendo que a quantidade de cestas e o número total de arremessos por ele realizados serão fornecidos
6
19) Faça um programa que obtenha o horário de entrada ( hh mm ) e o horário de saída ( hh mm ) de um aluno na biblioteca, mostrando seu tempo de permanência ( em hh e mm )
Dica: 130 minutos 130//60: 2 horas e 130%60 10 minutos
20) Numa campanha comunitária, a quantidade de arroz arrecadada para distribuição e a quantidade de arroz que restou após a distribuição na campanha são registradas. Faça um programa, que a partir destes dados, informe quantas famílias foram atendidas.
Obs. Para cada família doa-se 5 Kg
modifique o programa para que a quantidade doada a cada família seja constante mas informada
21) Numa campanha comunitária, a quantidade de arroz arrecadada para distribuição e a quantidade de famílias a serem atendidas são registradas. Faça um programa, que a partir destes dados, informe quantos Kg serão doados a cada família .
22) A entrada de dados de um programa consiste na data atual e esta é fornecida por um string em que dia, mês e ano são dados nesta ordem e separados por barra. Deseja-se transformar esta cadeia modificando a ordem para mês / dia / ano.
23) a) Faça um função que receba uma string e retorne uma string com os caracteres da string recebida ao contrário
b) Faça a função, geraString, que recebe uma string composta por letras ( nome), uma string composta por algarismos (alg) e um número n(menor ou igual ao tamanho da 1ª string). Usando a função do item a) crie e retorne uma nova string de acordo com a seguinte regra:
n primeiros caracteres da string nome + string alg invertida+
Exemplo: geraString('Patinhas', '19',3) 'Pat91'
Faça um programa que pergunte ao usuário seu nome e ano de seu nascimento ( número com 4 dígitos) e, usando as funções anteriores, exiba seu login e senha.
Login : composto por todos os caracteres do nome e os dois últimos algarismos do ano de seu nascimento
Senha: composta pela metade dos caracteres do nome e o ano do nascimento invertido
Exemplo: entrada: Patinhas 1984 Login: Patinhas48
7
24) A transmissão do nome e sobrenome dos clientes de uma conta bancária segue as seguintes regras:
Os primeiros n caracteres do nome seguidos do n primeiros caracteres do sobrenome seguido do '*' seguido dos caracteres restantes do nome sguidos do '&' seguidos dos caracteres restantes do sobrenome.
Faça um programa que leia o nome e o sobrenome do cliente, sorteie um número n ( usando a função randint) e mostre como será transmitido de acordo com a regra acima ( faça uma função para criar a string com o nome a ser transmitido)
25) a) Escreva uma função que receba duas strings e retorne a concatenação da primeira, sem a sua primeira metade com a segunda, sem os ( no máximo) n primeiros caracteres, onde n é igual ao tamanho da metade da primeira string.
Faça um programa que leia o nome da mãe e o nome do pai de um bebê, mostrando as combinações possíveis dos nomes da mãe e pai de acordo com a regra acima.
26) Faça um programa que mostre o valor da entrada e de cada parcela a ser paga por uma pessoa. O total comprado e o número de parcelas serão fornecidos pelo usuário. A loja só parcela 70% do montante
Modifique o programa acima para que seja acrescido uma taxa de administração de crédito sobre o valor parcelado. Esta taxa equivale a 10% do valor parcelado e deve ser pago junto com a entrada
27) Faça um programa que leia as duas notas de um aluno, calcule e imprima a sua média sabendo que a primeira nota tem peso 3 e a segunda nota tem peso 7. (o cálculo da média deve ser calculado por uma função)
28) Faça um programa para calcular a quantos metros de madeira serão necessários para emoldurar um quadro cujas dimensões são fornecidas pelo usuário. Exibir a resposta em m e cm (o cálculo da metragem deve ser calculado por uma função bem como a exibição da resposta)
29) Faça um programa que leia a altura de uma pessoa fornecida em cms e exiba-a em m e cm. Ex: 120 1m 20cm
30) Faça um programa que leia um verbo regular terminado em ar e mostre sua conjugação no futuro do pretérito.( a conjugação deve ser exibida por uma função) 31) Faça um programa que calcule o preço da gasolina por litro no Brasil se adotássemos
o mesmo preço cobrado nos Estados Unidos. O programa deve capturar dois valores fornecidos via teclado: o preço do galão de gasolina praticado nos Estados Unidos (em
8
dólares) e a taxa de conversão do dólar para o real. O programa então deve exibir o preço do litro de gasolina correspondente em reais. Sabe-se que um galão tem 3.7854 litros.
32) Escreva um programa que pergunte a quantidade de km percorridos por um carro alugado pelo usuário e a quantidade de dias pelos quais o carro foi alugado. Calcule o preço a pagar, sabendo que a diária do o carro custa R$ 260 por dia e R$ 0,15 por km rodado.
33) Faça um programa que leia o primeiro termo de uma progressão aritmética, sua razão, um número N e, a seguir, calcule e mostre o N-ésimo termo da PA.