Baixe o app para aproveitar ainda mais
Prévia do material em texto
Prova I – Introdução à Programação 2019/2 A Divisão de Esportes da Pró-Reitoria de Assuntos Estudantis da UFRGS organiza anualmente um passeio ciclístico denominado UFRGS Sobre Rodas. Suponha que neste ano, ao final do passeio, será realizada uma foto oficial do eveno com os 16 primeiros participantes. Para a foto, os participantes deverão ser perfilados em dois grupos, sendo os mais baixos posicionados na primeira fila e os mais altos na fila posterior. Para auxiliar a organização, escreva um programa em C, que leia as alturas dos participantes (obrigatoriamente maior que 0) em metros, armazenando-as em um arranjo/vetor. Em seguida, calcule a média das alturas, imprima-a com precisão de 3 casas decimais e então exiba quantos participantes devem ficar na primeira e quantos devem ficar na segunda fila. Assuma que na primeira fila serão posicionados os participantes com altura menor ou igual a média e na segunda, aqueles com altura maior que a média. Prova II – Introdução à Programação 2019/2 A empresa em que você trabalha permite que funcionários em serviço se desloquem pela cidade fazendo uso do serviço de transporte intermediado por aplicativos. Cada funcionário deve informar as corridas que fez durante o horário de trabalho a fim de ser reembolsado no final do mês. Com base em seus conhecimentos de programação, você decidiu escrever um pequeno programa para facilitar o gerenciamento das corridas. O programa deve ler os dados indicados na tabela abaixo, calcular o preço final da corrida conforme a fórmula e então adicionar uma linha em um arquivo texto corridas.txt que será enviado ao setor de Recursos Humanos da empresa para que os reembolsos possam ser efetivados. A empresa permite o uso de somente dois aplicativos que são identificados pelos códigos U e N. Cada corrida possui as seguintes informações: Dado Tipo Matrícula do funcionário Número inteiro Código do APP (U ou N) Caractere Duração em minutos Número inteiro Distância em quilômetros Número real Placa do veículo String com 7 caracteres úteis O preço da corrida é calculado conforme a fórmula e tabela abaixo: Preço final = valor base + (duração x valor minuto) + (distância x valor km) Aplicativo U Aplicativo N Valor base R$ 2,50 R$ 2,38 Valor por minuto R$ 0,20 R$ 0,29 Valor por quilometro R$ 1,20 R$ 1,14 Suas tarefas são: 1) Implementar um tipo estruturado adequado para registro das corridas. Considere apenas os dados apresentados na tabela. 2) Implementar uma função que calcule o preço final da corrida. Esta função deve receber como parâmetros apenas os seguintes dados: código do app, duração e distância, e deve retornar o valor final calculado para a corrida ou -1 caso o código do app seja inválido. 3) Escrever o código necessário ára adicionar a um arquivo texto de nome corridas.txt os seguintes dados separados por vírgula: matrícula, código app, duração, distância, placa, valor total 4) Escrever uma função main que utilize o tipo estruturado e a função criada anteriormente. Para isso, a sua função main deve: Incluir as linhas de código necessárias para ler do teclado os dados de uma corrida e armazená-las no tipo estruturado criado anteriormente; Chamar a função que calcula o preço final da corrida passando por parâmetro os dados armazenados na estrutura; Mostrar na tela o preço final calculado em reais com duas casas decimais após a vírgula ou mensagem de erro dizendo que o aplicativo não foi reconhecido; Efetivar a gravação no arquivo dos dados da corrida (apenas caso o aplicativo tenha sido reconhecido).
Compartilhar