Boas pessoal
Estou a ajudar uma amiga minha com um prog q ela tem para fazer para a disciplina de prog java I que consiste em pedir o numero de disciplinas ao utilizador, o nome das mesmas, as notas e de seguida devolver a media, a nota mais alta e a mais baixa, até aí consegui fazer tudo bem
Agora a minha duvida e o seguinte....e possivel gravar o que e devolvido na consola directamente para um ficheiro ou isso tera de ser feito ao longo do codigo? eu conheço mais ou menos o metodo printstream mas nao o consegui aplicar....
se alguem me conseguir ajudar agradecia
cumps
Estou a ajudar uma amiga minha com um prog q ela tem para fazer para a disciplina de prog java I que consiste em pedir o numero de disciplinas ao utilizador, o nome das mesmas, as notas e de seguida devolver a media, a nota mais alta e a mais baixa, até aí consegui fazer tudo bem
Código:
import java.io.*;
import java.lang.String;
public class MTP3 {
public static void main(String[] args) throws IOException {
int numeroDisciplinas = 0;
int[] notas = null;
float somadisciplinas = 0f;
float mediadisciplinas = 0f;
String []disciplinas = null;
int notaDisciplinas = 0;
BufferedReader teclado = new BufferedReader(
new InputStreamReader(System.in));
System.out.print("Número de disciplinas: ");
try {
numeroDisciplinas = Integer.parseInt(teclado.readLine());
}
catch (NumberFormatException nfe) {
System.err.println("Por favor, introduza "
+ "números inteiros!");
System.exit(-1);
}
catch (IOException ioe) {
System.err.println("Aconteceu um erro ao ler "
+ "do teclado!");
System.exit(-2);
}
catch (Exception e) {
System.err.println("Aconteceu um erro estranho!");
e.printStackTrace();
System.exit(-3);
}
disciplinas = new String[numeroDisciplinas];
System.out.println("\nAs disciplinas sao: ");
for (int i = 0; i < disciplinas.length; i++) {
System.out.println("");
try {
disciplinas[i] = teclado.readLine();
}
catch (IOException ioe) {
System.err.println("Aconteceu um erro ao ler "
+ "do teclado!");
System.exit(-1);
}
catch (Exception e) {
System.err.println("Aconteceu um erro estranho!");
e.printStackTrace();
System.exit(-2);
}
}
notas = new int[numeroDisciplinas];
System.out.println("Notas das Discplinas");
for (int i = 0; i < notas.length; i++) {
System.out.print("Nota de " + disciplinas[i] + ": ");
try {
notas[i] = Integer.parseInt(teclado.readLine());
}
catch (NumberFormatException nfe) {
System.err.println("Por favor, introduza "
+ "nœmeros inteiros!");
System.exit(-1);
}
catch (IOException ioe) {
System.err.println("Aconteceu um erro ao ler "
+ "do teclado!");
System.exit(-2);
}
catch (Exception e) {
System.err.println("Aconteceu um erro estranho!");
e.printStackTrace();
System.exit(-3);
}
}
for (int i = 0; i < notas.length; i++) {
somadisciplinas += notas[i];
}
if (notas.length > 0) {
mediadisciplinas = somadisciplinas / notas.length;
System.out.println("A média das notas das disciplinas e " + mediadisciplinas + ".");
}
int notaDisciplinaPior = 0;
try {
notaDisciplinaPior = notas[DisciplinaPior(notas)];
}
catch (ArrayIndexOutOfBoundsException aioobe) {
System.err.println("A turma tem de ter pelo menos uma disciplina!");
}
catch (Exception e) {
System.err.println("Erro inesperado!");
e.printStackTrace();
}
System.out.println("A disciplina a que tem nota pior é " + notaDisciplinaPior + ".");
int notaDisciplinaMelhor = 0;
try {
notaDisciplinaPior = notas[DisciplinaMelhor(notas)];
}
catch (ArrayIndexOutOfBoundsException aioobe) {
System.err.println("A turma tem de ter pelo menos uma disciplina!");
}
catch (Exception e) {
System.err.println("Erro inesperado!");
e.printStackTrace();
}
System.out.println("A disciplina a que tem nota melhor é " + notaDisciplinaMelhor + ".");
}
public static int DisciplinaMelhor(int[] notas)throws ArrayIndexOutOfBoundsException {
int disciplinaMelhor = 0;
for (int i = 1; i < notas.length; i++) {
if (notas[i] < disciplinaMelhor) {
disciplinaMelhor = i;
}
}
return disciplinaMelhor;
}
public static int DisciplinaPior(int[] notas)throws ArrayIndexOutOfBoundsException {
int disciplinaPior = 0;
for (int i = 1; i < notas.length; i++) {
if (notas[i] < disciplinaPior) {
disciplinaPior = i;
}
}
return disciplinaPior;
}
}
Agora a minha duvida e o seguinte....e possivel gravar o que e devolvido na consola directamente para um ficheiro ou isso tera de ser feito ao longo do codigo? eu conheço mais ou menos o metodo printstream mas nao o consegui aplicar....
se alguem me conseguir ajudar agradecia
cumps