O professor passou um exercício com esse enunciado:
Melhor desempenho
Apresentação
Em um evento de computação foi proposta uma "codificação relâmpago", na qual os participantes se inscreviam na competição e ganhavam um código numérico (inteiro positivo) de participação, além de terem acesso a uma sala com computador para realizar a programação.
Na prova, era apresentado um problema e cada competidor realizava sua implementação. Quando terminavam, o programa escrito era entregue para correção.
Cada programa era avaliado por um comitê, recebendo notas de 0 a 10.
Como incentivo, houve um prêmio para o melhor colocado, que era o que tinha recebido a melhor nota. Em caso de empate de notas, o vencedor seria o que tivesse entregue sua solução antes.
Informações
O controle das entregas foi feito em uma planilha em papel, na qual eram registrados, na hora da entrega do programa, os códigos de inscrição dos candidatos. Desta forma, necessariamente a lista definia a ordem de entrega (que poderia, se necessário, ser usada para desempate).
Depois de avaliados os programas, na mesma planilha eram escritas as notas.
Um programa deve ser elaborado para permitir digitar os dados da planilha (código de inscrição e nota obtida) para todos os inscritos, o que se dará na ordem da planilha e, portanto, na ordem de entrega. Ao final, deve ser apresentado o código de inscrição do vencedor da competição, juntamente com sua nota.
Especificação
Escreva um algoritmo que resolva o problema proposto e implemente uma versão deste algoritmo em C. Não são necessárias verificações de consistência (ou seja, não é preciso verificar se os códigos são válidos nem se as notas estão realmente no intervalo válido).
Eu desenvolvi o seguinte código:
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main(int argc, char *argv[])
{
int codigoInscricao, codigoVencedor;
int nota, notaVencedor;
char tecla; //opção para leitura de novos dados
//Entrada de dados dos candidatos e calculos intermediários
codigoInscricao = 0;
do
{
//Leitura dos dados
printf ("Informe o codigo de inscricao: ");
scanf ("%d",&codigoInscricao);
printf ("Informe a nota do candidato em numero inteiro nessa escala [0 a 10]:");
scanf ("%d", ¬a);
fflush (stdin);
//mudança de variável de controle de laço
printf ("Deseja inserir mais um candidato? \n");
printf ("[tecle s ou n para continuar]: ");
scanf ("%c", &tecla);
printf("\n");
}
while (tecla == 's' || tecla == 'n');
while ((codigoInscricao,"fim") !=0)
codigoVencedor = codigoInscricao;
notaVencedor = nota;
if (notaVencedor = -1)
printf ("Não houve vencedor.");
else
printf("O codigo vencedor é: " ,codigoVencedor,notaVencedor);
system("PAUSE");
return 0;
}
porém ele não me apresenta a nota maior e o número da inscrição, onde eu estou errando?
Pergunta
Vivian Almeida
Olá pessoal,
O professor passou um exercício com esse enunciado:
Melhor desempenho
Apresentação
Em um evento de computação foi proposta uma "codificação relâmpago", na qual os participantes se inscreviam na competição e ganhavam um código numérico (inteiro positivo) de participação, além de terem acesso a uma sala com computador para realizar a programação.
Na prova, era apresentado um problema e cada competidor realizava sua implementação. Quando terminavam, o programa escrito era entregue para correção.
Cada programa era avaliado por um comitê, recebendo notas de 0 a 10.
Como incentivo, houve um prêmio para o melhor colocado, que era o que tinha recebido a melhor nota. Em caso de empate de notas, o vencedor seria o que tivesse entregue sua solução antes.
Informações
O controle das entregas foi feito em uma planilha em papel, na qual eram registrados, na hora da entrega do programa, os códigos de inscrição dos candidatos. Desta forma, necessariamente a lista definia a ordem de entrega (que poderia, se necessário, ser usada para desempate).
Depois de avaliados os programas, na mesma planilha eram escritas as notas.
Um programa deve ser elaborado para permitir digitar os dados da planilha (código de inscrição e nota obtida) para todos os inscritos, o que se dará na ordem da planilha e, portanto, na ordem de entrega. Ao final, deve ser apresentado o código de inscrição do vencedor da competição, juntamente com sua nota.
Especificação
Escreva um algoritmo que resolva o problema proposto e implemente uma versão deste algoritmo em C. Não são necessárias verificações de consistência (ou seja, não é preciso verificar se os códigos são válidos nem se as notas estão realmente no intervalo válido).
Eu desenvolvi o seguinte código:
porém ele não me apresenta a nota maior e o número da inscrição, onde eu estou errando?
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.