Nuno Previato 0 Denunciar post Postado Março 28, 2011 Olá tenho um problema de uma corrida, que você digita o numero de carros N, e o numero de voltas M, ai você digita o tempo das voltas para os carros, depois pega os 3 carros com menores tempos e mostra na tela, mas nao consigo pegar o 3 melhores, vou postar até aonde eu fiz, se alguem poder me ajuda agradeço. Program Pzim ; var n:integer; m:integer; a:integer; b:integer; tempo: array [1..100, 1..100] of real; total: array [1..100] of real; aux:real; chegada: array [1..3] of real; Begin read(n); read(m); chegada[1]:=100; chegada[3]:=100; chegada[2]:=100; for a:= 1 to n+1 do begin total[a]:= 0; end; {recebe o tempo das voltas} for a := 1 to n do begin for b:= 1 to m do begin read(tempo[a,b]); aux :=tempo[a,b]; total[a] := total[a] + aux; end; end; End. Ps: ele guarda o tempo total de todas as voltas no vetor total. exemplo de entrada e saida Entrada Saída 3 1 1 1 2 2 3 3 Entrada Saída 5 2 3 3 7 5 2 5 2 1 1 15 2 2 2 Compartilhar este post Link para o post Compartilhar em outros sites
Nuno Previato 0 Denunciar post Postado Março 29, 2011 achei uma resposta mais facil sem usar vetor e matriz, Program Corrida ; var n, m, a, b, p1, p2, p3, paux :integer; tempo,tempototal, tempo1, tempo2, tempo3, aux, tempoaux :real; Begin tempo1:= 1000000; tempo2:= 1000000; tempo3:= 1000000; read(n,m); while (n > 100) or (n < 3) do read(n); while (m> 100) or (n < 3) do read(m); for a:= 1 to n do begin for b:= 1 to m do begin read(tempo); tempototal := tempototal + tempo; end; end; writeln(p1); writeln(p2); writeln(p3); End. Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Março 29, 2011 n precisa de um vetor de tempo.. você soh precisa de um vetor de carros. nele você vai somando o tempo das voltas.. depois você ordena e ve quem tem os menores numeros. []s --- EDIT: ops você posto antes kk. Compartilhar este post Link para o post Compartilhar em outros sites