Program: wyszukujący palindromy w pliku.
Dane pobierane są z pliku „input.txt” oraz zapisywane do pliku „output.txt”.
Wykorzystane dane wejściowe w tym przykładzie:
ala
dasdsadsa
kajak
Dane wyjściowe:
ala
kajak
Kompilator: Eclipse
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 sprawdzający czy dane słowo jest palindromem
//i zapisujący w osobnym pliku.
public static boolean czy(String x)
{
for(int i=0,j=x.length()-1;i<x.length()/2;i++,j--){
if(x.charAt(i)!=x.charAt(j))
{return false;}
}
return true;
}
public static void main(String[] args) throws IOException {
int y=0;
try{
File pliko = new File("output.txt");
pliko.createNewFile();
FileReader plik= new FileReader("input.txt");
BufferedReader buforPlik= new BufferedReader(plik);
FileWriter plik2=new FileWriter("output.txt");
BufferedWriter buforPlikW= new BufferedWriter(plik2);
String linia;
while((linia=buforPlik.readLine())!=null){
if(czy(linia)==true)
{
buforPlikW.write(linia);
buforPlikW.newLine();
y++;
}
}
System.out.print("Skopiowal "+y);
buforPlik.close(); buforPlikW.close();
}catch(IOException ex){
System.out.print("Blad"+ex);
}
}
} Słowniczek pojęć:
Wyrażenie brzmiące tak samo czytane od lewej do prawej i od prawej do lewej. Przykładem palindromu jest: Kobyła ma mały bok. Współcześnie palindromy pełnią funkcję gry słownej. Prawdopodobnie tak było również i w przeszłości, choć pewne znaleziska sugerują, że palindromy mogły też mieć znaczenie magiczne.