#1 2011-02-10 14:11:11

michal8m

Administrator

Zarejestrowany: 2011-02-03
Posty: 45
Punktów :   

15

Użytkownik podaje plik   ( jeden wiersz :Imie_Nazwisko_ocena(int)), napisz program który oblicza ile osób otrzymało ocene 2.






import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
import java.io.IOException;
import java.io.RandomAccessFile;

public class kopa {


    public static void main(String[] args) throws IOException  {
    boolean trwanie= true;
        do{ kopa qq = new kopa();
            Scanner s = new Scanner(System.in);
    System.out.println("MENU:");
    System.out.println("1.Zapis osób:");
    System.out.println("2.Liczenie dop..");
    System.out.println("3.Koniec");
        int c = s.nextInt();
    switch(c){
        case 1:    System.out.println("Podaj nazwe Pliku");
                  s = new Scanner(System.in);
                  String np = s.nextLine();
                  qq.zapis(np);break;

        case 2:   System.out.println("Podaj nazwe Pliku");
                  s = new Scanner(System.in);
                  String nk = s.nextLine();
                  System.out.println("Liczba dop to: "+qq.czytanie(nk));
                  break;

        case 3:trwanie = false;break;

        default:System.out.println("Zły wybór...");break;
    }
    }while(trwanie);
}

    void zapis(String nazwaplk) throws FileNotFoundException, IOException{
File f = new File(nazwaplk);
if(f.exists())f.delete();
f.createNewFile();
RandomAccessFile r = new RandomAccessFile( nazwaplk,"rw");
Scanner s = new Scanner(System.in);
String wiersz ;
System.out.println("Podaj ile osób chcesz wprowadzić...");
int iloosb = s.nextInt();
for(int i =0 ; i<iloosb;i++){
wiersz = null;
    System.out.println("Podaj imię osoby ");
s = new Scanner(System.in);
String imie = s.nextLine();
System.out.println("Podaj nazwisko osoby");
s = new Scanner(System.in);
String nazwisko = s.nextLine();
System.out.println("Podaj ocene osoby");
s = new Scanner(System.in);
Integer ocena = s.nextInt();
wiersz = imie;
String concat = wiersz.concat("_").concat(nazwisko).concat("_").concat(ocena.toString());
r.writeUTF(concat);
    }}
int czytanie(String nazwaplk) throws IOException ,FileNotFoundException {
RandomAccessFile r = null;
r = new RandomAccessFile( nazwaplk,"rw");
int liczbadop = 0;
long poz = 0;
long dł =r.length();
r.seek(0);
while(poz<dł){
String wiersz = r.readUTF();
int mom = wiersz.lastIndexOf('_');
String teks = wiersz.substring(mom+1, wiersz.length());
int licztym = Integer.parseInt(teks);
if(licztym == 2 ) liczbadop++;
poz = r.getFilePointer();
}
return liczbadop;
}
}

Ostatnio edytowany przez michal8m (2011-02-12 10:11:29)

Offline

 

Stopka forum

RSS
Powered by PunBB
© Copyright 2002–2008 PunBB
Polityka cookies - Wersja Lo-Fi


Darmowe Forum | Ciekawe Fora | Darmowe Fora
Kapitänshaus Kittler - Die Große Freiheit - DHH Hotely Garz-Usedom taśmy led producent kompensatory mocy biernej