[code]import java.io.;
import java.util.;
public class TrabalhoVertebrados {
FicheiroDeTexto f=new FicheiroDeTexto();
public static void main (String args[])throws IOException {
Scanner myScanner=new Scanner(System.in);
FicheiroDeTexto f=new FicheiroDeTexto();
String nomeDoFicheiro=" “;//variavel que vai dar o nome ao fcheiro de texto
String escolher=” “;//ao longo do programa esta variavel irá ser precisa para fazer as perguntas ao utilizador
String servivo=” “;//variavel que vai guardar o nome do ser vivo(cao, gato, salmão, cobra)
int iniciarSwitch=0;
//System.out.println(”################################");
do{
System.out.println(“1 ? Adicionar Ser vivo”);
System.out.println(“2 ? Listar Ser Vivo//Opção que permite ver todos os animais que foram adicionados.”);
System.out.println(“3 ? Exit”);
iniciarSwitch=myScanner.nextInt();
switch (iniciarSwitch){
case 1:
System.out.println(“Insira o nome do Ser Vivo”);
servivo=myScanner.next();//quando o programa é executado inserimos um nome de um animal que vai ser guardado aqui.
System.out.println(servivo+ " é protegido por escamas? s/n");
escolher=myScanner.next();
if(“s”.equals(escolher)){//se a resposta de “é protegido por escamas” for “s” faz uma nova pergunta
System.out.println(servivo+ " tem respiração branquial, escamas de origem dérmica, membros em forma de barbatana? S/N");
escolher=myScanner.next();
if(“s”.equals(escolher)){ // se for “s” é um peixe
System.out.println(servivo+ " é um peixe");
escolher=null;
}
if(“n”.equals(escolher)){// se for “n” é um reptil
System.out.println(servivo+ " é um reptil ");
escolher=null;
}
}
if(“n”.equals(escolher)){// se a resposta de “é protegido por escamas” for “n” o programa vai por outro caminho para encontrar a solução
System.out.println(servivo+ " tem pele nua? s/n");
escolher=myScanner.next();
if(“s”.equals(escolher)){ // se “tem pele nua” é anfibio
System.out.println(servivo+ " é um anfibio");
escolher=null;
}
if(“n”.equals(escolher)){ // se escolher-mos que “n” pergunta novamente outra coisa
System.out.println(servivo+ " tem pelo revestido por pêlos ou penas? s/n");
escolher=myScanner.next();
}
if(“s”.equals(escolher)){//esta ultima pergunta, se for “s” é ave se for “n” é mamifero
System.out.println(servivo+ " tem o corpo revestido com penas, ou um par de asas? s/n");
escolher=myScanner.next();
}
}
if(“s”.equals(escolher)){
System.out.println(servivo+ " é uma ave");
escolher=null;
}
if(“n”.equals(escolher)){
System.out.println(servivo+ " é um mamifero");
escolher=null;
}
do{
System.out.println("Insira novamente o tipo de espécie do ser vivo? Opções possíveis: peixe | reptil | anfibio | ave | mamifero ");
nomeDoFicheiro=myScanner.next();
//para aparecer no ficheiro de texto o nome do ser vivo temos que introduzir novamente a especie do mesmo e o nome da especie vai ser o mesmo nome do ficheiro de texto
}while(nomeDoFicheiro.length()==0);
f.abreEscrita(nomeDoFicheiro);//variavel que vai dar o nome ao ficheiro de texto ( peixe, reptil, anfibio, ave, mamifero
String st=servivo;
f.escreverLinha(st);
f.fechaEscrita();
break;
case 2:
f.ListaPeixe(nomeDoFicheiro);
f.ListaReptil(nomeDoFicheiro);
f.ListaAnfibio(nomeDoFicheiro);
f.ListaAve(nomeDoFicheiro);
f.ListaMamifero(nomeDoFicheiro);
break;
case 3:
System.exit(0);
break;
}
}while(iniciarSwitch!=3);
System.out.println("######O programa foi finalizado!######");// o programa é finalizado, com esta mensagem
}
}//esta é uma classe
//segunda classe:
import java.io.*;
/*
- To change this template, choose Tools | Templates
- and open the template in the editor.
*/
/**
*
-
@author 10GPSI-3
/
import java.io.;
public class FicheiroDeTexto {
private BufferedReader fR;
private BufferedWriter fW;
public int num_dias=0;
//Método para abrir um ficheiro de leitura
//Recebe o nome do ficheiro
public void abreLeitura(String nomeDoFicheiro) throws IOException
{
fR=new BufferedReader(new FileReader(nomeDoFicheiro));
}
//Método para abrir um ficheiro para escrita
//Recebe o nome do ficheiro
public void abreEscrita(String nomeDoFicheiro) throws IOException
{
fW=new BufferedWriter(new FileWriter(nomeDoFicheiro, true));
}
//Método para ler uma linha do ficheiro
//Devolve a linha lida
public String lerLinha() throws IOException
{
return fR.readLine();
}
//Método para ler um número do ficheiro
//Devolve o número lido
public int lerNumeroInt() throws IOException
{
int result = 0;
String st = fR.readLine();
if (st !=null) {
result=Integer.parseInt(st);
} else {
result=-1;
}
return result;
}
//Método para ler um número real do ficheiro
//Devolve:
// result - o número lido
public double lerNumeroDouble () throws IOException {
double result = 0.0;
String st = fR.readLine();
if (st != null) {
result = Double.parseDouble (st);
} else result = -1;
return result;
}
//Método para escrever uma linha no ficheiro
//Recebe a linha a escrever
public void escreverLinha(String linha) throws IOException
{
fW.write(linha,0,linha.length());
fW.newLine();
}
//Método para escrever um número inteiro no ficheiro
//Recebe o número a escrever
public void escreverNumero(int num) throws IOException
{
String st =" ";
st = st.valueOf(num);
escreverLinha(st);
}
//Método para fechar um ficheiro aberto em modo de leitura
public void fechaLeitura() throws IOException
{
fR.close();
}
//Método para fechar um ficheiro aberto em modo escrita
public void fechaEscrita() throws IOException
{
fW.close();
}
public void ListaPeixe(String nomeDoFicheiro) throws IOException{
String linha;
FicheiroDeTexto ficheiro=new FicheiroDeTexto();
nomeDoFicheiro=“Peixe”;
System.out.println(nomeDoFicheiro+":");
ficheiro.abreLeitura(nomeDoFicheiro);
do{
linha=ficheiro.lerLinha();
if(linha!=null){
System.out.println(linha);
}
}while(linha!=null);
ficheiro.fechaLeitura();
}
public void ListaReptil(String nomeDoFicheiro) throws IOException{
String linha;
FicheiroDeTexto ficheiro=new FicheiroDeTexto();
nomeDoFicheiro=“Reptil”;
System.out.println(nomeDoFicheiro+":");
ficheiro.abreLeitura(nomeDoFicheiro);
do{
linha=ficheiro.lerLinha();
if(linha!=null){
System.out.println(linha);
}
}while(linha!=null);
ficheiro.fechaLeitura();
}
public void ListaAnfibio(String nomeDoFicheiro) throws IOException{
String linha;
FicheiroDeTexto ficheiro=new FicheiroDeTexto();
nomeDoFicheiro=“Anfibio”;
System.out.println(nomeDoFicheiro+":");
ficheiro.abreLeitura(nomeDoFicheiro);
do{
linha=ficheiro.lerLinha();
if(linha!=null){
System.out.println(linha);
}
}while(linha!=null);
ficheiro.fechaLeitura();
}
public void ListaAve(String nomeDoFicheiro) throws IOException{
String linha;
FicheiroDeTexto ficheiro=new FicheiroDeTexto();
nomeDoFicheiro=“Ave”;
System.out.println(nomeDoFicheiro+":");
ficheiro.abreLeitura(nomeDoFicheiro);
do{
linha=ficheiro.lerLinha();
if(linha!=null){
System.out.println(linha);
}
}while(linha!=null);
ficheiro.fechaLeitura();
}
public void ListaMamifero(String nomeDoFicheiro) throws IOException{
String linha;
FicheiroDeTexto ficheiro=new FicheiroDeTexto();
nomeDoFicheiro=“Mamifero”;
System.out.println(nomeDoFicheiro+":");
ficheiro.abreLeitura(nomeDoFicheiro);
do{
linha=ficheiro.lerLinha();
if(linha!=null){
System.out.println(linha);
}
}while(linha!=null);
ficheiro.fechaLeitura();
}
} [/code]