A feladat leírását, melynek a megoldását közzéteszem innen töltheted le.
/** * * @author https://webotlet.hu */ package webotlet_05okt_kodol_java; import java.io.IOException; import java.io.RandomAccessFile; import java.util.Scanner; public class Webotlet_05okt_kodol_java { public static void main(String[] args) { System.out.println("1. feladat"); // ekezetes beolvasas Scanner sc = new Scanner(System.in, "iso-8859-2"); System.out.println("Adj meg egy szoveget:"); String nyilt = sc.nextLine(); System.out.println("2. feladat"); // nagybetus nyilt = nyilt.toUpperCase(); // ekezetes cserek String[] mit = new String[] {"Á","É","Í","Ó","Ö","Ő","Ú","Ü","Ű"," "}; String[] mire = new String[] {"A","E","I","O","O","O","U","U","U", ""}; for( int i = 0; i < mit.length; i++ ) { nyilt = nyilt.replaceAll(mit[i], mire[i]); } // nem betuk torlese char[] kar = nyilt.toCharArray(); nyilt = ""; for( int i = 0; i < kar.length; i++ ) { if( Character.isAlphabetic(kar[i]) ) { nyilt = nyilt.concat(Character.toString(kar[i])); } } System.out.println("3. feladat"); System.out.println(nyilt); System.out.println("4. feladat"); System.out.println("Adj meg egy legfeljebb 5 karakteres kulcssszot:"); String k = sc.nextLine().toUpperCase(); System.out.println("5. feladat"); String kszoveg = ""; int hanyszor = nyilt.length() / k.length(); for( int i = 0; i < hanyszor; i++ ) { kszoveg = kszoveg.concat(k); } if( kszoveg.length() < nyilt.length() ) { kszoveg = kszoveg.concat(k.substring(0, nyilt.length() - kszoveg.length() ) ); } System.out.println(kszoveg); System.out.println("6. feladat"); String[] kodtabla = null; try { RandomAccessFile raf = new RandomAccessFile("vtabla.dat", "r"); String sor; int db = 0; for( sor = raf.readLine(); sor != null; sor = raf.readLine() ) { db++; } kodtabla = new String[db]; raf.seek(0); int hely = 0; for( sor = raf.readLine(); sor != null; sor = raf.readLine() ) { kodtabla[hely] = sor; hely++; } raf.close(); } catch( IOException e ) { System.out.println("HIBA"); } String kodolt = ""; for( int i = 0; i < nyilt.length(); i++ ) { int sor = 0; int oszlop = 0; // megkeressuk a tabla elso oszlopaban -> .charAt(0) // a nyilt szoveg aktualis karakteret for( int j = 0; j < kodtabla.length; j++ ) { if( kodtabla[j].charAt(0) == nyilt.charAt(i) ) { sor = j; break; } } // megkeressuk a tabla elso soraban -> kodtabla[0] // a nyilt szoveg aktualis karakteret for( int j = 0; j < kodtabla[0].length(); j++ ) { if( kodtabla[0].charAt(j) == kszoveg.charAt(i) ) { oszlop = j; break; } } kodolt = kodolt.concat(kodtabla[sor].charAt(oszlop)+""); } System.out.println("7. feladat"); System.out.println(kodolt); try { RandomAccessFile out = new RandomAccessFile("kodolt.dat", "rw"); out.setLength(0); out.writeBytes(kodolt + "\n"); out.close(); } catch( IOException e ) { System.out.println("HIBA"); } } }
Ha hibát találsz benne, kérlek jelezd!