logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Java co poprawić w programie, żeby dobrze działał?

komarwie 03 Gru 2007 12:17 1083 1
REKLAMA
  • #1 4546580
    komarwie
    Poziom 2  
    Posty: 3
    Prosze o pomoc w poprawie programu. Program działa, ale nie dokładnie, tzn. pokazuje oprócz dobrego wyniku, zera, których ma nie pokazywać.


    import java.io.*;
    public class pliki
    {
    	public static void main(String abc[])
    	{String tekst="";
    	int licznik=0; 
    	int licznik1=0;
    	int pomocnicza=0;
    	String tab1[]=new String[100];
    	int tab[]=new int[100];
    	{System.out.println("Pokaz liczby 3 cyfrowe, z ktorych 2 parzysta");}
    	try{ //tworzenie strumienia czytajacegoz klawiatury 
    	BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
    	String nazwa=in.readLine();
    	//tworzenie strumienia czytajacego z pliku
    	//DataInputStream dis=new DataInputStream(new FileInputStream(nazwa1));
    	BufferedReader dis=new BufferedReader(new InputStreamReader(new FileInputStream(nazwa)));
    	do{tekst=dis.readLine(); if(tekst==null) break; tab1[licznik]=tekst; licznik++; System.out.println(tekst);}
    	while(true);
    	{System.out.println("Wczytano "+licznik+" liczb");}
    //algorytm obliczen
    
    
    
    for(int i=0;i<licznik;i++)
    {pomocnicza=Integer.parseInt(tab1[i]);
    if(pomocnicza>99 && pomocnicza<999){
    	
    int x=pomocnicza/100;
    int x1=pomocnicza%100;
    int y=pomocnicza/10;
    int y1=pomocnicza%10;
    
    if(y%2==0)
    
    	
    tab[licznik1]=pomocnicza; licznik1++;}
    }
    
    //koniec algorytmu obliczen wyniku tabeli tab (ilosc wynikow wzmiennej licznik1)
    {System.out.println("Prosze podac nazwe pliku z wynikami.");}
    nazwa=in.readLine();
    //tworzenie strumienia zapisujacego do pliku
    
    
    
    DataOutputStream dos=new DataOutputStream(new FileOutputStream(nazwa));
    for (int i=0;i<licznik1;i++)
    { System.out.println(tab[i]);
    dos.writeChars(String.valueOf(tab[i])+'\n');}
    System.out.println("Danych wynikowych: "+licznik1);
    //obsluga wyjatku
    } catch(IOException e){System.out.println("Pliku nie znaleziono.");}
    } // koniec main
    
    } // koniec definicji klasy	


    Dodano po 1 [godziny] 31 [minuty]:

    wygląda na to że już sobie poradziłem
    import java.io.*;
    public class v
    {
    	public static void main(String abc[])
    	{String tekst="";
    	int licznik=0; 
    	int licznik1=0;
    	int pomocnicza=0;
    	String tab1[]=new String[100];
    	int tab[]=new int[100];
    	{System.out.println("Pokaz liczby 3 cyfrowe, z ktorych 2 parzysta");}
    	try{ //tworzenie strumienia czytajacegoz klawiatury 
    	BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
    	String nazwa=in.readLine();
    	//tworzenie strumienia czytajacego z pliku
    	//DataInputStream dis=new DataInputStream(new FileInputStream(nazwa1));
    	BufferedReader dis=new BufferedReader(new InputStreamReader(new FileInputStream(nazwa)));
    	do{tekst=dis.readLine(); if(tekst==null) break; tab1[licznik]=tekst; licznik++; System.out.println(tekst);}
    	while(true);
    	{System.out.println("Wczytano "+licznik+" liczb");}
    //algorytm obliczen
    
    
    
    for(int i=0;i<licznik;i++)
    {pomocnicza=Integer.parseInt(tab1[i]);
    
    int x=pomocnicza/10;
    int x1=pomocnicza%10;
    
    if(pomocnicza>99 && pomocnicza<999)
    
    if(x%2==0)
    
    {tab[licznik1]=pomocnicza; licznik1++;}
    }
    
    //koniec algorytmu obliczen wyniku tabeli tab (ilosc wynikow wzmiennej licznik1)
    {System.out.println("Prosze podac nazwe pliku z wynikami.");}
    nazwa=in.readLine();
    //tworzenie strumienia zapisujacego do pliku
    
    
    
    DataOutputStream dos=new DataOutputStream(new FileOutputStream(nazwa));
    for (int i=0;i<licznik1;i++)
    { System.out.println(tab[i]);
    dos.writeChars(String.valueOf(tab[i])+'\n');}
    System.out.println("Danych wynikowych: "+licznik1);
    //obsluga wyjatku
    } catch(IOException e){System.out.println("Pliku nie znaleziono.");}
    } // koniec main
    
    } // koniec definicji klasy	
  • REKLAMA
  • #2 4546845
    piotrkopec
    Poziom 17  
    Posty: 189
    Pomógł: 24
    Ocena: 2
    Dobrze że sobie poradziłeś ale następnym razem opisz dokładnie problem( co miało TO robić i jakie są dane wejściowe) i spormatuj kod( wcięcia!). Albo sam przenieś temat do kosza ;)
REKLAMA