Zliczanie parzystych, nieparzystych, ASCII

Zliczanie parzystych, nieparzystych, ASCII

Program: zliczający z pliku kilka danych.

Zliczający z pliku „input.txt”:

  • ilość liczb parzystych,
  • ilość liczb nieparzystych,
  • ilość dwóch sąsiednich znaków w pliku których suma w kodzie ASCII daje 220.

Wyniki wyprowadzane są na ekran, a znaki spełniające trzeci punkt zapisywane są w pliku „output.txt”.

Wykorzystane dane wejściowe:

12
13
41
51
231
21
4
2
212
6
232
23
4
dx

Dane wyjściowe:

dx

Kompilator: Eclipse

Galeria:

Program w akcji.

Kod programu:

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class glowna {
	//Program zliczający wiersze z parzystą ilością znaków jak i nieparzystą
	//oraz sprawdzający dwa sąsiednie znaki czy suma kodów 
        //ASCII daje 220. (zliczanie)
	public static void main(String[] args) throws IOException {
		File pliko = new File("output.txt");
		pliko.createNewFile();
		FileReader plik=new FileReader("input.txt");
		BufferedReader bufor=new BufferedReader(plik);
		FileWriter plik2=new FileWriter("output.txt");
		BufferedWriter buforWy=new BufferedWriter(plik2);
		String linia;
		int parz=0,niep=0,ile=0;
		while((linia=bufor.readLine())!=null ){
			if(linia.length()%2==0)
				parz++;
			else
				niep++;
			for(int i=0;i<linia.length()-1;i++)
			{
				if(linia.charAt(i)+linia.charAt(i+1)==220)
					{
					ile++;
					buforWy.write(linia);
					buforWy.newLine();
					break;
					}
			}
		}
		System.out.print(parz+" "+niep+" "+ile);
		buforWy.close();
		bufor.close();
	}
}

Słowniczek pojęć:

7-bitowy kod przyporządkowujący liczby z zakresu 0-127: literom (alfabetu angielskiego), cyfrom, znakom przestankowym i innym symbolom oraz poleceniom sterującym. Na przykład litera „a” jest kodowana liczbą 97, a znak spacji jest kodowany liczbą 32.