diff --git a/H071201027/Praktikum-3/Tugas3nom1.java b/H071201027/Praktikum-3/Tugas3nom1.java new file mode 100644 index 0000000..4d26693 --- /dev/null +++ b/H071201027/Praktikum-3/Tugas3nom1.java @@ -0,0 +1,39 @@ +import java.util.Scanner; +public class Tugas3nom1{ + public static void main(String[] args) { + Scanner ob = new Scanner(System.in); + System.out.println("Masukkan X"); + int X = ob.nextInt(); + System.out.println("Masukkan Y"); + int Y = ob.nextInt(); + int a= 0,b=0; + + if(X0){ + if(i%2==0){ + System.out.println(i+ " genap positif"); + }else{ + System.out.println(i+ " ganjil positif"); + } + }else if (i==0){ + System.out.println( i+ " nol"); + } + else { + if(i%2==1){ + System.out.println(i+ " ganjil negatif"); + }else{ + System.out.println(i+ " genap negatif"); + } + } + } + } +} diff --git a/H071201027/Praktikum-3/Tugas3nom2.java b/H071201027/Praktikum-3/Tugas3nom2.java new file mode 100644 index 0000000..1a20657 --- /dev/null +++ b/H071201027/Praktikum-3/Tugas3nom2.java @@ -0,0 +1,27 @@ +import java.util.*; +public class Tugas3nom2 { + public static void main(String[] args) { + Scanner x = new Scanner(System.in); + System.out.println("Masukkan X"); + int X = x.nextInt(); + System.out.println("Masukkan Y"); + int Y = x.nextInt(); + if(X>Y){ + System.out.println("INPUT ANDA SALAH, INPUT YANG BENAR ADALAH X=barang){ + while(kmbli>0 ){ + if ( kmbli-100000>=0){ + kmbli-=100000; + seratus++; + }else if( kmbli-50000>=0){ + kmbli-=50000; + limpu++; + }else if( kmbli-20000>=0){ + kmbli-=20000; + duapu++; + }else if( kmbli-10000>=0){ + kmbli-=10000; + sepul++; + }else if( kmbli-5000>=0){ + kmbli-=5000; + limari++; + }else if( kmbli-2000>=0){ + kmbli-=2000; + duaribu++; + }else { + kmbli-=1000; + seribu++; + } + } + System.out.println(seratus+" uang Rp.100.000"); + System.out.println(limpu+" uang Rp.50.000"); + System.out.println(duapu+" uang Rp.20.000"); + System.out.println(sepul+" uang Rp.10.000"); + System.out.println(limari+" uang Rp.5.000"); + System.out.println(duaribu+" uang Rp.2.000"); + System.out.println(seribu+" uang Rp.1.000"); + }else{ + System.out.println("Inputan anda salah, inputan yang benar adalah uang>=harga barang"); + } + + + + + + +} + } + diff --git a/H071201027/Praktikum-3/Tugas3nom5.java b/H071201027/Praktikum-3/Tugas3nom5.java new file mode 100644 index 0000000..4ebd1b7 --- /dev/null +++ b/H071201027/Praktikum-3/Tugas3nom5.java @@ -0,0 +1,43 @@ +import java.util.Scanner; +public class Tugas3nom5 { + public static void main(String[] args) { + Scanner scan = new Scanner(System.in); + System.out.println("Masukkan derjat posisi matahari"); + + while (scan.hasNext()) { + + float m = scan.nextFloat(); + int jam=0,menit=0,sisa=0,detik=0; + int posisi = (int) (m * 240); + + if (m >= 0 && m < 360) { + if(posisi > 0) { + jam = posisi/3600; + sisa = posisi%3600; + menit=sisa/60; + detik = sisa%60; + + } + + jam += 6; + if (jam > 24) + jam -= 24; + + if (jam <= 10) { + System.out.println("selamat pagi"); + System.out.printf("%02d:%02d:%02d\n", jam, menit, detik); + } else if (jam <= 2) { + System.out.println("selamat siang"); + System.out.printf("%02d:%02d:%02d\n", jam, menit, detik); + } else if (jam <= 6) { + System.out.println("selamat sore"); + System.out.printf("%02d:%02d:%02d\n", jam, menit, detik); + } else { + System.out.println("selamat malam"); + System.out.printf("%02d:%02d:%02d\n", jam, menit, detik); + } + } else + System.out.println("harap masukkan 0<=nilai<360"); + } + } +} diff --git a/H071201027/Praktikum-4/Tugas4nom1.java b/H071201027/Praktikum-4/Tugas4nom1.java new file mode 100644 index 0000000..96ae334 --- /dev/null +++ b/H071201027/Praktikum-4/Tugas4nom1.java @@ -0,0 +1,30 @@ +import java.util.Scanner; + +public class Tugas4nom1 { + public static void main(String[] args) { + Scanner in = new Scanner(System.in); + int n= in.nextInt(); + int [] N= new int[n]; + int count; + + for (int i = 0; i < n; i++) { + N [i]= in.nextInt(); + } + + for (int i = 0; i= 'a' && hexChar <= 'z')? '?':'!'; + System.out.println(symbol); + + } + static String setengahKata(String a) { + String kataBaru = a.replaceAll("\\s+", ""); + int kataLength = kataBaru.length() / 2; + kataBaru = kataBaru.substring(0, kataLength); + return kataBaru; + } + static String hexadecimal(String a) { + int kataLength = a.length(); + int decimal = kataLength * kataLength; + String hex = String.format("%x", decimal); + return hex; + + } + + 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; + } + + + static String octal(String a) { + int kataLength = a.length(); + String oct = String.format("%o", kataLength); + return oct; + } + +} diff --git a/H071201027/Praktikum-6/Tugas6nom2.java b/H071201027/Praktikum-6/Tugas6nom2.java new file mode 100644 index 0000000..ba63153 --- /dev/null +++ b/H071201027/Praktikum-6/Tugas6nom2.java @@ -0,0 +1,60 @@ +import java.util.Scanner; + +public class Tugas6nom2 { + public static void main(String[] args) { + Scanner in = new Scanner(System.in); + String kata = in.nextLine(); + String[][] array = new String[4][4]; + + if (kata.length() >= 16) { + kata = charCodePointAt(kata); + int count = 0; + int character = charArray(kata); + 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++; + } + } + } + + for (int i = 0; i < 4; i++) { + for (int j = 0; j < 4; j++) { + System.out.print(array[i][j] + " "); + } + System.out.println(); + } + } + } + + 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; + } + + static int charArray(String a) { + int character = 0; + while ((16 * character) < a.length()) { + character++; + } + return character; + } + +} diff --git a/H071201027/Praktikum-7/Tugas7nom1.java b/H071201027/Praktikum-7/Tugas7nom1.java new file mode 100644 index 0000000..52c6a4a --- /dev/null +++ b/H071201027/Praktikum-7/Tugas7nom1.java @@ -0,0 +1,148 @@ +import java.util.HashMap; +import java.util.Scanner; +import java.util.Map; + + class Tugas7nom1 { + + static void printMov (HashMap m) { + for (Integer num : m.keySet()) { + String key = num.toString(); + String val = m.get(num); + System.out.println(num + ". " + val); + } + + } + public static void main(String[] args) { + Scanner inp = new Scanner (System.in); + + HashMap favMov = new HashMap<> (); + favMov.put(1, "Avenger : Endgame"); + favMov.put(2, "Spiderman : Far Frdom Home"); + favMov.put(3, "Venom"); + favMov.put(4, "Thor : Ragnarok"); + + Map rilis = new HashMap<> (); + rilis.put(1, "24 April 2019"); + rilis.put(2, "26 Juni 2019" ); + rilis.put(3, "1 Oktober 2018 "); + rilis.put(4, "10 Oktober 2017"); + + Map durasi = new HashMap<>(); + durasi.put(1, "3 Jam 1 Menit"); + durasi.put(2, "2 Jam 9 Menit"); + durasi.put(3, "1 Jam 52 Menit"); + durasi.put(4, "2 Jam 10 Menit"); + + Map genre = new HashMap<>(); + genre.put(1, "Adventure, Sci-Fi, Action"); + genre.put(2, "Adventure, Sci-Fi, Action"); + genre.put(3, "Adventure, Sci-Fi, Action"); + genre.put(4, "Adventure, Sci-Fi, Action, Fantasy, Comedy"); + + Map sinopsis = new HashMap<>(); + sinopsis.put(1, "ini sinopsis"); + sinopsis.put(2, "ini sinopsis"); + sinopsis.put(3, "ini sinopsis"); + sinopsis.put(4, "ini sinopsis"); + + Map cast = new HashMap<>(); + cast.put(1, "Robert Downey Jr., Chris Evan, Mark Ruffalo"); + cast.put(2, "Tom Holland, Samuel L. Jackson, Jake Gyllenhall"); + cast.put(3, "Tom Hardy, Michelle Williams, Riz Ahmed"); + cast.put(4, "Chris Hemsworth, Tom Hiddleston, Cate Blanchett"); + + while (true) { + printMov(favMov); + System.out.println("(d)Detail (s)Search (a)Add (r)Remove"); + + String op = inp.next(); + if (op.equals("d")) { + int j = inp.nextInt(); + String judul = favMov.get(j); + String date = rilis.get(j); + String duration = durasi.get(j); + String tag = genre.get(j); + String sin = sinopsis.get(j); + String pemain = cast.get(j); + + System.out.println("Judul : " + judul); + System.out.println("Rilis : " + date); + System.out.println("Durasi : " + duration); + System.out.println("Genre : " + tag); + System.out.println("Sinposis : " + sin); + System.out.println("Cast : " + pemain); + + } + else if (op.equals("s")) { + String src = inp.next(); + + for (int i = 1;i <= favMov.size() ;i++) { + if (favMov.get(i).contains(src)) { + System.out.println("Hasil Pencarian : " + favMov.get(i)); + } + } + + } + else if (op.equals("a")) { + String judul = inp.nextLine(); + + judul = judul.substring(1); + System.out.printf("judul : %s", judul); + + System.out.printf("%nRilis : "); + String date = inp.nextLine(); + + System.out.printf("Durasi : "); + String duration = inp.nextLine(); + + System.out.printf("Genre : "); + String tag = inp.nextLine(); + + System.out.printf("Sinopsis : "); + String sin = inp.nextLine(); + + System.out.printf("Cast : "); + String pemain = inp.nextLine(); + + favMov.put(favMov.size()+1, judul); + rilis.put(rilis.size()+1, date); + durasi.put(durasi.size()+1, duration); + genre.put(genre.size()+1, tag); + sinopsis.put(sinopsis.size()+1, sin); + cast.put(cast.size()+1, pemain); + + printMov(favMov); + + } + else if (op.equals("r")) { + int j = inp.nextInt(); + + for (int i = 0;i < favMov.size() - 1 ;i++ ) { + favMov.replace(j+i, favMov.get(j+i+1)); + rilis.replace(j+i, rilis.get(j+i+1)); + durasi.replace(j+i, durasi.get(j+i+1)); + genre.replace(j+i, genre.get(j+i+1)); + sinopsis.replace(j+i, sinopsis.get(j+i+1)); + cast.replace(j+i, cast.get(j+i+1)); + } + + favMov.remove(favMov.size()); + rilis.remove(rilis.size()); + durasi.remove(durasi.size()); + genre.remove(genre.size()); + sinopsis.remove(sinopsis.size()); + cast.remove(cast.size()); + + printMov(favMov); + + } + + System.out.println("continue? yes/no"); + String ctn = inp.next(); + if (ctn.equals("no")) { + break; + } + } + inp.close(); + } +} diff --git a/H071201027/Praktikum-8/P8Nomor1.java b/H071201027/Praktikum-8/P8Nomor1.java new file mode 100644 index 0000000..901a22d --- /dev/null +++ b/H071201027/Praktikum-8/P8Nomor1.java @@ -0,0 +1,30 @@ +import java.io.FileWriter; +import java.io.BufferedWriter; +import java.io.FileReader; +import java.io.BufferedReader; +import java.util.Scanner; + +class P8Nomor1 { + public static void main(String[] args) { + Scanner obj = new Scanner(System.in); + String fileSource = "file/" + obj.nextLine() + ".txt"; + String fileDestination = "file/" + obj.nextLine() + ".txt"; + copyFile(fileSource, fileDestination); + obj.close(); + } + + static void copyFile(String source, String dest) { + // use filestreaminput and filestreamoutput + try (BufferedReader in = new BufferedReader(new FileReader(source)); + BufferedWriter out = new BufferedWriter(new FileWriter(dest))) { + String i = null; + while ((i = in.readLine()) != null) { + out.write(i + "\n"); + } + System.out.println("Berhasil"); + } + catch (Exception e) { + System.out.print("Gagal"); + } + } +} diff --git a/H071201027/Praktikum-8/P8Nomor2.java b/H071201027/Praktikum-8/P8Nomor2.java new file mode 100644 index 0000000..63e158e --- /dev/null +++ b/H071201027/Praktikum-8/P8Nomor2.java @@ -0,0 +1,71 @@ +import java.util.Scanner; + + +import java.io.FileWriter; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileReader; +import java.io.BufferedReader; + +class P8Nomor2 { + public static void main(String[] args) { + Scanner obj = new Scanner(System.in); + String fileSource = "file/" + obj.nextLine() + ".txt"; + String fileDestination = "file/" + obj.nextLine() + ".txt"; + copyFile(fileSource, fileDestination); + obj.close(); + } + + static void copyFile(String source, String dest) { + File file = new File (source); + if (!file.exists() || !file.isFile()){ + System.out.println(); + System.out.println("\"gagal\""); + return; + }else{ + String copyFileName = source.replace(source,dest); + // use filestreaminput and filestreamoutput + try (BufferedReader in = new BufferedReader(new FileReader(source)); + BufferedWriter out = new BufferedWriter(new FileWriter(copyFileName))) { + BufferedReader a = new BufferedReader(new FileReader(source)); + int sum = 0; + while (a.readLine() !=null){ + sum++; + } + int [] charArray = new int[sum]; + a.close(); + + BufferedReader b = new BufferedReader(new FileReader(source)); + String line = new String(); + int sum2=0; + int length; + while (( line = b.readLine()) !=null){ + length = line.length(); + charArray[sum2]= length; + sum2++; + } + b.close(); + //menentukan nilai maks + int max = charArray[0]; + for (int i =0; i< charArray.length;i++){ + if(charArray[i]>max){ + max= charArray [i]; + } + } + //menulis hasil salinan menjadi rata kanan + String line2 = new String(); + length = line2.length(); + while ((line2= in.readLine())!=null){ + out.write(String.format("%"+max+"s",line2)); + out.newLine(); + } + out.close(); + System.out.println(); + System.out.println("\"Berhasil\""); + } + catch (Exception e) { + e.printStackTrace(); + } + } + } +} diff --git a/H071201027/Praktikum-8/P8Nomor3.java b/H071201027/Praktikum-8/P8Nomor3.java new file mode 100644 index 0000000..dfdaa33 --- /dev/null +++ b/H071201027/Praktikum-8/P8Nomor3.java @@ -0,0 +1,101 @@ +import java.util.ArrayList; +import java.util.Scanner; +import java.io.File; +import java.io.FileWriter; +import java.io.BufferedWriter; +import java.io.FileReader; +import java.io.BufferedReader; + + +class P8Nomor3 { + public static void main(String[] args) { + Scanner obj = new Scanner(System.in); + String fileName = "file/" + obj.nextLine() + ".txt"; + write(fileName); + obj.close(); + } + + // method untuk menyusun data + static void write(String test) { + File source = new File(test); + if (!source.exists()) { + writeData(test); + } else { + appendData(test); + } + } + + // method untuk membuat data + static String addData(boolean append) { + Scanner asd = new Scanner(System.in); + String d = asd.nextLine(); + int data = Integer.parseInt(d); + String[] nama = new String[data]; + String[] nim = new String[data]; + int[] angkatan = new int[data]; + String loop = ""; + for (int i = 0; i < data; i++) { + nama[i] = asd.nextLine(); + nim[i] = asd.nextLine(); + String number = asd.nextLine(); + angkatan[i] = Integer.parseInt(number); + // pengkondisian apabila file sudah ada/tidak + if (append) { + loop += i != (data - 1) ? + String.format("| %-25s | %-10s | %-8s |\n", nama[i], nim[i], angkatan[i]) : + String.format("| %-25s | %-10s | %-8s |", nama[i], nim[i], angkatan[i]); + } else { + loop += String.format("| %-25s | %-10s | %-8s |\n", nama[i], nim[i], angkatan[i]); + } + } + return loop; + } + + // method untuk membuat file dan merangkai data + static void writeData(String source) { + boolean append = false; + try (BufferedWriter file = new BufferedWriter(new FileWriter(source))) { + file.write("+---------------------------+------------+----------+\n"); + file.write(String.format("| %-25s | %-10s | %-8s |\n", "Nama", "NIM", "Angkatan")); + file.write("+---------------------------+------------+----------+\n"); + file.write(addData(append)); + file.write("+---------------------------+------------+----------+\n"); + System.out.println("Berhasil"); + } catch (Exception e) { + System.out.println("Gagal"); + } + } + + // method untuk menambahkan data apabila file sudah ada + static void appendData(String file) { + boolean append = true; + ArrayList list = new ArrayList<>(); + String lines = null; + FileWriter fileWriter = null; + BufferedWriter path = null; + // mengakses file + try (BufferedReader source = new BufferedReader(new FileReader(file))) { + fileWriter = new FileWriter(file, true); + path = new BufferedWriter(fileWriter); + while ((lines = source.readLine()) != null) { + list.add(lines); + } + // modifikasi & menambahkan data pada file + list.add(3, addData(append)); + path = new BufferedWriter(new FileWriter(file)); + for (String e : list) { + path.write(e + "\n"); + } + System.out.println("Berhasil"); + } catch (Exception e) { + System.out.println("Gagal"); + } finally { + try { + fileWriter.close(); + path.close(); + } catch (Exception e) { + System.out.println("Gagal"); + } + } + } +} diff --git a/H071201027/Praktikum-8/file/latihan-1.txt b/H071201027/Praktikum-8/file/latihan-1.txt new file mode 100644 index 0000000..621d36b --- /dev/null +++ b/H071201027/Praktikum-8/file/latihan-1.txt @@ -0,0 +1,3 @@ +baris pertama + baris keduaa + baris ketiga diff --git a/H071201027/Praktikum-8/file/latihan.txt b/H071201027/Praktikum-8/file/latihan.txt new file mode 100644 index 0000000..d12c307 --- /dev/null +++ b/H071201027/Praktikum-8/file/latihan.txt @@ -0,0 +1,5 @@ +baris pertama +baris keduaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +baris ketiga +| Awang mulya nugrawan | H071201027 | 2020 | +| RANDOMM | H000011 | 2020 |