Gyakorlati alapok II.

Prímszámok külön állományba


Pálinkó Tímea tanítványom házi feladata a Filekezelés című fejezetcsomagban leírtak figyelembevételével a következő volt:

Tímea a meglévő rutinja alapján nem sokat vacakolt az algoritmussal és hamar megírta a megoldást. Figyeljük meg a dinamikusan növekvő ArrayList tömb okos használatát (Tömblista (arraylist) című fejezet), amely arra (is) jó, hogy előre nem látható mennyiségű adatot tárolhassunk benne, hiszen a külön metódusos követelmény miatt Tímeának pontosan erre az opcióra volt szüksége.

 

Nézzük meg a futtatható Java-kódot:

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 


 

import java.math.*;
import java.io.*;
import java.util.ArrayList;

public class Main {

public static ArrayList<String> prime(){
    boolean isValidPrime = true;
    ArrayList<String> tomblist = new ArrayList<>();
    for(int i = 2; i < 100; i++){
        isValidPrime = true;
        for (int j = 2; j <= Math.sqrt(i); j++){
            if(i % j == 0){
                isValidPrime = false;
                break;
            }
        }
        if(isValidPrime == true){
            String szam = Integer.toString(i);
            tomblist.add("\n" + szam);
        }
    }
    return tomblist;
}

public static void textFile() throws IOException{
    PrintWriter writer = new PrintWriter(new FileWriter("C:\\Primenumbers.txt"));
    writer.println(prime());
    File file = new File("C:\\Primenumbers.txt");
    if(file.exists()) {
        System.out.println("A file létezik.");
    } else {
        System.out.println("A file nem létezik.");
    }
    writer.close();
}

public static void main(String[] args) throws IOException {
    prime();
    textFile();
    }
}

Végeredmény:

Primenumbers nevű TXT file a C: meghajtón, benne a 0 és 100 közötti prímszámokkal