Java練習コード 数式
奇数
2n+1
2n-1
(n % 2 == 1)
_______
偶数
2n
(n % 2 == 0)
Java練習コード CSVファイルから抽出したデータをCSVに保存
Java練習コード CSVファイルから抽出したデータをCSVに保存
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.ArrayList; import java.util.List; public class Main { public static void main(String[] args){ CSVReader(); } public static void CSVReader() { String csvFile = "c03.csv"; String outputFile = "write.csv"; String line; String delimiter = ","; List<String[]> populationDataList = new ArrayList<>(); try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) { // ヘッダー行を読み飛ばす br.readLine(); // 1行ずつ読み込む while ((line = br.readLine()) != null) { String[] data = line.split(delimiter); // 各都道府県の「人口総数」のデータを抽出してリストに追加する if (data.length > 1 && data[2].equals("総数")) { populationDataList.add(data); } } // 抽出したデータを表示する for (String[] data : populationDataList) { System.out.print("年齢5歳階級:" + data[2]); System.out.print(" 元号:" + data[3]); System.out.print(" 人口(総):" + data[6]); System.out.print(" 人口(男):" + data[7]); System.out.println(); } // データをファイルに保存する saveDataToFile(populationDataList, outputFile); } catch (IOException e) { e.printStackTrace(); } } public static void saveDataToFile(List<String[]> dataList, String outputFile) { String delimiter = ","; boolean append = false; // 追記モードを無効にする try (BufferedWriter bw = new BufferedWriter(new FileWriter(outputFile, append))) { // ヘッダー行を書き込む bw.write("都道府県コード,都道府県名,年齢5歳階級,元号,和暦(年),西暦(年),人口(総数),人口(男),人口(女)"); bw.newLine(); // データ行を書き込む for (String[] data : dataList) { bw.write(String.join(delimiter, data)); bw.newLine(); } System.out.println("データの保存が完了しました。"); } catch (IOException e) { e.printStackTrace(); } } }
Java練習コード ピラミッド
Java練習コード ピラミッド成形その1
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("ピラミッドの最大桁数を入力してください(奇数): "); int n = scanner.nextInt(); // 入力された数字が偶数の場合は+1 if (n % 2 == 0) { n++; } for (int i = 1; i <= n; i += 2) { for (int j = 0; j < (n - i) / 2; j++) { System.out.print(" "); } for (int j = 0; j < i; j++) { System.out.print(j < i / 2 + 1 ? j + 1 : i - j); } for (int j = 0; j < (n - i) / 2; j++) { System.out.print(" "); } System.out.println(); } } }
Java練習コード 3の倍数と5の倍数の表示
Java 倍数の表示その1
public class Main { public static void main(String[] args) { fizzBuzz(100); } public static void fizzBuzz(int n) { for (int i = 1; i <= n; i++) { if (i % 3 == 0 && i % 5 == 0) { System.out.println(i + "FizzBuzz"); } else if (i % 3 == 0) { System.out.println(i + "Fizz"); } else if (i % 5 == 0) { System.out.println(i + "Buzz"); } } } }
Java練習コード 素数であるかどうかチェック
Java 素数その1
試し割り法
public class Main { public static void main(String[] args) { int primeNumber = 100; // 素数の数 int count = 1; // 素数のカウント int num = 0; // 数 while (count <= primeNumber) { if (isPrimeNumber(num)) { System.out.println(count + " " +num); count++; } num++; } } //引数で渡された数が素数であるかどうかを判定するメソッド public static boolean isPrimeNumber(int num) { if (num < 2) { return false; } for (int i = 2; i <= num / 2; i++) { if (num % i == 0) { return false; } } return true; } }
エラトステネスのふるい
import java.util.Arrays; import java.util.ArrayList; public class Main { public static void main(String[] args) { ArrayList<Integer> primes = sieveOfEratosthenes(100); for (int prime : primes) { System.out.println(prime); // for(int i = 0; i < primes.size(); i++){ // System.out.println(primes.get(i); } } public static ArrayList<Integer> sieveOfEratosthenes(int n) { boolean[] isPrime = new boolean[n + 1]; Arrays.fill(isPrime, true); isPrime[0] = false; isPrime[1] = false; for (int i = 2; i * i <= n; i++) { if (isPrime[i]) { for (int j = i * i; j <= n; j += i) { isPrime[j] = false; } } } ArrayList<Integer> primes = new ArrayList<>(); for (int i = 0; i <= n; i++) { if (isPrime[i]) { primes.add(i); } } return primes; } }