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!
