diff --git a/H071201036/PRAKTIKUM-3/Nomor1.java b/H071201036/PRAKTIKUM-3/Nomor1.java new file mode 100644 index 0000000..3af7f77 --- /dev/null +++ b/H071201036/PRAKTIKUM-3/Nomor1.java @@ -0,0 +1,40 @@ +import java.util.Scanner; + +public class Nomor1 { + public static void main(String[] args) { + try { + Scanner input = new Scanner(System.in); + System.out.print("Masukan nilai awal "); + int x = input.nextInt(); + System.out.print("Masukan nilai akhir "); + int y = input.nextInt(); + int a = 0, b = 0; + + if (x 0) { + System.out.println(i + " genap positif"); + } else if (i % 2 != 0 && i < 0) { + System.out.println(i + " ganjil negatif"); + } else if (i % 2 != 0 && i > 0) { + System.out.println(i + " ganjil positif"); + } else { + System.out.println(i + " nol"); + } + } + input.close(); + } catch (Exception n) { + System.out.print("Data harus bilangan bulat"); + } + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-3/Nomor2.java b/H071201036/PRAKTIKUM-3/Nomor2.java new file mode 100644 index 0000000..5f0f60d --- /dev/null +++ b/H071201036/PRAKTIKUM-3/Nomor2.java @@ -0,0 +1,18 @@ +import java.util.Scanner; + +public class Nomor2 { + public static void main(String[] args) { + Scanner inputUser = new Scanner(System.in); + int x = inputUser.nextInt(); + int y = inputUser.nextInt(); + + for (int i = 1; i <= y; i++) { + if (i % x == 0) { + System.out.println(i + " "); + } else { + System.out.print(i + " "); + } + } + inputUser.close(); + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-3/Nomor3.java b/H071201036/PRAKTIKUM-3/Nomor3.java new file mode 100644 index 0000000..1369f1e --- /dev/null +++ b/H071201036/PRAKTIKUM-3/Nomor3.java @@ -0,0 +1,24 @@ +import java.util.Scanner; + +public class Nomor3 { + public static void main(String[] args) { + try { + Scanner input = new Scanner(System.in); + int n = input.nextInt(); + + int a = 0; + int b = 1; + System.out.print(a + " " + b); + + for (int i = 2; i < n; i++) { + int next = a + b; + System.out.print(" " + next); + a = b; + b = next; + } + input.close(); + } catch (Exception e) { + System.out.print("Data harus bilangan bulat"); + } + } +} diff --git a/H071201036/PRAKTIKUM-3/Nomor4.java b/H071201036/PRAKTIKUM-3/Nomor4.java new file mode 100644 index 0000000..7f1f842 --- /dev/null +++ b/H071201036/PRAKTIKUM-3/Nomor4.java @@ -0,0 +1,52 @@ +import java.util.Scanner; + +public class Nomor4 { + public static void main(String[] args) { + try { + Scanner input = new Scanner(System.in); + int seribu = 0, duaRibu = 0, limaRibu = 0, sepuluhRibu = 0, duaPuluhRibu = 0, limaPuluhRibu = 0, seratusRibu = 0; + int hargaBarang = input.nextInt(); + int nilaiUang = input.nextInt(); + + if (hargaBarang <= nilaiUang) { + int kembalian = nilaiUang - hargaBarang; + while (kembalian > 0) { + if (kembalian - 100000 >= 0) { + kembalian -= 100000; + seratusRibu++; + } else if (kembalian - 50000 >= 0) { + kembalian -= 50000; + limaPuluhRibu++; + } else if (kembalian - 20000 >= 0) { + kembalian -= 20000; + duaPuluhRibu++; + } else if (kembalian - 10000 >= 0) { + kembalian -= 10000; + sepuluhRibu++; + } else if (kembalian - 5000 >= 0) { + kembalian -= 5000; + limaRibu++; + } else if (kembalian - 2000 >= 0) { + kembalian -= 2000; + duaRibu++; + } else if (kembalian - 1000 >= 0) { + kembalian -= 1000; + seribu++; + } + } + System.out.println(seratusRibu + " uang Rp.100.000"); + System.out.println(limaPuluhRibu + " uang Rp.50.000"); + System.out.println(duaPuluhRibu + " uang Rp.20.000"); + System.out.println(sepuluhRibu + " uang Rp.10.000"); + System.out.println(limaRibu + " uang Rp.5.000"); + System.out.println(duaRibu + " uang Rp.2.000"); + System.out.println(seribu + " uang Rp.1.000"); + } else { + System.out.print("Maaf uang Anda tidak cukup !!"); + } + input.close(); + } catch (Exception n) { + System.out.print("Input data tidak valid"); + } + } +} diff --git a/H071201036/PRAKTIKUM-3/Nomor5.java b/H071201036/PRAKTIKUM-3/Nomor5.java new file mode 100644 index 0000000..814f534 --- /dev/null +++ b/H071201036/PRAKTIKUM-3/Nomor5.java @@ -0,0 +1,36 @@ +import java.util.Scanner; + +public class Nomor5 { + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + + while (input.hasNext()) { + float M = input.nextFloat(); + if (0 <= M && M < 360) { + int sec = (int) (M * 86400) / 360; + int HH = (sec / 3600) + 6; + int MM = (sec % 3600) / 60; + int SS = (sec % 3600) % 60; + + if (M >= 0 && M < 90) { // jam 06.00-11.59 + System.out.println("Selamat Pagi"); + } else if (M >= 90 && M < 150) {// jam 12.00-15.59 + System.out.println("Selamat Siang"); + } else if (M >= 150 && M < 195) {// jam 16.00-18.59 + System.out.println("Selamat Sore"); + } else if (M >= 195 && M < 270) {// jam 19.00-23.59 + System.out.println("Selamat Malam"); + } else if (M >= 270 && M < 360) {// jam 00.00-05.59 + System.out.println("Dini Hari"); + } + if (HH >= 24) { + int hour = HH - 24; + System.out.printf("%02d:%02d:%02d \n", hour, MM, SS); + } else { + System.out.printf("%02d:%02d:%02d \n", HH, MM, SS); + } + } + } + input.close(); + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-4/Nomor1.java b/H071201036/PRAKTIKUM-4/Nomor1.java new file mode 100644 index 0000000..226e4d7 --- /dev/null +++ b/H071201036/PRAKTIKUM-4/Nomor1.java @@ -0,0 +1,35 @@ +import java.util.Scanner; + +public class Nomor1 { + public static void main(String[] args) { + Scanner obj = new Scanner(System.in); + int n = obj.nextInt(); + int[] x = new int[n]; + + for (int i = 0; i < n; i++) { + x[i] = obj.nextInt(); + } + obj.close(); + + for (int i = 0; i < n; i++) { + for (int j = i + 1; j < n; j++) { + + int a = Math.min(x[i], x[j]); + boolean isCoprime = true; + + for (int k = a; k > 1; k--) { + + if ((x[i] % k == 0) && (x[j] % k == 0)) { + + isCoprime = false; + break; + + } + } + if (isCoprime) { + System.out.println(x[i] + " " + x[j]); + } + } + } + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-4/Nomor2.java b/H071201036/PRAKTIKUM-4/Nomor2.java new file mode 100644 index 0000000..8d22e38 --- /dev/null +++ b/H071201036/PRAKTIKUM-4/Nomor2.java @@ -0,0 +1,38 @@ +import java.util.Scanner; + +public class Nomor2 { + public static void main(String[] args) { + Scanner scan = new Scanner(System.in); + int i = scan.nextInt(); + int j = scan.nextInt(); + int k = scan.nextInt(); + + int[][] matriksA = new int[i][j]; + int[][] matriksB = new int[j][k]; + int[][] hasil = new int[i][k]; + + System.out.println("~~~~~Masukkan Matriks A~~~~~"); + for (int a = 0; a < i; a++) { + for (int b = 0; b < j; b++) { + matriksA[a][b] = scan.nextInt(); + } + } + System.out.println("~~~~~Masukkan Matriks B~~~~~"); + for (int a = 0; a < j; a++) { + for (int b = 0; b < k; b++) { + matriksB[a][b] = scan.nextInt(); + } + } + System.out.println(); + for (int a = 0; a < i; a++) { + for (int b = 0; b < k; b++) { + for (int c = 0; c < j; c++) { + hasil[a][b] += matriksA[a][c] * matriksB[c][b]; + } + System.out.print(hasil[a][b] + " "); + } + System.out.println(); + } + scan.close(); + } +} diff --git a/H071201036/PRAKTIKUM-5/Nomor1.java b/H071201036/PRAKTIKUM-5/Nomor1.java new file mode 100644 index 0000000..692e600 --- /dev/null +++ b/H071201036/PRAKTIKUM-5/Nomor1.java @@ -0,0 +1,31 @@ +import java.util.Scanner; + +class Nomor1 { + public static void main(String[] args) { + Scanner scan = new Scanner(System.in); + System.out.print("Masukkan bilangan pertama : "); + int value1 = scan.nextInt(); + System.out.print("Masukkan bilangan kedua : "); + int value2 = scan.nextInt(); + scan.close(); + int FPB = cariFPB(value1, value2); + System.out.println("FPB dari " + value1 + " dan " + value2 + " = " + FPB); + } + + public static int cariFPB(int value1, int value2) { + int besar, kecil; + int FPB = 0; + besar = value2; + kecil = value1; + if (value1 > value2) { + besar = value1; + kecil = value2; + } + for (int i = kecil; i > 0; i--) { + if (kecil % i == 0 && besar % i == 0) { + FPB = i; + } + } + return FPB; + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-5/Nomor2.java b/H071201036/PRAKTIKUM-5/Nomor2.java new file mode 100644 index 0000000..3f52434 --- /dev/null +++ b/H071201036/PRAKTIKUM-5/Nomor2.java @@ -0,0 +1,27 @@ +import java.util.Scanner; +import java.util.Random; + +class Nomor2 { + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + int n = scanner.nextInt(); + int m = scanner.nextInt(); + scanner.close(); + String serialNumber = generateSerial(n, m); + System.out.println(serialNumber); + } + + public static String generateSerial(int n, int m) { + Random random = new Random(); + String str = new String(); + for (int i = 1; i <= n; i++) { + for (int j = 1; j <= m; j++) { + str += random.nextInt(10); + } + if (i < n) { + str += "-"; + } + } + return str; + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-5/Nomor3.java b/H071201036/PRAKTIKUM-5/Nomor3.java new file mode 100644 index 0000000..99fc3d8 --- /dev/null +++ b/H071201036/PRAKTIKUM-5/Nomor3.java @@ -0,0 +1,25 @@ +import java.util.Scanner; + +public class Nomor3 { + public static void main(String[] args) { + Scanner scan = new Scanner(System.in); + int x = scan.nextInt(); + scan.close(); + int year = year(x); + int month = month(x); + int day = day(x); + System.out.printf("%d tahun \n%d bulan \n%d hari", year, month, day); + } + static int year (int x){ + int year = x / 365; + return year; + } + static int month (int x){ + int month = (x % 365)/30; + return month; + } + static int day (int x){ + int day = (x % 365) % 30; + return day; + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-6/TP6Nomor1.java b/H071201036/PRAKTIKUM-6/TP6Nomor1.java new file mode 100644 index 0000000..62f35cf --- /dev/null +++ b/H071201036/PRAKTIKUM-6/TP6Nomor1.java @@ -0,0 +1,48 @@ +import java.util.Scanner; + +public class TP6Nomor1 { + // Membagi kata + static String setengahKata(String a) { + String kataBaru = a.replaceAll(" ", ""); + int kataLength = kataBaru.length() / 2; + kataBaru = kataBaru.substring(0, kataLength); + return kataBaru; + } + // Membuat Palindrom + static String palindromString(String a) { + String kata = setengahKata(a); + String palindrome = ""; + for (int i = kata.length() - 2; i >= 0; i--) { + palindrome += kata.charAt(i); + } + String kataBaru = kata.concat(palindrome); + return kataBaru; + } + // Convert ke hexadecimal + static String hexadecimal(String a) { + int kataLength = a.length(); + int decimal = kataLength * kataLength; + String hex = String.format("%x", decimal); + return hex; + } + // Convert ke octal + static String octal(String a) { + int kataLength = a.length(); + String oct = String.format("%o", kataLength); + return oct; + } + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + + String kata = input.nextLine().toUpperCase(); + input.close(); + System.out.print("#" + hexadecimal(kata) + palindromString(kata) + octal(kata)); + // Symbol + char hexChar = String.valueOf(hexadecimal(kata)).charAt(0); + if (hexChar >= 'a' && hexChar <= 'z') { + System.out.print("?"); + } else { + System.out.print("!"); + } + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-6/TP6Nomor2.java b/H071201036/PRAKTIKUM-6/TP6Nomor2.java new file mode 100644 index 0000000..f7e166c --- /dev/null +++ b/H071201036/PRAKTIKUM-6/TP6Nomor2.java @@ -0,0 +1,61 @@ +import java.util.Scanner; + +public class TP6Nomor2 { + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + String kata = input.nextLine(); + input.close(); + String[][] array = new String[4][4]; + + kata = charCodePointAt(kata); + int count = 0; + int character = charArray(kata); + // Mengisi Array + for (int i = 0; i < 4; i++) { + for (int j = 0; j < 4; j++) { + array[i][j] = ""; + for (int k = 0; k < character; k++) { + if (count < kata.length()) { + array[i][j] += kata.charAt(count); + } else { + array[i][j] += '?'; + } + count++; + } + } + } + // Print Array + for (int i = 0; i < 4; i++) { + for (int j = 0; j < 4; j++) { + System.out.print(array[i][j] + " "); + } + System.out.println(); + } + } + + // Convert dengan metode Character.codePointAt(String, index) + static String charCodePointAt(String a) { + int hurufGanjil; + char hurufGenap; + String kataBaru = ""; + for (int i = 0; i < a.length(); i++) { + if (i % 2 != 0) { + hurufGanjil = Character.codePointAt(a, i); + kataBaru += hurufGanjil; + } else { + hurufGenap = a.charAt(i); + kataBaru += hurufGenap; + } + } + return kataBaru; + } + + // Menentukan banyak karakter tiap array + static int charArray(String a) { + int character = 0; + while ((16 * character) < a.length()) { + character++; + } + return character; + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-7/TugasPraktikum7.java b/H071201036/PRAKTIKUM-7/TugasPraktikum7.java new file mode 100644 index 0000000..84230a0 --- /dev/null +++ b/H071201036/PRAKTIKUM-7/TugasPraktikum7.java @@ -0,0 +1,148 @@ +import java.util.HashMap; +import java.util.Map; +import java.util.Scanner; + +public class TugasPraktikum7 { + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + // Tampilan Awal + Map movie = new HashMap<>(); + movie.put(1, "Avenger : Endgame"); + movie.put(2, "Spiderman : Far From Home"); + movie.put(3, "Venom"); + movie.put(4, "Thor : Ragnarok"); + printMovie(movie); + System.out.println("(d)Detail (s)Search (a)Add (r)Remove"); + // Rilis + Map rilis = new HashMap<>(); + rilis.put(1, "24 April 2019"); + rilis.put(2, "3 Juli 2019"); + rilis.put(3, "3 Oktober 2018"); + rilis.put(4, "25 Oktober 2017"); + // Durasi + Map durasi = new HashMap<>(); + durasi.put(1, "3 jam 1 menit"); + durasi.put(2, "2 jam 9 menit"); + durasi.put(3, "2 jam 20 menit"); + durasi.put(4, "2 jam 10 menit"); + // Genre + Map genre = new HashMap<>(); + genre.put(1, "Adventure, Sci-fi, Action"); + genre.put(2, "Adventure, SuperHero, Action, Comedy, Sci-fi"); + genre.put(3, "Action, Sci-fi, Horror, Adventure"); + genre.put(4, "Action, Comedy, SuperHero, Sci-fi, Adventure"); + // Sinopsis + Map sinopsis = new HashMap<>(); + sinopsis.put(1, "\"Ini adalah sinopsis\""); + sinopsis.put(2, "\"Ini adalah sinopsis\""); + sinopsis.put(3, "\"Ini adalah sinopsis\""); + sinopsis.put(4, "\"Ini adalah sinopsis\""); + // Cast + Map cast = new HashMap<>(); + cast.put(1, "Robert Downey Jr., Chris Evan, Mark Rufallo"); + cast.put(2, "Tom Holland, Samuel L. Jackson, Jake Gyllenhaal"); + cast.put(3, "Tom Hardy, Michelle Williams, Riz Ahmed"); + cast.put(4, "Chris Hemsworth, Tom Hiddleston, Cate Blanchett"); + + String lanjut = "y"; + while (lanjut.equalsIgnoreCase("y")) { + String pilihan = input.next(); + switch (pilihan) { + // (d) Detail + case "d": + int urutan = input.nextInt(); + System.out.println("Judul\t : " + movie.get(urutan)); + System.out.println("Rilis\t : " + rilis.get(urutan)); + System.out.println("Durasi\t : " + durasi.get(urutan)); + System.out.println("Genre\t : " + genre.get(urutan)); + System.out.println("Sinopsis : " + sinopsis.get(urutan)); + System.out.println("Cast\t : " + cast.get(urutan)); + break; + // (s) Search + case "s": + String cari = input.next(); + int count = 0; + System.out.println("Berikut Daftar Film yang Terkait dengan \"" + cari + "\" :"); + for (Integer key : movie.keySet()) { + + String cekMovieName = (String) movie.get(key).toLowerCase(); + boolean booleanCekMovie = cekMovieName.contains(cari.toLowerCase()); + if (booleanCekMovie) { + count++; + System.out.println(count + ". " + movie.get(key)); + } + } + break; + // (a) add + case "a": + System.out.println("=== Masukkan Data ==="); + System.out.print("Judul\t : "); + input.nextLine(); + String newMovie = input.nextLine(); + System.out.print("Rilis\t : "); + String newRilis = input.nextLine(); + System.out.print("Durasi\t : "); + String newDurasi = input.nextLine(); + System.out.print("Genre\t : "); + String newGenre = input.nextLine(); + System.out.print("Sinopsis : "); + String newSinopsis = input.nextLine(); + System.out.print("Cast\t : "); + String newCast = input.next(); + int count2 = movie.size() + 1; + while (count2 < movie.size() + 2) { + movie.put(count2, newMovie); + rilis.put(count2, newRilis); + durasi.put(count2, newDurasi); + genre.put(count2, newGenre); + sinopsis.put(count2, newSinopsis); + cast.put(count2, newCast); + System.out.println("Favorite Movie"); + printMovie(movie); + count2++; + if (count2 < movie.size() + 2) { + break; + } + } + break; + // (r) Remove + case "r": + int movieRemove = input.nextInt(); + for (int i = movieRemove; i < movie.size() + 1; i++) { + movie.replace(i, movie.get(i + 1)); + rilis.replace(i, rilis.get(i + 1)); + durasi.replace(i, durasi.get(i + 1)); + genre.replace(i, genre.get(i + 1)); + sinopsis.replace(i, sinopsis.get(i + 1)); + cast.replace(i, cast.get(i + 1)); + if (i == movie.size()) { + movie.remove(movie.size()); + rilis.remove(movie.size()); + } + } + System.out.println("Favorite Movie"); + printMovie(movie); + break; + } + // Continue? + System.out.print("Continue? (Y/N) : "); + lanjut = input.next(); + if (lanjut.equalsIgnoreCase("y")) { + System.out.println(); + System.out.println("Favorite Movie"); + printMovie(movie); + if (movie.isEmpty()) { + System.out.println("=== Anda Tidak Memiliki Film Favorite :( ==="); + } + System.out.println("(d)Detail (s)Search (a)Add (r)Remove"); + } + } + input.close(); + } + + static void printMovie(Map a) { + for (int i = 1; i < a.size() + 1; i++) { + System.out.println(i + ". " + a.get(i)); + } + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-8/TP8Nomor1.java b/H071201036/PRAKTIKUM-8/TP8Nomor1.java new file mode 100644 index 0000000..8244396 --- /dev/null +++ b/H071201036/PRAKTIKUM-8/TP8Nomor1.java @@ -0,0 +1,40 @@ +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileReader; +import java.io.FileWriter; +import java.util.Scanner; + +public class TP8Nomor1 { + public static void main (String[] args){ + Scanner scan = new Scanner(System.in); + String inputFileName = scan.nextLine(); + String fileName = inputFileName + ".txt"; + String inputCopiedFile = scan.nextLine(); + String copiedFile = inputCopiedFile + ".txt"; + copy(fileName, copiedFile); + scan.close(); + } + public static void copy (String sourceFile, String copiedFile){ + File file = new File(sourceFile); + if (!file.exists() || !file.isFile()){ + System.out.println(); + System.out.println("Gagal"); + return; + } + String copiedFileName = sourceFile.replace(sourceFile, copiedFile); + try (BufferedReader bufferedReader = new BufferedReader(new FileReader(sourceFile))){ + BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(copiedFileName)); + String line = new String(); + while ((line = bufferedReader.readLine()) != null){ + bufferedWriter.write(line); + bufferedWriter.newLine(); + } + bufferedWriter.close(); + System.out.println(); + System.out.println("Berhasil"); + }catch (Exception e){ + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-8/TP8Nomor2.java b/H071201036/PRAKTIKUM-8/TP8Nomor2.java new file mode 100644 index 0000000..90bcf6c --- /dev/null +++ b/H071201036/PRAKTIKUM-8/TP8Nomor2.java @@ -0,0 +1,40 @@ +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileReader; +import java.io.FileWriter; +import java.util.Scanner; + +public class TP8Nomor2 { + public static void main (String[] args){ + Scanner scan = new Scanner(System.in); + String inputFileName = scan.nextLine(); + String fileName = inputFileName + ".txt"; + String inputCopiedFile = scan.nextLine(); + String copiedFile = inputCopiedFile + ".txt"; + copy(fileName, copiedFile); + scan.close(); + } + public static void copy (String sourceFile, String copiedFile){ + File file = new File(sourceFile); + if (!file.exists() || !file.isFile()){ + System.out.println(); + System.out.println("Gagal"); + return; + } + String copiedFileName = sourceFile.replace(sourceFile, copiedFile); + try (BufferedReader bufferedReader = new BufferedReader(new FileReader(sourceFile))){ + BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(copiedFileName)); + String line = new String(); + while ((line = bufferedReader.readLine()) != null){ + bufferedWriter.write(String.format("%20s", line)); + bufferedWriter.newLine(); + } + bufferedWriter.close(); + System.out.println(); + System.out.println("Berhasil"); + }catch (Exception e){ + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/H071201036/PRAKTIKUM-8/TP8Nomor3.java b/H071201036/PRAKTIKUM-8/TP8Nomor3.java new file mode 100644 index 0000000..50c8783 --- /dev/null +++ b/H071201036/PRAKTIKUM-8/TP8Nomor3.java @@ -0,0 +1,77 @@ +import java.io.*; +import java.util.Scanner; + +public class TP8Nomor3 { + public static void main(String[] args) { + Scanner scan = new Scanner(System.in); + FileWriter fileWrite = null; + PrintWriter printWrite = null; + + try { + System.out.print("Masukkan Nama File : "); + String fileName = scan.nextLine() + ".txt"; + System.out.print("Jumlah Asisten : "); + int numberAssistance = scan.nextInt(); + String[] nameList = new String[numberAssistance]; + String[] nimList = new String[numberAssistance]; + int[] angkatanList = new int[numberAssistance]; + + for (int i = 0; i < numberAssistance; i++) { + scan.nextLine(); + System.out.print("Nama = "); + nameList[i] = scan.nextLine(); + System.out.print("NIM = "); + nimList[i] = scan.next(); + System.out.print("Angkatan = "); + angkatanList[i] = scan.nextInt(); + } + + fileWrite = new FileWriter(fileName); + printWrite = new PrintWriter(fileWrite); + int panjang = 0; + for (int i = 0; i < nameList.length; i++) { + if (nameList[i].length() > panjang) + panjang = nameList[i].length(); + } + printWrite.printf("+%s+===========+===========+\n", penampil(panjang)); + panjang -= 4; + printWrite.printf("|NAMA%" + panjang + "s|NIM |ANGKATAN |\n", " "); + panjang += 4; + printWrite.printf("+%s+===========+===========+\n", penampil(panjang)); + for (int j = 0; j < numberAssistance; j++) { + panjang -= nameList[j].length(); + printWrite.printf("|%s", nameList[j]); + for (int x = 0; x < panjang; x++) { + printWrite.print(" "); + } + printWrite.printf("| %-10s | %-8s |\n", nimList[j], angkatanList[j]); + panjang += nameList[j].length(); + } + printWrite.printf("+%s+===========+===========+\n", penampil(panjang)); + + } catch (IOException ioe) { + System.out.println("Gagal"); + scan.nextLine(); + } finally { + try { + if (printWrite != null) { + System.out.println("Berhasil"); + printWrite.close(); + } + if (fileWrite != null) { + fileWrite.close(); + } + } catch (IOException ioe) { + System.out.println(ioe.getMessage()); + } + } + } + + public static String penampil(int a) { + String str = ""; + for (int i = 0; i < a; i++) { + str += "="; + } + return str; + } +} \ No newline at end of file