Lista de Exercícios

Boa noite gente, bom, como a faculdade está em greve mas mesmo assim ainda vou ter provas (aar maravilha né…) estou tentando fazer a penúltima lista de exercícios e não estou conseguindo de jeitos nennhum. A lista tem 12 exercícios e o 11 e o número 12 me pegaram de jeito, justamente as partes que não vimos em aula… o 11 é:
Em um projeto contendo a classe Produto definida nos exercícios anteriores, faça um
programa que a partir de um objeto Produto instanciado pelo programa, imprima o nome
dos atributos e das operações definidas na classe Produto.

Acho que nesse exercício eu deveria usar reflections mas não tenho muita noção então nem tentei fazer, se alguém tiver uma dica.

O 12 é:
Faça um programa que leia um arquivo (TEMPOS.TXT) com os tempos (em segundos)
de cada piloto em cada volta de uma corrida e imprima em um arquivo texto
(RESULTADO.TXT) com os seguintes resultados:
a) o melhor tempo da prova, a volta em que ocorreu e quem fez esse tempo.
b) para cada piloto, o seu melhor tempo e a volta em que ocorreu.
c) para cada piloto, o seu pior tempo e a volta em que ocorreu.
d) para cada piloto, o tempo médio por volta.
Formato do Arquivo:
#PILOTOS: 3
#VOLTAS: 5
FELIPE MASSA
93.503
93.705
94.805
93.430
93.520
LEWIS HAMILTON
93.403
93.805
93.935
93.435
93.330
JENSON BUTTON
93.333
93.735
94.325
93.230
93.320
A primeira linha corresponde ao número de pilotos, a segunda linha o número de voltas
cronometradas para cada piloto e a seguir os tempos para cada piloto, cada linha
corresponde ao tempo em uma volta (iniciando pela volta 1).

Esse eu ainda tentei fazer alguma coisa:

[code]import java.io.FileReader;
import java.util.PropertyResourceBundle;

public class Exerc12 {

public static void main(String[] args) throws Exception{
    double [] tempP1 = new double[5];
    double [] tempP2 = new double[5];
    double [] tempP3 = new double[5];
    String [] conver = new String [5];
    
    String converOut;
    String P1, P2, P3;
    int numVoltas = 0;
    int qtPilotos = 0;
    
    PropertyResourceBundle properties = new PropertyResourceBundle(new FileReader("tempos.txt"));
    
    converOut = properties.getString("#PILOTOS:");
    System.out.printf("%s\n", converOut);
    
    
 

}

}[/code]

Acho que só aí já deve dar pra ver o quanto eu estou perdido hehehe…a idéia era ler como string os dados e converter em int e double para cada caso, já lí o tutorial do site sobre manipulação de arquivos mas não me ajudou muito, talvez porque eu não saiba mesmo. Comecei tentando ler o número de pilotos com properties mas deu erro, com certeza porque não é assim que se faz uheuheuhe…

Se alguém puder dar qualquer ajuda em qualquer um dos dois, já estou agradecido :slight_smile:
Aaah sim, fora isso coloquei aqui porque não sei bem se é básico ou avançado, era isso gente, brigadão.

Talvez isso aqui te ajude no exercício 11

http://www.guj.com.br/articles/10

E isso no 12:


Muito obrigado digaoneves e viniGodoy pela ajuda, agora assim, a 11 eu consegui fazer finalmente, mas a 12 ainda estou encontrando muitas dificuldades. Eu sei que o código tah tenebroso, se é que se pode chamar de código mas, eu estava tentando explorar mais do que fazer, de qualquer maneira não consegui chegar a respostas para separar o arquivo em int, String e double…além disso outra coisa me incomoda, até consegui salvar tudo numa lista de String e tudo mais mas, como eu conseguiria distinguir os nomes dos pilotos ? Se alguém puder dar alguma ajuda. Aí vai o código tenebroso de que eu falei :frowning: uheuehehe :

[code]import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Scanner;

public class Exerc12 {

public static void main(String[] args) throws Exception{
   
  List <String> BlocoNotas = new ArrayList <String>();

  
  try
  {
      File file = new File("tempos.txt");
      Scanner scanner = new Scanner(file);

// while(scanner.hasNextLine())
// {
// String linha = scanner.nextLine();
//
// if(linha.startsWith("#"))
// {
// numPilot = scanner.nextInt();
// break;
// }
// }
//
// while(scanner.hasNextLine())
// {
// String linha = scanner.nextLine();
//
// if(linha.startsWith("#"))
// numVoltas = scanner.nextInt();
// }
//
// while(scanner.hasNext())
// {
// BlocoNotas.
// }

      while(scanner.hasNext())
      {
          String linha = scanner.next();
          BlocoNotas.add(linha);
      }
      
      if(scanner != null)
          scanner.close();
  }
  catch(IOException e)
  {
      System.out.println(e.getMessage());
  }
 
 
Iterator<String> iterator = BlocoNotas.iterator();

int numPilot = 0;
int numVoltas = 0;

while(iterator.hasNext())
{
    if(iterator.getClass() == Integer.class)
        

}

}

}[/code]

Acabei de tentar mudar alguma coisa nesse “código” mas só pioro uheuheuheh…