From 934218976a3da27a6354a26de3bae478f02fb730 Mon Sep 17 00:00:00 2001 From: toku404 Date: Sat, 25 Mar 2023 11:47:47 +0800 Subject: [PATCH 01/14] re upload --- src/H071221028/Pertemuan_1/No1.java | 24 +++++++++++ src/H071221028/Pertemuan_1/No2.java | 61 ++++++++++++++++++++++++++++ src/H071221028/Pertemuan_1/No3.java | 32 +++++++++++++++ src/H071221028/Pertemuan_1/No4.java | 41 +++++++++++++++++++ src/H071221028/Pertemuan_1/No5.java | 63 +++++++++++++++++++++++++++++ src/H071221028/Pertemuan_1/No6.java | 18 +++++++++ src/H071221028/Pertemuan_1/No7.java | 28 +++++++++++++ src/H071221028/Pertemuan_1/No8.java | 34 ++++++++++++++++ 8 files changed, 301 insertions(+) create mode 100644 src/H071221028/Pertemuan_1/No1.java create mode 100644 src/H071221028/Pertemuan_1/No2.java create mode 100644 src/H071221028/Pertemuan_1/No3.java create mode 100644 src/H071221028/Pertemuan_1/No4.java create mode 100644 src/H071221028/Pertemuan_1/No5.java create mode 100644 src/H071221028/Pertemuan_1/No6.java create mode 100644 src/H071221028/Pertemuan_1/No7.java create mode 100644 src/H071221028/Pertemuan_1/No8.java diff --git a/src/H071221028/Pertemuan_1/No1.java b/src/H071221028/Pertemuan_1/No1.java new file mode 100644 index 0000000..a2cbc87 --- /dev/null +++ b/src/H071221028/Pertemuan_1/No1.java @@ -0,0 +1,24 @@ +package H071221028.Pertemuan_1; + +import java.util.Scanner; + +public class No1 { // nama file classnya + public static void main(String[] args) { + String nim; // variable + Scanner keyboard = new Scanner(System.in); + System.out.print("Masukkan NIM: "); + nim = keyboard.next(); + String inp = nim.substring(nim.length() - 3); // memasukkan index yang diminta, -3 untuk 3 angka terakkhir + + int angka = Integer.parseInt(inp); // modifikasi tipedata + + if (angka % 7 == 0) { + System.out.println("soal: no 7"); + } else { + System.out.printf("soal : no %d\n", angka % 7); // %d untuk angka int + } + + keyboard.close(); + } + +} diff --git a/src/H071221028/Pertemuan_1/No2.java b/src/H071221028/Pertemuan_1/No2.java new file mode 100644 index 0000000..98904f0 --- /dev/null +++ b/src/H071221028/Pertemuan_1/No2.java @@ -0,0 +1,61 @@ +package H071221028.Pertemuan_1; + +import java.util.InputMismatchException; +import java.util.Scanner; + +public class No2 { + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + + try { + int n = scanner.nextInt(); + + int countDecimal = 0; + int countInteger = 0; + + for (int i = 0; i < n; i++) { + float number = scanner.nextFloat(); + + if (number - (int)number > 0) { // angka - angka, jika agka menyisakan angka dibelakang koma akan masuk ke bilangan desimal + countDecimal++; + } else { + countInteger++; + } + } + + System.out.printf("%d Bilangan Bulat\n", countInteger); + System.out.printf("%d Bilangan Desimal\n", countDecimal); + } catch (InputMismatchException e) { + System.out.println("Please input a number!"); + e.printStackTrace(); + } + + scanner.close(); + } +} + + +// import java.util.Scanner; + +// public class Dua { +// public static void main(String[] args) { +// Scanner scanner = new Scanner(System.in); +// System.out.print("Masukkan jumlah bilangan: "); +// int n = scanner.nextInt(); +// int decimals = 0; +// int integers = 0; + +// for (int i = 0; i < n; i++) { +// System.out.print("Masukkan bilangan ke-" + (i+1) + ": "); +// double num = scanner.nextDouble(); +// if (num == (int) num) { +// integers++; +// } else { +// decimals++; +// } +// } + +// System.out.println("Jumlah bilangan decimal: " + decimals); +// System.out.println("Jumlah bilangan bulat: " + integers); +// } +// } diff --git a/src/H071221028/Pertemuan_1/No3.java b/src/H071221028/Pertemuan_1/No3.java new file mode 100644 index 0000000..ff58991 --- /dev/null +++ b/src/H071221028/Pertemuan_1/No3.java @@ -0,0 +1,32 @@ +package H071221028.Pertemuan_1; + +import java.util.InputMismatchException; +import java.util.Scanner; + +public class No3 { + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + + try { + System.out.print("Name : "); + String name = scanner.nextLine(); + + System.out.print("Umur : "); + int age = scanner.nextInt(); + + scanner.nextLine(); // hapus \n yang masih tersisa di aliran input + + + System.out.print("Hobby : "); + String hobby = scanner.nextLine(); + + System.out.printf("Nama saya %s, %d tahun, hobby %s.\n", name, age, hobby); + + } catch (InputMismatchException e) { + System.out.println("Please input with proper data format!"); + + } + + scanner.close(); + } +} diff --git a/src/H071221028/Pertemuan_1/No4.java b/src/H071221028/Pertemuan_1/No4.java new file mode 100644 index 0000000..c48f928 --- /dev/null +++ b/src/H071221028/Pertemuan_1/No4.java @@ -0,0 +1,41 @@ +package H071221028.Pertemuan_1; + +import java.util.Scanner; + +public class No4 { + public static String capitalizeFirstCharacter(String sentence) { + String words[] = sentence.split("\\s"); + + String returnSentence = ""; + + // for (int i = 0; i < words.length; i++) { + // words[i] = words[i].substring(0, 1).toUpperCase() + words[i].substring(1).toLowerCase(); + + // returnSentence += words[i]; + // if (i < words.length - 1) { + // returnSentence += " "; + // } + // } + for (String word : words ){ + word = word.substring(0, 1).toUpperCase() + word.substring(1).toLowerCase(); + + returnSentence += word; + returnSentence += " "; + + + } + + return returnSentence; + } + + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + + System.out.print("Masukkan Judul Film :\n> "); + String sentence = scanner.nextLine(); + + System.out.println(capitalizeFirstCharacter(sentence)); + + scanner.close(); + } +} diff --git a/src/H071221028/Pertemuan_1/No5.java b/src/H071221028/Pertemuan_1/No5.java new file mode 100644 index 0000000..e3f7be4 --- /dev/null +++ b/src/H071221028/Pertemuan_1/No5.java @@ -0,0 +1,63 @@ +package H071221028.Pertemuan_1; + +import java.util.Scanner; + +public class No5 { + public static void main(String[] args) { + Scanner inp = new Scanner(System.in); + String a = inp.next(); + String hari = a.substring(0, 2); + System.out.print(Integer.parseInt(hari) + " "); // parseint untuk mengubah dari string ke int + String bulan = a.substring(3, 5); + int month = Integer.parseInt(bulan); + String [] bul = {"januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"} + ; + System.out.print(bul [month - 1] + " "); + + + // if (month == 1) { + // System.out.print(" Januari "); + // } + // else if (month == 2) { + // System.out.print(" Februari "); + // } + // else if (month == 3) { + // System.out.print(" Maret "); + // } + // else if (month == 4) { + // System.out.print(" April "); + // } + // else if (month == 5) { + // System.out.print(" Mei "); + // } + // else if (month == 6) { + // System.out.print(" Juni "); + // } + // else if (month == 7) { + // System.out.print(" Juli "); + // } + // else if (month == 8) { + // System.out.print(" Agustus "); + // } + // else if (month == 9) { + // System.out.print(" September "); + // } + // else if (month == 10) { + // System.out.print(" Oktober "); + // } + // else if (month == 11) { + // System.out.print(" November "); + // } + // else if (month == 12) { + // System.out.print(" Desember "); + + String tahun = a.substring(6, 8); + int year = Integer.parseInt (tahun); + if (year <= 23) { + System.out.print("20" + tahun); + } + else { + System.out.print("19" + tahun); + } + } +} \ No newline at end of file diff --git a/src/H071221028/Pertemuan_1/No6.java b/src/H071221028/Pertemuan_1/No6.java new file mode 100644 index 0000000..414d426 --- /dev/null +++ b/src/H071221028/Pertemuan_1/No6.java @@ -0,0 +1,18 @@ +package H071221028.Pertemuan_1; + +import java.util.Scanner; + +public class No6 { + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + + System.out.print("Input jari-jari: "); + double jariJari = scanner.nextDouble(); + + double area = (22.0 / 7.0) * jariJari * jariJari; + + System.out.printf("Luas lingkaran: %.2f\n", area); // pakai %.2f untuk 2 angka dibelakang koma + + scanner.close(); + } +} diff --git a/src/H071221028/Pertemuan_1/No7.java b/src/H071221028/Pertemuan_1/No7.java new file mode 100644 index 0000000..ebf997e --- /dev/null +++ b/src/H071221028/Pertemuan_1/No7.java @@ -0,0 +1,28 @@ +package H071221028.Pertemuan_1; + +import java.util.Scanner; + +public class No7 { + static String[] buah = {"Anggur", "Apel", "Belimbing", "Durian", "Rambutan", "Pisang", "Jeruk", "Semangka", "Nanas", +"Salak", "manggis"}; +public static void main(String[] args) { + Scanner inp = new Scanner(System.in); + System.out.print("Key: "); + String inputBuah = inp.next(); + int indexBuah = findIndex(inputBuah); + System.out.println(indexBuah); + inp.close(); +} +static int findIndex(String text){ + text = text.toLowerCase(); + int result = -1; + for (int i = 0; i < buah.length; i++) { + String buah1 = buah[i]; + buah1 = buah1.toLowerCase(); + if (buah1.equals(text)){ + result = i; + } + }; + return result; +} +} \ No newline at end of file diff --git a/src/H071221028/Pertemuan_1/No8.java b/src/H071221028/Pertemuan_1/No8.java new file mode 100644 index 0000000..c714c51 --- /dev/null +++ b/src/H071221028/Pertemuan_1/No8.java @@ -0,0 +1,34 @@ +package H071221028.Pertemuan_1; + +import java.util.Scanner; + +public class No8 { + public static void main(String[] args) { + int[][] angka = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9, }, { 10, 11 }, { 12 }, { 13, 14, 15, 16 } }; // menyimpan + // array + System.out.println(angka[0][2]); + Scanner inp = new Scanner(System.in); + + try { + System.out.print("Input angka yang ingin di cari : "); + int inputAngka = inp.nextInt(); + boolean found = false; + + for (int i = 0; i < angka.length; i++) { + for (int j = 0; j < angka[i].length; j++) { + int angka1 = angka[i][j]; + if (angka1 == inputAngka) { + System.out.println("Found" + inputAngka + " at [" + i + "][" + j + "]"); + break; + } + } + } + if (!found) { + System.out.println("Bilangan" + " " + inputAngka + " " + "tidak ditemukan pada bilangan"); + } + } catch (Exception e) { + System.out.println("Input harus berupa data integer (angka)"); + } + inp.close(); + } +} From d0751fe44f31f5cf7321bc43b1588770aa81fecd Mon Sep 17 00:00:00 2001 From: toku404 Date: Sat, 25 Mar 2023 11:55:16 +0800 Subject: [PATCH 02/14] init --- src/H071221028/Pertemuan_1/No1.java | 24 ----------- src/H071221028/Pertemuan_1/No2.java | 61 ---------------------------- src/H071221028/Pertemuan_1/No3.java | 32 --------------- src/H071221028/Pertemuan_1/No4.java | 41 ------------------- src/H071221028/Pertemuan_1/No5.java | 63 ----------------------------- src/H071221028/Pertemuan_1/No6.java | 18 --------- src/H071221028/Pertemuan_1/No7.java | 28 ------------- src/H071221028/Pertemuan_1/No8.java | 34 ---------------- src/H071221039/Pertemuan_1/No1.java | 23 +++++++++++ src/H071221039/Pertemuan_1/No2.java | 31 ++++++++++++++ src/H071221039/Pertemuan_1/No3.java | 22 ++++++++++ src/H071221039/Pertemuan_1/No4.java | 28 +++++++++++++ src/H071221039/Pertemuan_1/No5.java | 39 ++++++++++++++++++ src/H071221039/Pertemuan_1/No6.java | 19 +++++++++ src/H071221039/Pertemuan_1/No7.java | 27 +++++++++++++ src/H071221039/Pertemuan_1/No8.java | 32 +++++++++++++++ 16 files changed, 221 insertions(+), 301 deletions(-) delete mode 100644 src/H071221028/Pertemuan_1/No1.java delete mode 100644 src/H071221028/Pertemuan_1/No2.java delete mode 100644 src/H071221028/Pertemuan_1/No3.java delete mode 100644 src/H071221028/Pertemuan_1/No4.java delete mode 100644 src/H071221028/Pertemuan_1/No5.java delete mode 100644 src/H071221028/Pertemuan_1/No6.java delete mode 100644 src/H071221028/Pertemuan_1/No7.java delete mode 100644 src/H071221028/Pertemuan_1/No8.java create mode 100644 src/H071221039/Pertemuan_1/No1.java create mode 100644 src/H071221039/Pertemuan_1/No2.java create mode 100644 src/H071221039/Pertemuan_1/No3.java create mode 100644 src/H071221039/Pertemuan_1/No4.java create mode 100644 src/H071221039/Pertemuan_1/No5.java create mode 100644 src/H071221039/Pertemuan_1/No6.java create mode 100644 src/H071221039/Pertemuan_1/No7.java create mode 100644 src/H071221039/Pertemuan_1/No8.java diff --git a/src/H071221028/Pertemuan_1/No1.java b/src/H071221028/Pertemuan_1/No1.java deleted file mode 100644 index a2cbc87..0000000 --- a/src/H071221028/Pertemuan_1/No1.java +++ /dev/null @@ -1,24 +0,0 @@ -package H071221028.Pertemuan_1; - -import java.util.Scanner; - -public class No1 { // nama file classnya - public static void main(String[] args) { - String nim; // variable - Scanner keyboard = new Scanner(System.in); - System.out.print("Masukkan NIM: "); - nim = keyboard.next(); - String inp = nim.substring(nim.length() - 3); // memasukkan index yang diminta, -3 untuk 3 angka terakkhir - - int angka = Integer.parseInt(inp); // modifikasi tipedata - - if (angka % 7 == 0) { - System.out.println("soal: no 7"); - } else { - System.out.printf("soal : no %d\n", angka % 7); // %d untuk angka int - } - - keyboard.close(); - } - -} diff --git a/src/H071221028/Pertemuan_1/No2.java b/src/H071221028/Pertemuan_1/No2.java deleted file mode 100644 index 98904f0..0000000 --- a/src/H071221028/Pertemuan_1/No2.java +++ /dev/null @@ -1,61 +0,0 @@ -package H071221028.Pertemuan_1; - -import java.util.InputMismatchException; -import java.util.Scanner; - -public class No2 { - public static void main(String[] args) { - Scanner scanner = new Scanner(System.in); - - try { - int n = scanner.nextInt(); - - int countDecimal = 0; - int countInteger = 0; - - for (int i = 0; i < n; i++) { - float number = scanner.nextFloat(); - - if (number - (int)number > 0) { // angka - angka, jika agka menyisakan angka dibelakang koma akan masuk ke bilangan desimal - countDecimal++; - } else { - countInteger++; - } - } - - System.out.printf("%d Bilangan Bulat\n", countInteger); - System.out.printf("%d Bilangan Desimal\n", countDecimal); - } catch (InputMismatchException e) { - System.out.println("Please input a number!"); - e.printStackTrace(); - } - - scanner.close(); - } -} - - -// import java.util.Scanner; - -// public class Dua { -// public static void main(String[] args) { -// Scanner scanner = new Scanner(System.in); -// System.out.print("Masukkan jumlah bilangan: "); -// int n = scanner.nextInt(); -// int decimals = 0; -// int integers = 0; - -// for (int i = 0; i < n; i++) { -// System.out.print("Masukkan bilangan ke-" + (i+1) + ": "); -// double num = scanner.nextDouble(); -// if (num == (int) num) { -// integers++; -// } else { -// decimals++; -// } -// } - -// System.out.println("Jumlah bilangan decimal: " + decimals); -// System.out.println("Jumlah bilangan bulat: " + integers); -// } -// } diff --git a/src/H071221028/Pertemuan_1/No3.java b/src/H071221028/Pertemuan_1/No3.java deleted file mode 100644 index ff58991..0000000 --- a/src/H071221028/Pertemuan_1/No3.java +++ /dev/null @@ -1,32 +0,0 @@ -package H071221028.Pertemuan_1; - -import java.util.InputMismatchException; -import java.util.Scanner; - -public class No3 { - public static void main(String[] args) { - Scanner scanner = new Scanner(System.in); - - try { - System.out.print("Name : "); - String name = scanner.nextLine(); - - System.out.print("Umur : "); - int age = scanner.nextInt(); - - scanner.nextLine(); // hapus \n yang masih tersisa di aliran input - - - System.out.print("Hobby : "); - String hobby = scanner.nextLine(); - - System.out.printf("Nama saya %s, %d tahun, hobby %s.\n", name, age, hobby); - - } catch (InputMismatchException e) { - System.out.println("Please input with proper data format!"); - - } - - scanner.close(); - } -} diff --git a/src/H071221028/Pertemuan_1/No4.java b/src/H071221028/Pertemuan_1/No4.java deleted file mode 100644 index c48f928..0000000 --- a/src/H071221028/Pertemuan_1/No4.java +++ /dev/null @@ -1,41 +0,0 @@ -package H071221028.Pertemuan_1; - -import java.util.Scanner; - -public class No4 { - public static String capitalizeFirstCharacter(String sentence) { - String words[] = sentence.split("\\s"); - - String returnSentence = ""; - - // for (int i = 0; i < words.length; i++) { - // words[i] = words[i].substring(0, 1).toUpperCase() + words[i].substring(1).toLowerCase(); - - // returnSentence += words[i]; - // if (i < words.length - 1) { - // returnSentence += " "; - // } - // } - for (String word : words ){ - word = word.substring(0, 1).toUpperCase() + word.substring(1).toLowerCase(); - - returnSentence += word; - returnSentence += " "; - - - } - - return returnSentence; - } - - public static void main(String[] args) { - Scanner scanner = new Scanner(System.in); - - System.out.print("Masukkan Judul Film :\n> "); - String sentence = scanner.nextLine(); - - System.out.println(capitalizeFirstCharacter(sentence)); - - scanner.close(); - } -} diff --git a/src/H071221028/Pertemuan_1/No5.java b/src/H071221028/Pertemuan_1/No5.java deleted file mode 100644 index e3f7be4..0000000 --- a/src/H071221028/Pertemuan_1/No5.java +++ /dev/null @@ -1,63 +0,0 @@ -package H071221028.Pertemuan_1; - -import java.util.Scanner; - -public class No5 { - public static void main(String[] args) { - Scanner inp = new Scanner(System.in); - String a = inp.next(); - String hari = a.substring(0, 2); - System.out.print(Integer.parseInt(hari) + " "); // parseint untuk mengubah dari string ke int - String bulan = a.substring(3, 5); - int month = Integer.parseInt(bulan); - String [] bul = {"januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"} - ; - System.out.print(bul [month - 1] + " "); - - - // if (month == 1) { - // System.out.print(" Januari "); - // } - // else if (month == 2) { - // System.out.print(" Februari "); - // } - // else if (month == 3) { - // System.out.print(" Maret "); - // } - // else if (month == 4) { - // System.out.print(" April "); - // } - // else if (month == 5) { - // System.out.print(" Mei "); - // } - // else if (month == 6) { - // System.out.print(" Juni "); - // } - // else if (month == 7) { - // System.out.print(" Juli "); - // } - // else if (month == 8) { - // System.out.print(" Agustus "); - // } - // else if (month == 9) { - // System.out.print(" September "); - // } - // else if (month == 10) { - // System.out.print(" Oktober "); - // } - // else if (month == 11) { - // System.out.print(" November "); - // } - // else if (month == 12) { - // System.out.print(" Desember "); - - String tahun = a.substring(6, 8); - int year = Integer.parseInt (tahun); - if (year <= 23) { - System.out.print("20" + tahun); - } - else { - System.out.print("19" + tahun); - } - } -} \ No newline at end of file diff --git a/src/H071221028/Pertemuan_1/No6.java b/src/H071221028/Pertemuan_1/No6.java deleted file mode 100644 index 414d426..0000000 --- a/src/H071221028/Pertemuan_1/No6.java +++ /dev/null @@ -1,18 +0,0 @@ -package H071221028.Pertemuan_1; - -import java.util.Scanner; - -public class No6 { - public static void main(String[] args) { - Scanner scanner = new Scanner(System.in); - - System.out.print("Input jari-jari: "); - double jariJari = scanner.nextDouble(); - - double area = (22.0 / 7.0) * jariJari * jariJari; - - System.out.printf("Luas lingkaran: %.2f\n", area); // pakai %.2f untuk 2 angka dibelakang koma - - scanner.close(); - } -} diff --git a/src/H071221028/Pertemuan_1/No7.java b/src/H071221028/Pertemuan_1/No7.java deleted file mode 100644 index ebf997e..0000000 --- a/src/H071221028/Pertemuan_1/No7.java +++ /dev/null @@ -1,28 +0,0 @@ -package H071221028.Pertemuan_1; - -import java.util.Scanner; - -public class No7 { - static String[] buah = {"Anggur", "Apel", "Belimbing", "Durian", "Rambutan", "Pisang", "Jeruk", "Semangka", "Nanas", -"Salak", "manggis"}; -public static void main(String[] args) { - Scanner inp = new Scanner(System.in); - System.out.print("Key: "); - String inputBuah = inp.next(); - int indexBuah = findIndex(inputBuah); - System.out.println(indexBuah); - inp.close(); -} -static int findIndex(String text){ - text = text.toLowerCase(); - int result = -1; - for (int i = 0; i < buah.length; i++) { - String buah1 = buah[i]; - buah1 = buah1.toLowerCase(); - if (buah1.equals(text)){ - result = i; - } - }; - return result; -} -} \ No newline at end of file diff --git a/src/H071221028/Pertemuan_1/No8.java b/src/H071221028/Pertemuan_1/No8.java deleted file mode 100644 index c714c51..0000000 --- a/src/H071221028/Pertemuan_1/No8.java +++ /dev/null @@ -1,34 +0,0 @@ -package H071221028.Pertemuan_1; - -import java.util.Scanner; - -public class No8 { - public static void main(String[] args) { - int[][] angka = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9, }, { 10, 11 }, { 12 }, { 13, 14, 15, 16 } }; // menyimpan - // array - System.out.println(angka[0][2]); - Scanner inp = new Scanner(System.in); - - try { - System.out.print("Input angka yang ingin di cari : "); - int inputAngka = inp.nextInt(); - boolean found = false; - - for (int i = 0; i < angka.length; i++) { - for (int j = 0; j < angka[i].length; j++) { - int angka1 = angka[i][j]; - if (angka1 == inputAngka) { - System.out.println("Found" + inputAngka + " at [" + i + "][" + j + "]"); - break; - } - } - } - if (!found) { - System.out.println("Bilangan" + " " + inputAngka + " " + "tidak ditemukan pada bilangan"); - } - } catch (Exception e) { - System.out.println("Input harus berupa data integer (angka)"); - } - inp.close(); - } -} diff --git a/src/H071221039/Pertemuan_1/No1.java b/src/H071221039/Pertemuan_1/No1.java new file mode 100644 index 0000000..5816a36 --- /dev/null +++ b/src/H071221039/Pertemuan_1/No1.java @@ -0,0 +1,23 @@ +package H071221039.Pertemuan_1; + +import java.util.Scanner; // import library untuk menginput + +public class No1 { // bagian kelas, dimana nama kelas disesuaikan dengan nama file + public static void main (String[] args){ // main method tempat untuk mengeksekusi program + Scanner sc = new Scanner (System.in); // deklarasi variabel yang digunakan untuk menginput + int jumlahSoal,hasil; // deklarasi variabel + String nim = sc.next(); // mengisi variabel dengan menginput string + nim = nim.substring(nim.length()-3); // memotong string atau mengakses string berdasarkan index untuk memperoleh angka terkahir NIM + System.out.println(nim); // menampilkan output + int nimInt = Integer.parseInt(nim); // mengubah tipe variabel string menjadi variabel + jumlahSoal = 7; // mengisi jumlah soal sesuai dengan soal + hasil = nimInt % jumlahSoal; // 3 angka terkahir nim dimodulokan dgn jumlah soal + if (hasil == 0 ){ // jika hasilnya = 0 maka outputnya adalah jumlah soal sendiri + System.out.println(jumlahSoal); + } else { // jika tidak maka outputnya adalah hasilnya sendiri + System.out.println(hasil); + } + sc.close(); // menutup inputan setelah digunakan + } + +} \ No newline at end of file diff --git a/src/H071221039/Pertemuan_1/No2.java b/src/H071221039/Pertemuan_1/No2.java new file mode 100644 index 0000000..3c0bdb3 --- /dev/null +++ b/src/H071221039/Pertemuan_1/No2.java @@ -0,0 +1,31 @@ +package H071221039.Pertemuan_1; + +import java.util.Scanner; // import library untuk menginput +public class No2 { // bagian kelas, dimana nama kelas disesuaikan dengan nama file + public static void main(String[] args){ // main method tempat untuk mengeksekusi program + try{ // digunakan untuk menangkap error + Scanner sc = new Scanner(System.in); // deklarasi variabel yang digunakan untuk menginput + int n = sc.nextInt(); // mengisi variabel dengan menginput + Double[] nums = new Double[n]; // deklarasi array dengan panjang sesuai inputan + int panjangBulat,panjangDesimal; // deklarasi variabel + panjangBulat = 0; // mengisi nilai variabel + panjangDesimal = 0; // mengisi nilai variabel + + for (int i = 0; i -1 && intTahun < 24){ // jika tahun yang diinput lebih dari -1 dan kurang dari 24 + int tahunFix = intTahun + 2000; // maka akan ditambah 2000, patokan tahun ini + System.out.println(intTanggal + " " + namaBulan[intBulan-1] + " " + tahunFix); // menampilkan output dengan array namaBulan - 1 disebabkan index mulai dari 0 + return; + } else if (intTahun > 23 && intTahun < 100); // jika tahun yang diinput lebih dari 23 dan kurang dari 100 + int tahunFix = intTahun + 1900; // maka akan ditambah 1900 + System.out.println(intTanggal + " " + namaBulan[intBulan-1] + " " + tahunFix); // menampilkan output dengan array namaBulan - 1 disebabkan index mulai dari 0 + } + + } + + + + diff --git a/src/H071221039/Pertemuan_1/No6.java b/src/H071221039/Pertemuan_1/No6.java new file mode 100644 index 0000000..65f7da7 --- /dev/null +++ b/src/H071221039/Pertemuan_1/No6.java @@ -0,0 +1,19 @@ +package H071221039.Pertemuan_1; + +import java.util.Scanner; // import library untuk menginput +public class No6 { // bagian kelas, dimana nama kelas disesuaikan dengan nama file + public static void main(String[] args){ // main method tempat untuk mengeksekusi program + try{ // menangkap error + Scanner sc = new Scanner (System.in); // deklarasi variabel yang digunakan untuk menginput + System.out.print("Input Jari-Jari Lingkaran : "); // manampilkan output sebagai tempat inputan + double r,phi,hasil; // deklarasi variabel + phi = 3.14; // nilai phi + r = sc.nextFloat(); // menginput jari-jari + hasil = phi * r * r; // rumus lingkaran + System.out.printf("%.2f",hasil); // menampilkan output dgn print format kemudia membatasi 2 angka dibelakang koma + sc.close(); // menutup inputan + } catch (Exception e){ // menangkap error + System.out.println("Inputan bukan angka"); // jika terdapat error maka baris ini yang akan menjadi outputnya + } + } +} diff --git a/src/H071221039/Pertemuan_1/No7.java b/src/H071221039/Pertemuan_1/No7.java new file mode 100644 index 0000000..654546a --- /dev/null +++ b/src/H071221039/Pertemuan_1/No7.java @@ -0,0 +1,27 @@ +package H071221039.Pertemuan_1; + +import java.util.Scanner; // import library untuk menginput + +public class No7 { // bagian kelas, dimana nama kelas disesuaikan dengan nama file + public static void main(String[] args) { // main method tempat untuk mengeksekusi program + Scanner sc = new Scanner(System.in); // deklarasi variabel yang digunakan untuk menginput + String buah = sc.next(); // manampilkan output sebagai tempat inputan + sc.close(); // menutp inputan + System.out.println(findIndex(buah)); // memanggil method dengan print karena method yang mengembalikan nilai + + } + + public static int findIndex(String buah) { // membuat method dengan paramater inputan + String[] arrBuah = { "Coconut", "Apple", "Banana", "Strawberry" }; // membuat array tipe string + int index = -1; // membuat variabel dengan nilai -1 untuk dikembalikan jika inputan tidak ada + // dalam array + for (int i = 0; i < arrBuah.length; i++) { // melakukan perulangan untuk mengakses nilai array + if (buah.equalsIgnoreCase(arrBuah[i])) { // membandingkan inputan dengan nilai yang ada disetiap index tanpa + // memandang kapital + index = i; // mengubah nilai index menjadi i jika sesuai dengan isi array + return index; // mengembalikan index + } + } + return index; // jika tidak terdapat maka mengembalikan index -1 + } +} diff --git a/src/H071221039/Pertemuan_1/No8.java b/src/H071221039/Pertemuan_1/No8.java new file mode 100644 index 0000000..22db888 --- /dev/null +++ b/src/H071221039/Pertemuan_1/No8.java @@ -0,0 +1,32 @@ +import java.util.Scanner; // import library untuk menginput +public class No8 { // bagian kelas, dimana nama kelas disesuaikan dengan nama file + public static void main(String[] args) { // main method tempat untuk mengeksekusi program + try{ // menangkap error + Scanner sc = new Scanner(System.in); // manampilkan output sebagai tempat inputan + int[][] num = { // membuat array 2d dengan tipe integer + {1,2,3}, + {4,5,6}, + {7,8,9} + }; + boolean isFound = false; // membuat boolean untuk menghentikan program + int n = sc.nextInt(); // input angka yang akan dicari tipe integer + sc.close();// menutup inputan + for (int i = 0; i < num.length; i++ ){ // melakukan perulangan pertama untuk mengakses index pertama array + for (int j = 0 ; j < num[i].length; j++){ // melakukan perulangan kedua untuk mengakses index kedua array + if (num[i][j]==n){ // jika nilai dari index sama dengan inputan + System.out.printf("Found %d at [%d][%d]\n",n,i,j); // maka akan menampilkan angka yang diinput dan dia berada pada index keberapa + isFound = true; // boolean berubah jadi true + break; // ketika boolean true atau sudah mendapat output yang sesuai maka perulangan berhenti + } + } + if(isFound){ + break; // jika belum menemukan maka akan break pada perulangan pertama + } + } + + } catch(Exception e){ // menangkap error + System.out.println("Inputan Bukan Angka"); // // jika terdapat error maka baris ini yang akan menjadi outputnya + } + } + +} From e4a1a1bf1f413cfd7149ebdb67213d24874c2ca9 Mon Sep 17 00:00:00 2001 From: toku404 Date: Sat, 25 Mar 2023 11:56:10 +0800 Subject: [PATCH 03/14] reupload --- src/H071221039/Pertemuan_1/No1.java | 23 ----------- src/H071221039/Pertemuan_1/No2.java | 31 --------------- src/H071221039/Pertemuan_1/No3.java | 22 ----------- src/H071221039/Pertemuan_1/No4.java | 28 -------------- src/H071221039/Pertemuan_1/No5.java | 39 ------------------- src/H071221039/Pertemuan_1/No6.java | 19 ---------- src/H071221039/Pertemuan_1/No7.java | 27 ------------- src/H071221039/Pertemuan_1/No8.java | 32 ---------------- src/H071221066/Pertemuan_1/No1.java | 25 ++++++++++++ src/H071221066/Pertemuan_1/No2.java | 40 +++++++++++++++++++ src/H071221066/Pertemuan_1/No3.java | 36 ++++++++++++++++++ src/H071221066/Pertemuan_1/No4.java | 24 ++++++++++++ src/H071221066/Pertemuan_1/No5.java | 33 ++++++++++++++++ src/H071221066/Pertemuan_1/No6.java | 28 ++++++++++++++ src/H071221066/Pertemuan_1/No7.java | 33 ++++++++++++++++ src/H071221066/Pertemuan_1/No8.java | 29 ++++++++++++++ src/H071221066/Pertemuan_2/No1.java | 41 ++++++++++++++++++++ src/H071221066/Pertemuan_2/No2.java | 47 +++++++++++++++++++++++ src/H071221066/Pertemuan_2/No3.java | 59 +++++++++++++++++++++++++++++ src/H071221066/Pertemuan_2/No4.java | 25 ++++++++++++ src/H071221066/Pertemuan_2/No5.java | 46 ++++++++++++++++++++++ 21 files changed, 466 insertions(+), 221 deletions(-) delete mode 100644 src/H071221039/Pertemuan_1/No1.java delete mode 100644 src/H071221039/Pertemuan_1/No2.java delete mode 100644 src/H071221039/Pertemuan_1/No3.java delete mode 100644 src/H071221039/Pertemuan_1/No4.java delete mode 100644 src/H071221039/Pertemuan_1/No5.java delete mode 100644 src/H071221039/Pertemuan_1/No6.java delete mode 100644 src/H071221039/Pertemuan_1/No7.java delete mode 100644 src/H071221039/Pertemuan_1/No8.java create mode 100644 src/H071221066/Pertemuan_1/No1.java create mode 100644 src/H071221066/Pertemuan_1/No2.java create mode 100644 src/H071221066/Pertemuan_1/No3.java create mode 100644 src/H071221066/Pertemuan_1/No4.java create mode 100644 src/H071221066/Pertemuan_1/No5.java create mode 100644 src/H071221066/Pertemuan_1/No6.java create mode 100644 src/H071221066/Pertemuan_1/No7.java create mode 100644 src/H071221066/Pertemuan_1/No8.java create mode 100644 src/H071221066/Pertemuan_2/No1.java create mode 100644 src/H071221066/Pertemuan_2/No2.java create mode 100644 src/H071221066/Pertemuan_2/No3.java create mode 100644 src/H071221066/Pertemuan_2/No4.java create mode 100644 src/H071221066/Pertemuan_2/No5.java diff --git a/src/H071221039/Pertemuan_1/No1.java b/src/H071221039/Pertemuan_1/No1.java deleted file mode 100644 index 5816a36..0000000 --- a/src/H071221039/Pertemuan_1/No1.java +++ /dev/null @@ -1,23 +0,0 @@ -package H071221039.Pertemuan_1; - -import java.util.Scanner; // import library untuk menginput - -public class No1 { // bagian kelas, dimana nama kelas disesuaikan dengan nama file - public static void main (String[] args){ // main method tempat untuk mengeksekusi program - Scanner sc = new Scanner (System.in); // deklarasi variabel yang digunakan untuk menginput - int jumlahSoal,hasil; // deklarasi variabel - String nim = sc.next(); // mengisi variabel dengan menginput string - nim = nim.substring(nim.length()-3); // memotong string atau mengakses string berdasarkan index untuk memperoleh angka terkahir NIM - System.out.println(nim); // menampilkan output - int nimInt = Integer.parseInt(nim); // mengubah tipe variabel string menjadi variabel - jumlahSoal = 7; // mengisi jumlah soal sesuai dengan soal - hasil = nimInt % jumlahSoal; // 3 angka terkahir nim dimodulokan dgn jumlah soal - if (hasil == 0 ){ // jika hasilnya = 0 maka outputnya adalah jumlah soal sendiri - System.out.println(jumlahSoal); - } else { // jika tidak maka outputnya adalah hasilnya sendiri - System.out.println(hasil); - } - sc.close(); // menutup inputan setelah digunakan - } - -} \ No newline at end of file diff --git a/src/H071221039/Pertemuan_1/No2.java b/src/H071221039/Pertemuan_1/No2.java deleted file mode 100644 index 3c0bdb3..0000000 --- a/src/H071221039/Pertemuan_1/No2.java +++ /dev/null @@ -1,31 +0,0 @@ -package H071221039.Pertemuan_1; - -import java.util.Scanner; // import library untuk menginput -public class No2 { // bagian kelas, dimana nama kelas disesuaikan dengan nama file - public static void main(String[] args){ // main method tempat untuk mengeksekusi program - try{ // digunakan untuk menangkap error - Scanner sc = new Scanner(System.in); // deklarasi variabel yang digunakan untuk menginput - int n = sc.nextInt(); // mengisi variabel dengan menginput - Double[] nums = new Double[n]; // deklarasi array dengan panjang sesuai inputan - int panjangBulat,panjangDesimal; // deklarasi variabel - panjangBulat = 0; // mengisi nilai variabel - panjangDesimal = 0; // mengisi nilai variabel - - for (int i = 0; i -1 && intTahun < 24){ // jika tahun yang diinput lebih dari -1 dan kurang dari 24 - int tahunFix = intTahun + 2000; // maka akan ditambah 2000, patokan tahun ini - System.out.println(intTanggal + " " + namaBulan[intBulan-1] + " " + tahunFix); // menampilkan output dengan array namaBulan - 1 disebabkan index mulai dari 0 - return; - } else if (intTahun > 23 && intTahun < 100); // jika tahun yang diinput lebih dari 23 dan kurang dari 100 - int tahunFix = intTahun + 1900; // maka akan ditambah 1900 - System.out.println(intTanggal + " " + namaBulan[intBulan-1] + " " + tahunFix); // menampilkan output dengan array namaBulan - 1 disebabkan index mulai dari 0 - } - - } - - - - diff --git a/src/H071221039/Pertemuan_1/No6.java b/src/H071221039/Pertemuan_1/No6.java deleted file mode 100644 index 65f7da7..0000000 --- a/src/H071221039/Pertemuan_1/No6.java +++ /dev/null @@ -1,19 +0,0 @@ -package H071221039.Pertemuan_1; - -import java.util.Scanner; // import library untuk menginput -public class No6 { // bagian kelas, dimana nama kelas disesuaikan dengan nama file - public static void main(String[] args){ // main method tempat untuk mengeksekusi program - try{ // menangkap error - Scanner sc = new Scanner (System.in); // deklarasi variabel yang digunakan untuk menginput - System.out.print("Input Jari-Jari Lingkaran : "); // manampilkan output sebagai tempat inputan - double r,phi,hasil; // deklarasi variabel - phi = 3.14; // nilai phi - r = sc.nextFloat(); // menginput jari-jari - hasil = phi * r * r; // rumus lingkaran - System.out.printf("%.2f",hasil); // menampilkan output dgn print format kemudia membatasi 2 angka dibelakang koma - sc.close(); // menutup inputan - } catch (Exception e){ // menangkap error - System.out.println("Inputan bukan angka"); // jika terdapat error maka baris ini yang akan menjadi outputnya - } - } -} diff --git a/src/H071221039/Pertemuan_1/No7.java b/src/H071221039/Pertemuan_1/No7.java deleted file mode 100644 index 654546a..0000000 --- a/src/H071221039/Pertemuan_1/No7.java +++ /dev/null @@ -1,27 +0,0 @@ -package H071221039.Pertemuan_1; - -import java.util.Scanner; // import library untuk menginput - -public class No7 { // bagian kelas, dimana nama kelas disesuaikan dengan nama file - public static void main(String[] args) { // main method tempat untuk mengeksekusi program - Scanner sc = new Scanner(System.in); // deklarasi variabel yang digunakan untuk menginput - String buah = sc.next(); // manampilkan output sebagai tempat inputan - sc.close(); // menutp inputan - System.out.println(findIndex(buah)); // memanggil method dengan print karena method yang mengembalikan nilai - - } - - public static int findIndex(String buah) { // membuat method dengan paramater inputan - String[] arrBuah = { "Coconut", "Apple", "Banana", "Strawberry" }; // membuat array tipe string - int index = -1; // membuat variabel dengan nilai -1 untuk dikembalikan jika inputan tidak ada - // dalam array - for (int i = 0; i < arrBuah.length; i++) { // melakukan perulangan untuk mengakses nilai array - if (buah.equalsIgnoreCase(arrBuah[i])) { // membandingkan inputan dengan nilai yang ada disetiap index tanpa - // memandang kapital - index = i; // mengubah nilai index menjadi i jika sesuai dengan isi array - return index; // mengembalikan index - } - } - return index; // jika tidak terdapat maka mengembalikan index -1 - } -} diff --git a/src/H071221039/Pertemuan_1/No8.java b/src/H071221039/Pertemuan_1/No8.java deleted file mode 100644 index 22db888..0000000 --- a/src/H071221039/Pertemuan_1/No8.java +++ /dev/null @@ -1,32 +0,0 @@ -import java.util.Scanner; // import library untuk menginput -public class No8 { // bagian kelas, dimana nama kelas disesuaikan dengan nama file - public static void main(String[] args) { // main method tempat untuk mengeksekusi program - try{ // menangkap error - Scanner sc = new Scanner(System.in); // manampilkan output sebagai tempat inputan - int[][] num = { // membuat array 2d dengan tipe integer - {1,2,3}, - {4,5,6}, - {7,8,9} - }; - boolean isFound = false; // membuat boolean untuk menghentikan program - int n = sc.nextInt(); // input angka yang akan dicari tipe integer - sc.close();// menutup inputan - for (int i = 0; i < num.length; i++ ){ // melakukan perulangan pertama untuk mengakses index pertama array - for (int j = 0 ; j < num[i].length; j++){ // melakukan perulangan kedua untuk mengakses index kedua array - if (num[i][j]==n){ // jika nilai dari index sama dengan inputan - System.out.printf("Found %d at [%d][%d]\n",n,i,j); // maka akan menampilkan angka yang diinput dan dia berada pada index keberapa - isFound = true; // boolean berubah jadi true - break; // ketika boolean true atau sudah mendapat output yang sesuai maka perulangan berhenti - } - } - if(isFound){ - break; // jika belum menemukan maka akan break pada perulangan pertama - } - } - - } catch(Exception e){ // menangkap error - System.out.println("Inputan Bukan Angka"); // // jika terdapat error maka baris ini yang akan menjadi outputnya - } - } - -} diff --git a/src/H071221066/Pertemuan_1/No1.java b/src/H071221066/Pertemuan_1/No1.java new file mode 100644 index 0000000..0089dae --- /dev/null +++ b/src/H071221066/Pertemuan_1/No1.java @@ -0,0 +1,25 @@ +package H071221066.Pertemuan_1; +//import scanner +import java.util.Scanner; +public class No1 { + public static void main(String[] args){ +//buat scanner baru + Scanner input = new Scanner(System.in); +//deklarasi variabel NIM dengan string dan var soal dengan int + String nim; + int soal; +//buat inputan + System.out.print("NIM : "); + nim = input.next(); +//mengambil NIM dengan indeks ke 7 lalu dimasukkan ke variabel soal + soal = Integer.parseInt(nim.substring(nim.length()-3)); + +//membuat kondisi + if (soal % 7 == 0) { + System.out.println("Soal : No 7"); + }else { + System.out.println("Soal : No " + soal%7); + input.close(); + } + } +} diff --git a/src/H071221066/Pertemuan_1/No2.java b/src/H071221066/Pertemuan_1/No2.java new file mode 100644 index 0000000..f2292a9 --- /dev/null +++ b/src/H071221066/Pertemuan_1/No2.java @@ -0,0 +1,40 @@ +package H071221066.Pertemuan_1; +//import module scanner +import java.util.Scanner; + +public class No2 { + + public static void main(String[] args) { +//menggunakann try catch untuk menangani jika terjadi error pada program + try{ +//mendeklarasi variabel bilangan desimal dan bilangan bulat dengan int + int desimal = 0; + int bulat = 0; +//membuat scanner baru untuk mengambil input user + Scanner inp = new Scanner(System.in); +//memasukkan inputan + System.out.print("Masukkan jumlah bilangan: "); + int n = inp.nextInt(); + +//membuat perulangan yang menentukan panjang angka yang diinput + for (int i = 0; i < n; i++) { + double num = inp.nextDouble(); + +//kemudian num-nya dibuatkan kondisi + if (num % 1 == 0) { + bulat++; + } else { + desimal++; + } + } +//menampilkan output + System.out.println(bulat + " Bilangan Bulat"); + System.out.println(desimal + " Bilangan Desimal"); + inp.close(); + +//catch akan dijalankan apabila umur yang dimasukkan bukan angka + }catch (Exception e) { + System.out.println("Hanya bisa menerima angka"); + } + } +} diff --git a/src/H071221066/Pertemuan_1/No3.java b/src/H071221066/Pertemuan_1/No3.java new file mode 100644 index 0000000..de05d87 --- /dev/null +++ b/src/H071221066/Pertemuan_1/No3.java @@ -0,0 +1,36 @@ +package H071221066.Pertemuan_1; +//mengimport Scanner +import java.util.Scanner; + +public class No3 { + public static void main(String[] args){ +//menggunakann try catch untuk menangani jika terjadi error pada program + try { +//membuat scanner baru + Scanner input = new Scanner(System.in); +//mendeklarasikan variabel nama dan hobby menggunakan string, sedangkan umur menggunakan int + String name, hobby; + int umur; + +//meminta inputan ke user + System.out.print("Nama : "); + name = input.nextLine(); + + System.out.print("Umur : "); + umur = input.nextInt(); + +//.nextLine() perlu ditambahkan karena jika .nextInt berada dibawah .nextLine maka baris selanjutnya akan dilewati + input.nextLine(); + System.out.print("Hobby : "); + hobby = input.nextLine(); + +//menampilkan output + input.close(); + System.out.print("Nama saya " + name + ", " + umur + " tahun, " + "hobby " + hobby); + +//catch akan dijalankan apabila umur yang dimasukkan bukan angka + }catch (Exception e) { + System.out.print("Umur yang diinput bukan angka"); + } + } +} diff --git a/src/H071221066/Pertemuan_1/No4.java b/src/H071221066/Pertemuan_1/No4.java new file mode 100644 index 0000000..a1722ed --- /dev/null +++ b/src/H071221066/Pertemuan_1/No4.java @@ -0,0 +1,24 @@ +package H071221066.Pertemuan_1; +//mengimport scanner +import java.util.Scanner; + +public class No4 { + public static void main(String[] args) { +//membuat scanner baru + Scanner inputKalimat = new Scanner(System.in); +//meminta inputan ke user + System.out.print("Masukkan kalimat: "); + String kalimat = inputKalimat.nextLine(); +//mengambil variabel string kalimat lalu mengubah menjadi huruf kecil dan membagi string dengan spasi + String[] kata = kalimat.toLowerCase().split(" "); + String kalimatBaru = ""; +//membuat perulangan untuk menambah huruf selanjutnya setelah indeks pertama dari kaata di ubah menjadi kapital + for (int i = 0; i < kata.length; i++) { + kalimatBaru += kata[i].toUpperCase().charAt(0) + kata[i].substring(1) + " "; + } + +//menampilkan output + System.out.println("Kalimat setelah diubah: " + kalimatBaru); + inputKalimat.close(); + } +} \ No newline at end of file diff --git a/src/H071221066/Pertemuan_1/No5.java b/src/H071221066/Pertemuan_1/No5.java new file mode 100644 index 0000000..acc8ea4 --- /dev/null +++ b/src/H071221066/Pertemuan_1/No5.java @@ -0,0 +1,33 @@ +package H071221066.Pertemuan_1; +//import Scanner +import java.util.Scanner; + +public class No5 { + public static void main(String[] args){ +//membuat scanner baru + Scanner input = new Scanner (System.in); + String x = input.next(); + +//.substring digunakan u/ mengambil beberapa karakter dari kalimat yang diinput menggunakan index + String hari = x.substring(0,2); +//Integer.parseInt digunkan untuk mengonversi string ke int + System.out.print(Integer.parseInt(hari)); + + String bulan = x.substring(3, 5); + int month = Integer.parseInt(bulan); +//menggunakan array + String months[] = {"Januari", "Februari", "Maret", "April", "Mei", "Juni", "juli", "Agustus", "September", "Oktober", "November", "Desember"}; + System.out.print(" " + months[month-1]+" "); + + String tahun = x.substring(6, 8); + int year = Integer.parseInt(tahun); + +//membuat kondisi untuk menentukan tahun + if (year <= 23) { + System.out.println("20" + tahun); + }else { + System.out.println("19" + tahun); + } + input.close(); + } +} diff --git a/src/H071221066/Pertemuan_1/No6.java b/src/H071221066/Pertemuan_1/No6.java new file mode 100644 index 0000000..0c61203 --- /dev/null +++ b/src/H071221066/Pertemuan_1/No6.java @@ -0,0 +1,28 @@ +package H071221066.Pertemuan_1; +//mengimport scanner +import java.util.Scanner; + +public class No6 { + public static void main (String[] args){ +//menggunakann try catch untuk menangani jika terjadi error pada program + try { + Scanner inputLingkaran = new Scanner(System.in); +//deklarasi variabel r sebagai jari-jari, luas, dan juga nilai phi + double r, luas, phi = 3.14; +//input nilai jari-jari + System.out.print("Jari-jari lingkaran : "); + r = inputLingkaran.nextDouble(); + +//rumus menghitung luas lingkaran + luas = phi*Math.pow(r, 2); + +//program dijalankan dengan print format, karena pada soal harus menampilkan output 2 angka dibelakang koma + System.out.printf("Luas lingkaran adalah: %.2f", luas); + inputLingkaran.close(); + +//catch dijalankan apabila inputan yang dimasukkan bukan angka + }catch (Exception e) { + System.out.print("input yang dimasukkan bukan angka"); + } + } +} diff --git a/src/H071221066/Pertemuan_1/No7.java b/src/H071221066/Pertemuan_1/No7.java new file mode 100644 index 0000000..316d1c8 --- /dev/null +++ b/src/H071221066/Pertemuan_1/No7.java @@ -0,0 +1,33 @@ +package H071221066.Pertemuan_1; + +//import scanner +import java.util.Scanner; + +public class No7 { + public static void main(String[] args){ +//membuat scanner baru dan meminta inputan + Scanner inp = new Scanner(System.in); + System.out.print("input bunga : "); + String flower = inp.nextLine(); + int hasil = findIndex(flower); + System.out.println("ditemukan di indeks " + hasil); + + inp.close(); + } +//membuat method findIndex u/ mengecek indeks teks yang diinput + public static int findIndex(String teks) { +//membuat array dengan tipe string + String bunga[] = {"Mawar", "melati", "kamboja", "matahari", "anggrek"}; + int indeks= 0; +//membuat perulangan kemudian mengembalikan indeks + for (String b : bunga) { + if (b.equalsIgnoreCase(teks)){ + return indeks; + } + indeks++; + } +//mengembalikan -1 jika inputan tidak terdaftar dalam array + return -1; + } +} + diff --git a/src/H071221066/Pertemuan_1/No8.java b/src/H071221066/Pertemuan_1/No8.java new file mode 100644 index 0000000..ba32798 --- /dev/null +++ b/src/H071221066/Pertemuan_1/No8.java @@ -0,0 +1,29 @@ +package H071221066.Pertemuan_1; +//import scanner +import java.util.Scanner; + +public class No8 { + public static void main(String[] args) { +//menggunakan try catch untuk penanganan error + try { +//membuat array 2d + int[][] nums = {{1, 2, 3}, {4, 5, 6, 10}, {7, 8, 9}}; + Scanner inp = new Scanner(System.in); + int angka = inp.nextInt(); + inp.close(); + +//menggunakan 2 perulangan untuk mencari letak baris dan kolom dari inputan yang dimasukkan + for (int i = 0; i < nums.length; i++) { + for (int j = 0; j < nums[i].length; j++) { + if (nums[i] [j] == angka ) { + System.out.println("Found " + angka + " at " + i + " " + j); + return; + } + } + } +//catch akan dijalankan apabila inputan yang dimasukkan bukan angka + }catch(Exception e) { + System.out.println("Hanya bisa menerima angka"); + } + } +} diff --git a/src/H071221066/Pertemuan_2/No1.java b/src/H071221066/Pertemuan_2/No1.java new file mode 100644 index 0000000..99586a6 --- /dev/null +++ b/src/H071221066/Pertemuan_2/No1.java @@ -0,0 +1,41 @@ +package H071221066.Pertemuan_2; + +//NO.1 + +class Negara { + //atribut + String nama; + String ibuKota; + int jumlahProvinsi; + + //behavior + public String getNama() { + return nama; + } + public String getIbuKota() { + return ibuKota; + } + public int getJumlahProv() { + return jumlahProvinsi; + } + public void tambahProv(int jumlah) { + jumlahProvinsi += jumlah; + } +} + + public class No1 { + public static void main(String[] args) { + Negara negara = new Negara(); + negara.nama = "Indonesia"; + negara.ibuKota = "Jakarta"; + negara.jumlahProvinsi = 37; + + //menambah nilai pada atribut + negara.tambahProv(1); + + System.out.println("Nama negara : " + negara.getNama()); + System.out.println("Ibu kota : " + negara.getIbuKota()); + System.out.println("Jumlah Provinsi : " + negara.getJumlahProv()); + } + } + diff --git a/src/H071221066/Pertemuan_2/No2.java b/src/H071221066/Pertemuan_2/No2.java new file mode 100644 index 0000000..3c843de --- /dev/null +++ b/src/H071221066/Pertemuan_2/No2.java @@ -0,0 +1,47 @@ +package H071221066.Pertemuan_2; + +//NO 2 + +class Personn { + private String name; + private int age; + private boolean isMale; + + public void setName(String name) { + this.name = name; + } + + public String getName() { + return this.name; + } + + public void setAge(int age) { + this.age = age; + } + + public int getAge() { + return this.age; + } + + public void setGender(String gender) { + this.isMale = gender == "Male"; + } + + public String getGender() { + return this.isMale ? "Male" : "Female"; + } +} +public class No2 { + public static void main(String[] args) { + Personn person = new Personn(); + + person.setName("Din"); + person.setAge(19); + person.setGender("female"); + + System.out.println("Name: " + person.getName()); + System.out.println("Age: " + person.getAge()); + System.out.println("Gender: " + person.getGender()); + } +} + diff --git a/src/H071221066/Pertemuan_2/No3.java b/src/H071221066/Pertemuan_2/No3.java new file mode 100644 index 0000000..2b40157 --- /dev/null +++ b/src/H071221066/Pertemuan_2/No3.java @@ -0,0 +1,59 @@ +package H071221066.Pertemuan_2; +//NO 3 + +class Product { + private int id; + private String nama; + private int stok; + private double harga; + + public Product(int id, String nama, int stok, double harga) { + this.id = id; + this.nama = nama; + this.stok = stok; + this.harga = harga; + } + + public int getId() { + return id; + } + + public String getNama() { + return nama; + } + + public int getStok() { + return stok; + } + + public double getHarga() { + return harga; + } + + public boolean isAvaliable() { + return stok > 0; + } + +} + +public class No3 { + public static void main(String[] args) { + Product produk1 = new Product(111, "Sabun", 50, 4000); + Product produk2 = new Product(222, "Shampoo", 0, 10000); + + System.out.println("ID produk 1: " + produk1.getId()); + System.out.println("Nama produk 1: " + produk1.getNama()); + System.out.println("Stok produk 1: " + produk1.getStok()); + System.out.println("Harga produk 1: " + produk1.getHarga()); + System.out.println("Apakah produk 1 tersedia di stok? " + produk1.isAvaliable()); + + + System.out.println("========================================"); + + System.out.println("ID produk 2: " + produk2.getId()); + System.out.println("Nama produk 2: " + produk2.getNama()); + System.out.println("Stok produk 2: " + produk2.getStok()); + System.out.println("Harga produk 2: " + produk2.getHarga()); + System.out.println("Apakah produk 2 tersedia di stok? " + produk2.isAvaliable()); + } +} diff --git a/src/H071221066/Pertemuan_2/No4.java b/src/H071221066/Pertemuan_2/No4.java new file mode 100644 index 0000000..52d5451 --- /dev/null +++ b/src/H071221066/Pertemuan_2/No4.java @@ -0,0 +1,25 @@ +package H071221066.Pertemuan_2; + +//NO.4 + +class Cuboid { + double height; + double width; + double lenght; + + double getVolume(){ + return height*width*lenght; + } +} + +public class No4 { + public static void main(String[] args) { + Cuboid cuboid = new Cuboid(); + cuboid.height = 10.0; + cuboid.width = 15.0; + cuboid.lenght = 30.0; + + System.out.printf("Volume = %.2f", cuboid.getVolume()); + + } +} \ No newline at end of file diff --git a/src/H071221066/Pertemuan_2/No5.java b/src/H071221066/Pertemuan_2/No5.java new file mode 100644 index 0000000..b94f111 --- /dev/null +++ b/src/H071221066/Pertemuan_2/No5.java @@ -0,0 +1,46 @@ +package H071221066.Pertemuan_2; + +class Mahasiswa { + String nama; + String nim; + Alamat alamat; + + public String getNama() { + return nama; + } + + public String getNim() { + return nim; + } + + public Alamat getAlamat() { + return alamat; + } +} + +class Alamat { + String jalan; + String kota; + + + public String getAlamatLengkap() { + return jalan + ", " + kota; + } +} + +public class No5 { + public static void main(String[] args) { + Alamat alamat = new Alamat(); + alamat.jalan = "Tanjung Bunga"; + alamat.kota = "Makassar"; + + Mahasiswa mahasiswa = new Mahasiswa(); + mahasiswa.alamat = alamat; + mahasiswa.nama = "Zabryna Andiny"; + mahasiswa.nim = "H071221066"; + + System.out.println("Nama : " + mahasiswa.getNama()); + System.out.println("Nim : " + mahasiswa.getNim()); + System.out.println("Alamat : " + mahasiswa.getAlamat().getAlamatLengkap()); + } +} From 338d30509fb8ebf8dcb3cc4af25584ad8ec1235c Mon Sep 17 00:00:00 2001 From: toku404 Date: Sat, 25 Mar 2023 11:56:47 +0800 Subject: [PATCH 04/14] reupload --- src/H071221066/Pertemuan_1/No1.java | 25 ------- src/H071221066/Pertemuan_1/No2.java | 40 ------------ src/H071221066/Pertemuan_1/No3.java | 36 ---------- src/H071221066/Pertemuan_1/No4.java | 24 ------- src/H071221066/Pertemuan_1/No5.java | 33 ---------- src/H071221066/Pertemuan_1/No6.java | 28 -------- src/H071221066/Pertemuan_1/No7.java | 33 ---------- src/H071221066/Pertemuan_1/No8.java | 29 --------- src/H071221066/Pertemuan_2/No1.java | 41 ------------ src/H071221066/Pertemuan_2/No2.java | 47 -------------- src/H071221066/Pertemuan_2/No3.java | 59 ----------------- src/H071221066/Pertemuan_2/No4.java | 25 ------- src/H071221077/Pertemuan_1/No1.java | 24 +++++++ src/H071221077/Pertemuan_1/No2.java | 33 ++++++++++ src/H071221077/Pertemuan_1/No3.java | 26 ++++++++ src/H071221077/Pertemuan_1/No4.java | 30 +++++++++ src/H071221077/Pertemuan_1/No5.java | 41 ++++++++++++ src/H071221077/Pertemuan_1/No6.java | 25 +++++++ src/H071221077/Pertemuan_1/No7.java | 24 +++++++ src/H071221077/Pertemuan_1/No8.java | 39 +++++++++++ src/H071221077/Pertemuan_2/No1.java | 38 +++++++++++ src/H071221077/Pertemuan_2/No2.java | 61 +++++++++++++++++ src/H071221077/Pertemuan_2/No3.java | 65 +++++++++++++++++++ src/H071221077/Pertemuan_2/No4.java | 21 ++++++ .../Pertemuan_2/No5.java | 20 +++--- 25 files changed, 437 insertions(+), 430 deletions(-) delete mode 100644 src/H071221066/Pertemuan_1/No1.java delete mode 100644 src/H071221066/Pertemuan_1/No2.java delete mode 100644 src/H071221066/Pertemuan_1/No3.java delete mode 100644 src/H071221066/Pertemuan_1/No4.java delete mode 100644 src/H071221066/Pertemuan_1/No5.java delete mode 100644 src/H071221066/Pertemuan_1/No6.java delete mode 100644 src/H071221066/Pertemuan_1/No7.java delete mode 100644 src/H071221066/Pertemuan_1/No8.java delete mode 100644 src/H071221066/Pertemuan_2/No1.java delete mode 100644 src/H071221066/Pertemuan_2/No2.java delete mode 100644 src/H071221066/Pertemuan_2/No3.java delete mode 100644 src/H071221066/Pertemuan_2/No4.java create mode 100644 src/H071221077/Pertemuan_1/No1.java create mode 100644 src/H071221077/Pertemuan_1/No2.java create mode 100644 src/H071221077/Pertemuan_1/No3.java create mode 100644 src/H071221077/Pertemuan_1/No4.java create mode 100644 src/H071221077/Pertemuan_1/No5.java create mode 100644 src/H071221077/Pertemuan_1/No6.java create mode 100644 src/H071221077/Pertemuan_1/No7.java create mode 100644 src/H071221077/Pertemuan_1/No8.java create mode 100644 src/H071221077/Pertemuan_2/No1.java create mode 100644 src/H071221077/Pertemuan_2/No2.java create mode 100644 src/H071221077/Pertemuan_2/No3.java create mode 100644 src/H071221077/Pertemuan_2/No4.java rename src/{H071221066 => H071221077}/Pertemuan_2/No5.java (62%) diff --git a/src/H071221066/Pertemuan_1/No1.java b/src/H071221066/Pertemuan_1/No1.java deleted file mode 100644 index 0089dae..0000000 --- a/src/H071221066/Pertemuan_1/No1.java +++ /dev/null @@ -1,25 +0,0 @@ -package H071221066.Pertemuan_1; -//import scanner -import java.util.Scanner; -public class No1 { - public static void main(String[] args){ -//buat scanner baru - Scanner input = new Scanner(System.in); -//deklarasi variabel NIM dengan string dan var soal dengan int - String nim; - int soal; -//buat inputan - System.out.print("NIM : "); - nim = input.next(); -//mengambil NIM dengan indeks ke 7 lalu dimasukkan ke variabel soal - soal = Integer.parseInt(nim.substring(nim.length()-3)); - -//membuat kondisi - if (soal % 7 == 0) { - System.out.println("Soal : No 7"); - }else { - System.out.println("Soal : No " + soal%7); - input.close(); - } - } -} diff --git a/src/H071221066/Pertemuan_1/No2.java b/src/H071221066/Pertemuan_1/No2.java deleted file mode 100644 index f2292a9..0000000 --- a/src/H071221066/Pertemuan_1/No2.java +++ /dev/null @@ -1,40 +0,0 @@ -package H071221066.Pertemuan_1; -//import module scanner -import java.util.Scanner; - -public class No2 { - - public static void main(String[] args) { -//menggunakann try catch untuk menangani jika terjadi error pada program - try{ -//mendeklarasi variabel bilangan desimal dan bilangan bulat dengan int - int desimal = 0; - int bulat = 0; -//membuat scanner baru untuk mengambil input user - Scanner inp = new Scanner(System.in); -//memasukkan inputan - System.out.print("Masukkan jumlah bilangan: "); - int n = inp.nextInt(); - -//membuat perulangan yang menentukan panjang angka yang diinput - for (int i = 0; i < n; i++) { - double num = inp.nextDouble(); - -//kemudian num-nya dibuatkan kondisi - if (num % 1 == 0) { - bulat++; - } else { - desimal++; - } - } -//menampilkan output - System.out.println(bulat + " Bilangan Bulat"); - System.out.println(desimal + " Bilangan Desimal"); - inp.close(); - -//catch akan dijalankan apabila umur yang dimasukkan bukan angka - }catch (Exception e) { - System.out.println("Hanya bisa menerima angka"); - } - } -} diff --git a/src/H071221066/Pertemuan_1/No3.java b/src/H071221066/Pertemuan_1/No3.java deleted file mode 100644 index de05d87..0000000 --- a/src/H071221066/Pertemuan_1/No3.java +++ /dev/null @@ -1,36 +0,0 @@ -package H071221066.Pertemuan_1; -//mengimport Scanner -import java.util.Scanner; - -public class No3 { - public static void main(String[] args){ -//menggunakann try catch untuk menangani jika terjadi error pada program - try { -//membuat scanner baru - Scanner input = new Scanner(System.in); -//mendeklarasikan variabel nama dan hobby menggunakan string, sedangkan umur menggunakan int - String name, hobby; - int umur; - -//meminta inputan ke user - System.out.print("Nama : "); - name = input.nextLine(); - - System.out.print("Umur : "); - umur = input.nextInt(); - -//.nextLine() perlu ditambahkan karena jika .nextInt berada dibawah .nextLine maka baris selanjutnya akan dilewati - input.nextLine(); - System.out.print("Hobby : "); - hobby = input.nextLine(); - -//menampilkan output - input.close(); - System.out.print("Nama saya " + name + ", " + umur + " tahun, " + "hobby " + hobby); - -//catch akan dijalankan apabila umur yang dimasukkan bukan angka - }catch (Exception e) { - System.out.print("Umur yang diinput bukan angka"); - } - } -} diff --git a/src/H071221066/Pertemuan_1/No4.java b/src/H071221066/Pertemuan_1/No4.java deleted file mode 100644 index a1722ed..0000000 --- a/src/H071221066/Pertemuan_1/No4.java +++ /dev/null @@ -1,24 +0,0 @@ -package H071221066.Pertemuan_1; -//mengimport scanner -import java.util.Scanner; - -public class No4 { - public static void main(String[] args) { -//membuat scanner baru - Scanner inputKalimat = new Scanner(System.in); -//meminta inputan ke user - System.out.print("Masukkan kalimat: "); - String kalimat = inputKalimat.nextLine(); -//mengambil variabel string kalimat lalu mengubah menjadi huruf kecil dan membagi string dengan spasi - String[] kata = kalimat.toLowerCase().split(" "); - String kalimatBaru = ""; -//membuat perulangan untuk menambah huruf selanjutnya setelah indeks pertama dari kaata di ubah menjadi kapital - for (int i = 0; i < kata.length; i++) { - kalimatBaru += kata[i].toUpperCase().charAt(0) + kata[i].substring(1) + " "; - } - -//menampilkan output - System.out.println("Kalimat setelah diubah: " + kalimatBaru); - inputKalimat.close(); - } -} \ No newline at end of file diff --git a/src/H071221066/Pertemuan_1/No5.java b/src/H071221066/Pertemuan_1/No5.java deleted file mode 100644 index acc8ea4..0000000 --- a/src/H071221066/Pertemuan_1/No5.java +++ /dev/null @@ -1,33 +0,0 @@ -package H071221066.Pertemuan_1; -//import Scanner -import java.util.Scanner; - -public class No5 { - public static void main(String[] args){ -//membuat scanner baru - Scanner input = new Scanner (System.in); - String x = input.next(); - -//.substring digunakan u/ mengambil beberapa karakter dari kalimat yang diinput menggunakan index - String hari = x.substring(0,2); -//Integer.parseInt digunkan untuk mengonversi string ke int - System.out.print(Integer.parseInt(hari)); - - String bulan = x.substring(3, 5); - int month = Integer.parseInt(bulan); -//menggunakan array - String months[] = {"Januari", "Februari", "Maret", "April", "Mei", "Juni", "juli", "Agustus", "September", "Oktober", "November", "Desember"}; - System.out.print(" " + months[month-1]+" "); - - String tahun = x.substring(6, 8); - int year = Integer.parseInt(tahun); - -//membuat kondisi untuk menentukan tahun - if (year <= 23) { - System.out.println("20" + tahun); - }else { - System.out.println("19" + tahun); - } - input.close(); - } -} diff --git a/src/H071221066/Pertemuan_1/No6.java b/src/H071221066/Pertemuan_1/No6.java deleted file mode 100644 index 0c61203..0000000 --- a/src/H071221066/Pertemuan_1/No6.java +++ /dev/null @@ -1,28 +0,0 @@ -package H071221066.Pertemuan_1; -//mengimport scanner -import java.util.Scanner; - -public class No6 { - public static void main (String[] args){ -//menggunakann try catch untuk menangani jika terjadi error pada program - try { - Scanner inputLingkaran = new Scanner(System.in); -//deklarasi variabel r sebagai jari-jari, luas, dan juga nilai phi - double r, luas, phi = 3.14; -//input nilai jari-jari - System.out.print("Jari-jari lingkaran : "); - r = inputLingkaran.nextDouble(); - -//rumus menghitung luas lingkaran - luas = phi*Math.pow(r, 2); - -//program dijalankan dengan print format, karena pada soal harus menampilkan output 2 angka dibelakang koma - System.out.printf("Luas lingkaran adalah: %.2f", luas); - inputLingkaran.close(); - -//catch dijalankan apabila inputan yang dimasukkan bukan angka - }catch (Exception e) { - System.out.print("input yang dimasukkan bukan angka"); - } - } -} diff --git a/src/H071221066/Pertemuan_1/No7.java b/src/H071221066/Pertemuan_1/No7.java deleted file mode 100644 index 316d1c8..0000000 --- a/src/H071221066/Pertemuan_1/No7.java +++ /dev/null @@ -1,33 +0,0 @@ -package H071221066.Pertemuan_1; - -//import scanner -import java.util.Scanner; - -public class No7 { - public static void main(String[] args){ -//membuat scanner baru dan meminta inputan - Scanner inp = new Scanner(System.in); - System.out.print("input bunga : "); - String flower = inp.nextLine(); - int hasil = findIndex(flower); - System.out.println("ditemukan di indeks " + hasil); - - inp.close(); - } -//membuat method findIndex u/ mengecek indeks teks yang diinput - public static int findIndex(String teks) { -//membuat array dengan tipe string - String bunga[] = {"Mawar", "melati", "kamboja", "matahari", "anggrek"}; - int indeks= 0; -//membuat perulangan kemudian mengembalikan indeks - for (String b : bunga) { - if (b.equalsIgnoreCase(teks)){ - return indeks; - } - indeks++; - } -//mengembalikan -1 jika inputan tidak terdaftar dalam array - return -1; - } -} - diff --git a/src/H071221066/Pertemuan_1/No8.java b/src/H071221066/Pertemuan_1/No8.java deleted file mode 100644 index ba32798..0000000 --- a/src/H071221066/Pertemuan_1/No8.java +++ /dev/null @@ -1,29 +0,0 @@ -package H071221066.Pertemuan_1; -//import scanner -import java.util.Scanner; - -public class No8 { - public static void main(String[] args) { -//menggunakan try catch untuk penanganan error - try { -//membuat array 2d - int[][] nums = {{1, 2, 3}, {4, 5, 6, 10}, {7, 8, 9}}; - Scanner inp = new Scanner(System.in); - int angka = inp.nextInt(); - inp.close(); - -//menggunakan 2 perulangan untuk mencari letak baris dan kolom dari inputan yang dimasukkan - for (int i = 0; i < nums.length; i++) { - for (int j = 0; j < nums[i].length; j++) { - if (nums[i] [j] == angka ) { - System.out.println("Found " + angka + " at " + i + " " + j); - return; - } - } - } -//catch akan dijalankan apabila inputan yang dimasukkan bukan angka - }catch(Exception e) { - System.out.println("Hanya bisa menerima angka"); - } - } -} diff --git a/src/H071221066/Pertemuan_2/No1.java b/src/H071221066/Pertemuan_2/No1.java deleted file mode 100644 index 99586a6..0000000 --- a/src/H071221066/Pertemuan_2/No1.java +++ /dev/null @@ -1,41 +0,0 @@ -package H071221066.Pertemuan_2; - -//NO.1 - -class Negara { - //atribut - String nama; - String ibuKota; - int jumlahProvinsi; - - //behavior - public String getNama() { - return nama; - } - public String getIbuKota() { - return ibuKota; - } - public int getJumlahProv() { - return jumlahProvinsi; - } - public void tambahProv(int jumlah) { - jumlahProvinsi += jumlah; - } -} - - public class No1 { - public static void main(String[] args) { - Negara negara = new Negara(); - negara.nama = "Indonesia"; - negara.ibuKota = "Jakarta"; - negara.jumlahProvinsi = 37; - - //menambah nilai pada atribut - negara.tambahProv(1); - - System.out.println("Nama negara : " + negara.getNama()); - System.out.println("Ibu kota : " + negara.getIbuKota()); - System.out.println("Jumlah Provinsi : " + negara.getJumlahProv()); - } - } - diff --git a/src/H071221066/Pertemuan_2/No2.java b/src/H071221066/Pertemuan_2/No2.java deleted file mode 100644 index 3c843de..0000000 --- a/src/H071221066/Pertemuan_2/No2.java +++ /dev/null @@ -1,47 +0,0 @@ -package H071221066.Pertemuan_2; - -//NO 2 - -class Personn { - private String name; - private int age; - private boolean isMale; - - public void setName(String name) { - this.name = name; - } - - public String getName() { - return this.name; - } - - public void setAge(int age) { - this.age = age; - } - - public int getAge() { - return this.age; - } - - public void setGender(String gender) { - this.isMale = gender == "Male"; - } - - public String getGender() { - return this.isMale ? "Male" : "Female"; - } -} -public class No2 { - public static void main(String[] args) { - Personn person = new Personn(); - - person.setName("Din"); - person.setAge(19); - person.setGender("female"); - - System.out.println("Name: " + person.getName()); - System.out.println("Age: " + person.getAge()); - System.out.println("Gender: " + person.getGender()); - } -} - diff --git a/src/H071221066/Pertemuan_2/No3.java b/src/H071221066/Pertemuan_2/No3.java deleted file mode 100644 index 2b40157..0000000 --- a/src/H071221066/Pertemuan_2/No3.java +++ /dev/null @@ -1,59 +0,0 @@ -package H071221066.Pertemuan_2; -//NO 3 - -class Product { - private int id; - private String nama; - private int stok; - private double harga; - - public Product(int id, String nama, int stok, double harga) { - this.id = id; - this.nama = nama; - this.stok = stok; - this.harga = harga; - } - - public int getId() { - return id; - } - - public String getNama() { - return nama; - } - - public int getStok() { - return stok; - } - - public double getHarga() { - return harga; - } - - public boolean isAvaliable() { - return stok > 0; - } - -} - -public class No3 { - public static void main(String[] args) { - Product produk1 = new Product(111, "Sabun", 50, 4000); - Product produk2 = new Product(222, "Shampoo", 0, 10000); - - System.out.println("ID produk 1: " + produk1.getId()); - System.out.println("Nama produk 1: " + produk1.getNama()); - System.out.println("Stok produk 1: " + produk1.getStok()); - System.out.println("Harga produk 1: " + produk1.getHarga()); - System.out.println("Apakah produk 1 tersedia di stok? " + produk1.isAvaliable()); - - - System.out.println("========================================"); - - System.out.println("ID produk 2: " + produk2.getId()); - System.out.println("Nama produk 2: " + produk2.getNama()); - System.out.println("Stok produk 2: " + produk2.getStok()); - System.out.println("Harga produk 2: " + produk2.getHarga()); - System.out.println("Apakah produk 2 tersedia di stok? " + produk2.isAvaliable()); - } -} diff --git a/src/H071221066/Pertemuan_2/No4.java b/src/H071221066/Pertemuan_2/No4.java deleted file mode 100644 index 52d5451..0000000 --- a/src/H071221066/Pertemuan_2/No4.java +++ /dev/null @@ -1,25 +0,0 @@ -package H071221066.Pertemuan_2; - -//NO.4 - -class Cuboid { - double height; - double width; - double lenght; - - double getVolume(){ - return height*width*lenght; - } -} - -public class No4 { - public static void main(String[] args) { - Cuboid cuboid = new Cuboid(); - cuboid.height = 10.0; - cuboid.width = 15.0; - cuboid.lenght = 30.0; - - System.out.printf("Volume = %.2f", cuboid.getVolume()); - - } -} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_1/No1.java b/src/H071221077/Pertemuan_1/No1.java new file mode 100644 index 0000000..33962cd --- /dev/null +++ b/src/H071221077/Pertemuan_1/No1.java @@ -0,0 +1,24 @@ +package H071221077.Pertemuan_1; + +import java.util.Scanner; + +public class No1 { + public static void main(String[] args) { + String nim; + Scanner keyboard = new Scanner(System.in); // untuk menginput + System.out.print("Masukkan NIM: "); + nim = keyboard.next(); //tipe data + String inp = nim.substring(nim.length()-3); // inputan utk mengambil 3 angka dblkg nim + + int angka = Integer.parseInt(inp); //mengubah str menjadi int + + if (angka % 7 == 0) { + System.out.println("Soal: no 7"); // kalau angka % 7 = 0 muncul no 7 + } else{ + System.out.printf("Soal : no %d\n" , angka % 7 ); //kalau angka % 7 = selain 0, muncul + } + + keyboard.close(); + } + +} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_1/No2.java b/src/H071221077/Pertemuan_1/No2.java new file mode 100644 index 0000000..8bb95d6 --- /dev/null +++ b/src/H071221077/Pertemuan_1/No2.java @@ -0,0 +1,33 @@ +package H071221077.Pertemuan_1; + +import java.util.Scanner; + +public class No2 { + public static void main(String[] args) { + Scanner userInput = new Scanner(System.in); + try { + int bilBulat, bilDesimal, n, i; + + bilBulat = 0; + bilDesimal = 0; + + System.out.print("Masukkan Jumlah Bilangan : "); + n = userInput.nextInt(); + userInput.nextLine(); + + for (i = 0; i < n; i++) { + double num = userInput.nextDouble(); // mencari nilai yang double / float klo di python + if (num % 1 == 0) { + bilBulat++; + } else { + bilDesimal++; + } + } + System.out.println(bilBulat + " Bilangan Bulat"); + System.out.println(bilDesimal + " Bilangan Desimal"); + userInput.close(); + } catch (Exception e) { + System.out.println("Input Harus Berupa Angka"); + } + } +} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_1/No3.java b/src/H071221077/Pertemuan_1/No3.java new file mode 100644 index 0000000..7887e3f --- /dev/null +++ b/src/H071221077/Pertemuan_1/No3.java @@ -0,0 +1,26 @@ +package H071221077.Pertemuan_1; + +import java.util.Scanner; + +public class No3 { + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + + try { + System.out.print("Nama :"); + String name = input.nextLine(); + + System.out.print("Age :"); + int age = input.nextInt(); + input.nextLine(); // baris + + System.out.print("Hobby :"); + String hobby = input.nextLine(); + + System.out.println("Nama saya" + name + ", " + age + " Tahun, hobby " + hobby + "."); + } catch (Exception e) { + System.out.println("Umur harus berupa angka"); + } + input.close(); + } +} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_1/No4.java b/src/H071221077/Pertemuan_1/No4.java new file mode 100644 index 0000000..6fb1bf5 --- /dev/null +++ b/src/H071221077/Pertemuan_1/No4.java @@ -0,0 +1,30 @@ +package H071221077.Pertemuan_1; + +import java.util.Scanner; + +public class No4 { + public static void main(String[] args) { + Scanner judul = new Scanner(System.in); + String inp; + + System.out.print("Masukkan Judul Film : "); + inp = judul.nextLine(); + + String kalimatBaru = new String(); + + // Split kalimat menjadi beberapa kata: + // ["halo", "apa", "kabar", "semua"] + for (String kata : inp.split(" ")) { + + // kata.substring(0, 1) untuk mengambil huruf pertama pada kata + // toUpperCase() untuk mengubah character pertama jadi huruf kapital + // kata.substring(1), mengambil character kedua sampai terakhir pada kata + String kataBaru = kata.toUpperCase().charAt(0) + kata.substring(1).toLowerCase(); + + // kalimatBaru.append(kataBaru).append(" "); + kalimatBaru += kataBaru + " "; + } + System.out.println(kalimatBaru); + judul.close(); + } +} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_1/No5.java b/src/H071221077/Pertemuan_1/No5.java new file mode 100644 index 0000000..d002e49 --- /dev/null +++ b/src/H071221077/Pertemuan_1/No5.java @@ -0,0 +1,41 @@ +package H071221077.Pertemuan_1; + +import java.util.HashMap; +import java.util.Scanner; + +public class No5 { + public static void main(String[] args) { + HashMap bulan = new HashMap<>(); + bulan.put("01", "Januari"); + bulan.put("02", "Februari"); + bulan.put("03", "Maret"); + bulan.put("04", "April"); + bulan.put("05", "Mei"); + bulan.put("06", "Juli"); + bulan.put("07", "Juni"); + bulan.put("08", "Agustus"); + bulan.put("09", "September"); + bulan.put("10", "Oktober"); + bulan.put("11", "November"); + bulan.put("12", "Desember"); + + Scanner input = new Scanner(System.in); + System.out.print("Masukkan tanggal : "); + + String tanggal = input.next(); + String day = tanggal.substring(0, 2); // substring untuk mengambil bbrp karakter dlm str (index) + System.out.print(Integer.parseInt(day) + " "); + String bln = tanggal.substring(3, 5); + // int month = Integer.parseInt(bl); //parseInt untuk mengubah str menjadi int + System.out.print("" + bulan.get(bln) + " "); + String thn = tanggal.substring(6, 8); + int year = Integer.parseInt(thn); + if (year <= 23) { + System.out.print("20" + thn + "\n"); + } else { + System.out.print("19" + thn + "\n"); + } + + input.close(); + } +} diff --git a/src/H071221077/Pertemuan_1/No6.java b/src/H071221077/Pertemuan_1/No6.java new file mode 100644 index 0000000..684fd8a --- /dev/null +++ b/src/H071221077/Pertemuan_1/No6.java @@ -0,0 +1,25 @@ +package H071221077.Pertemuan_1; + +import java.util.Scanner; + +public class No6 { + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + + try { + System.out.println("Menghitung Luas Lingkaran "); + System.out.println("Masukkan Jari-jari Lingkaran"); + double r = input.nextDouble(); + + // String luas = String.format ("%.2f" , (Math.PI * r *r)) ; //angka blkg koma 2 + System.out.printf("Luas Lingkaran = %.2f\n", (Math.PI * r * r)); + // System.out.println("Luas Lingkaran = " + luas); + + } catch (Exception e) { + System.out.println("Input Harus Berupa Angka"); + + } + input.close(); + } + +} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_1/No7.java b/src/H071221077/Pertemuan_1/No7.java new file mode 100644 index 0000000..cf57948 --- /dev/null +++ b/src/H071221077/Pertemuan_1/No7.java @@ -0,0 +1,24 @@ +package H071221077.Pertemuan_1; + +import java.util.Scanner; + +public class No7 { + public static void main(String[] args) { + String[] namaNegara = { "Indonesia", "Malaysia", "Jepang", "Cina", "Thailand" }; + Scanner input = new Scanner(System.in); + System.out.print("Masukkan nama negara yang dicari : "); + String cari = input.nextLine(); // untuk membaca semua inputan + input.close(); + + System.out.println(findIndex(namaNegara, cari)); + } + + public static int findIndex(String[] array, String teks) { + for (int i = 0; i < array.length; i++) { + if (array[i].equalsIgnoreCase(teks)) { // untuk membandingkan dua str dgn mengabaikan besar-kecilnya + return i; + } + } + return -1; + } +} diff --git a/src/H071221077/Pertemuan_1/No8.java b/src/H071221077/Pertemuan_1/No8.java new file mode 100644 index 0000000..1d7dc1c --- /dev/null +++ b/src/H071221077/Pertemuan_1/No8.java @@ -0,0 +1,39 @@ +package H071221077.Pertemuan_1; + +import java.util.Scanner; + +public class No8 { + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + + // Input satu bilangan + try { + System.out.print("Masukkan satu bilangan : "); + int bilangan = scanner.nextInt(); + scanner.close(); + + int[][] array2D = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }; + // boolean found = false; + + for (int i = 0; i < array2D.length; i++) { // i untuk indeks yg per kurung kurawal warna ungu + for (int j = 0; j < array2D[i].length; j++) { // j untuk indeks bilangan yg didalam kurung kurawal warna + // ungu + if (array2D[i][j] == bilangan) { + System.out.println("Bilangan " + bilangan + " ditemukan pada indeks [" + i + "][" + j + "]"); + // found = true; + return; // langsung menghentikan method + } + + System.out.println("Indeks sekarang " + i + " " + j); + } + } + // if (!found) { + // System.out.println("Bilangan " + bilangan + " tidak ditemukan pada array + // 2D"); + // } + } catch (Exception e) { + System.out.println("Inputan harus berupa angka"); + + } + } +} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_2/No1.java b/src/H071221077/Pertemuan_2/No1.java new file mode 100644 index 0000000..95fad8c --- /dev/null +++ b/src/H071221077/Pertemuan_2/No1.java @@ -0,0 +1,38 @@ +package H071221077.Pertemuan_2; + +class Food { //nama kelas + String namaMakanan; //atribut + String jenis; + int harga; + + public String getNama(){ + return namaMakanan; + } + + public String getJenis(){ + return jenis; + } + + public int getHarga(){ + return harga; + } +} + +public class No1 { + public static void main(String[] args) { + Food food = new Food(); //objek + Food food2 = new Food(); + + food.namaMakanan = "Batagor"; //mengisi nilai atribut + food.jenis = "Makanan ringan"; + food.harga = 13000; + + food2.namaMakanan = food.getNama(); + + System.out.println("Nama makanan : "+ food.getNama()); + System.out.println("Jenis makanan : "+ food.getJenis()); + System.out.println("Harga makananan : "+food.getHarga()); + System.out.println(food2.getNama()); + System.out.println(food2.namaMakanan); + } +} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_2/No2.java b/src/H071221077/Pertemuan_2/No2.java new file mode 100644 index 0000000..7fdf0e8 --- /dev/null +++ b/src/H071221077/Pertemuan_2/No2.java @@ -0,0 +1,61 @@ +package H071221077.Pertemuan_2; + +class Person { + String name; + int age; + boolean isMale; + + public void setName(String name){ + this.name = name; //this=variabel yg dmksd yg di class + } + + public String getName(){ + return name; + } + + public void setAge(Integer age){ + this.age = age; + } + + public int getAge(){ + return age; + } + + public void setGender(String gender){ + System.out.println(gender == "Male"); + this.isMale = gender == "Male"; + } + + public String getGender(){ + if (isMale){ //==true/false + return "Male"; + } + else{ + return "Female"; + } + } + // public void setGender(String gender) { + // if (gender.equalsIgnoreCase("male")) { + // this.isMale = true; + // } else { + // this.isMale = false; + // } + // } + + // public boolean getGender() { + // return isMale; + // } +} + +public class No2 { + public static void main(String[] args) { + Person person = new Person(); + person.setName("Cheryl"); + person.setAge(19); + person.setGender("Male"); + + System.out.println("Nama: "+ person.getName()); + System.out.println("Umur: "+ person.getAge()); + System.out.println("Jenis kelamin: "+ person.getGender()); + } +} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_2/No3.java b/src/H071221077/Pertemuan_2/No3.java new file mode 100644 index 0000000..7265f4d --- /dev/null +++ b/src/H071221077/Pertemuan_2/No3.java @@ -0,0 +1,65 @@ +package H071221077.Pertemuan_2; + +class Produk{ + String id; //ini atribut + String nama; + int stok; + int harga; + + + public void isAvailable(){ + if (stok > 0) { + System.out.println("Tersedia"); + + } else { + System.out.println("Tidak tersedia"); + } + } + public void displayProduk() { + System.out.println("Nama produk : " + nama); + System.out.println("ID Produk : " + id); + System.out.println("Stok produk : " + stok); + System.out.println("Harga produk : " + harga); + + } + + public String getId(){ + return id; + } + public String getNama(){ + return nama; + } + public int getStok(){ + return stok; + } + public int getHarga(){ + return harga; + } + } + + public class No3{ + public static void main(String[] args) { + Produk produk1 = new Produk(); + Produk produk2 = new Produk(); + + produk1.id = "H0001"; + produk1.nama = "Baju kaos"; + produk1.stok = 1; + produk1.harga = 50000; + + produk1.stok = produk1.getStok() - 1; + + produk2.id = "H0002"; + produk2.nama = "Celana pendek"; + produk2.stok = 12; + produk2.harga = 35000; + + produk1.displayProduk(); + produk1.isAvailable(); //untuk pemanggilan + System.out.println(""); + produk2.displayProduk(); + produk2.isAvailable(); + + + } + } \ No newline at end of file diff --git a/src/H071221077/Pertemuan_2/No4.java b/src/H071221077/Pertemuan_2/No4.java new file mode 100644 index 0000000..b85c710 --- /dev/null +++ b/src/H071221077/Pertemuan_2/No4.java @@ -0,0 +1,21 @@ +package H071221077.Pertemuan_2; + +class Cuboid { + double height; + double width; + double length; + + double getVolume(){ + return height*width*length; + } +} + +public class No4{ + public static void main(String[] args) { + Cuboid cuboid = new Cuboid(); + cuboid.height = 12; + cuboid.width = 25; + cuboid.length = 15; + System.out.printf("Volume: %.2f", cuboid.getVolume()); + } +} \ No newline at end of file diff --git a/src/H071221066/Pertemuan_2/No5.java b/src/H071221077/Pertemuan_2/No5.java similarity index 62% rename from src/H071221066/Pertemuan_2/No5.java rename to src/H071221077/Pertemuan_2/No5.java index b94f111..c763b46 100644 --- a/src/H071221066/Pertemuan_2/No5.java +++ b/src/H071221077/Pertemuan_2/No5.java @@ -1,9 +1,9 @@ -package H071221066.Pertemuan_2; +package H071221077.Pertemuan_2; class Mahasiswa { String nama; String nim; - Alamat alamat; + Alamat alamat; // Alamat ini punya atribut sendiri utk dpt alamatLengkap public String getNama() { return nama; @@ -22,7 +22,6 @@ class Alamat { String jalan; String kota; - public String getAlamatLengkap() { return jalan + ", " + kota; } @@ -31,16 +30,17 @@ public String getAlamatLengkap() { public class No5 { public static void main(String[] args) { Alamat alamat = new Alamat(); - alamat.jalan = "Tanjung Bunga"; + alamat.jalan = "Hartaco Indah"; alamat.kota = "Makassar"; Mahasiswa mahasiswa = new Mahasiswa(); mahasiswa.alamat = alamat; - mahasiswa.nama = "Zabryna Andiny"; - mahasiswa.nim = "H071221066"; - + mahasiswa.nama = "Cheryl"; + mahasiswa.nim = "H071221077"; + System.out.println("Nama : " + mahasiswa.getNama()); - System.out.println("Nim : " + mahasiswa.getNim()); - System.out.println("Alamat : " + mahasiswa.getAlamat().getAlamatLengkap()); + System.out.println("NIM : " + mahasiswa.getNim()); + Alamat alamat2 = mahasiswa.getAlamat(); + System.out.println("Alamat : " + alamat2.getAlamatLengkap()); } -} +} \ No newline at end of file From 4a8654ebee52f4c335819e55b01c34b4181bb2b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=A4=E3=82=AF=E3=82=B5=E3=83=B3?= <54715920+ToKu404@users.noreply.github.com> Date: Sat, 25 Mar 2023 16:18:01 +0800 Subject: [PATCH 05/14] Update ci.yml --- .github/workflows/ci.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2dcc645..9a1be72 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,7 +2,10 @@ name: OOP CI on: pull_request: - branches: + branches-ignore: + - main + push: + branches-ignore: - main jobs: From 6b14be871d558dcb8d203b3284d408b6f02acedf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=A4=E3=82=AF=E3=82=B5=E3=83=B3?= <54715920+ToKu404@users.noreply.github.com> Date: Sat, 25 Mar 2023 16:18:15 +0800 Subject: [PATCH 06/14] Update ci.yml --- .github/workflows/ci.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2dcc645..9a1be72 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,7 +2,10 @@ name: OOP CI on: pull_request: - branches: + branches-ignore: + - main + push: + branches-ignore: - main jobs: From 65bcd867d2eb3180752bd4c218fc187961ee7181 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=A4=E3=82=AF=E3=82=B5=E3=83=B3?= <54715920+ToKu404@users.noreply.github.com> Date: Sat, 25 Mar 2023 16:18:24 +0800 Subject: [PATCH 07/14] Update ci.yml --- .github/workflows/ci.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2dcc645..9a1be72 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,7 +2,10 @@ name: OOP CI on: pull_request: - branches: + branches-ignore: + - main + push: + branches-ignore: - main jobs: From eaf938463065baaceca8437a9ed82740724dc1cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=A4=E3=82=AF=E3=82=B5=E3=83=B3?= <54715920+ToKu404@users.noreply.github.com> Date: Sat, 25 Mar 2023 16:18:37 +0800 Subject: [PATCH 08/14] Update ci.yml From 96f78433694a04c97788823426135cf6f5836e2b Mon Sep 17 00:00:00 2001 From: toku404 Date: Sat, 25 Mar 2023 16:20:43 +0800 Subject: [PATCH 09/14] feat --- src/H071221077/Pertemuan_1/No1.java | 24 ----------- src/H071221077/Pertemuan_1/No2.java | 33 --------------- src/H071221077/Pertemuan_1/No3.java | 26 ------------ src/H071221077/Pertemuan_1/No4.java | 30 ------------- src/H071221077/Pertemuan_1/No5.java | 41 ------------------ src/H071221077/Pertemuan_1/No6.java | 25 ----------- src/H071221077/Pertemuan_1/No7.java | 24 ----------- src/H071221077/Pertemuan_1/No8.java | 39 ----------------- src/H071221077/Pertemuan_2/No1.java | 38 ----------------- src/H071221077/Pertemuan_2/No2.java | 61 --------------------------- src/H071221077/Pertemuan_2/No3.java | 65 ----------------------------- src/H071221077/Pertemuan_2/No4.java | 21 ---------- src/H071221077/Pertemuan_2/No5.java | 46 -------------------- src/H071221087/Pertemuan_1/No1.java | 23 ++++++++++ src/H071221087/Pertemuan_1/No2.java | 34 +++++++++++++++ src/H071221087/Pertemuan_1/No3.java | 24 +++++++++++ src/H071221087/Pertemuan_1/No4.java | 32 ++++++++++++++ src/H071221087/Pertemuan_1/No5.java | 52 +++++++++++++++++++++++ src/H071221087/Pertemuan_1/No6.java | 23 ++++++++++ src/H071221087/Pertemuan_1/No7.java | 27 ++++++++++++ src/H071221087/Pertemuan_1/No8.java | 24 +++++++++++ 21 files changed, 239 insertions(+), 473 deletions(-) delete mode 100644 src/H071221077/Pertemuan_1/No1.java delete mode 100644 src/H071221077/Pertemuan_1/No2.java delete mode 100644 src/H071221077/Pertemuan_1/No3.java delete mode 100644 src/H071221077/Pertemuan_1/No4.java delete mode 100644 src/H071221077/Pertemuan_1/No5.java delete mode 100644 src/H071221077/Pertemuan_1/No6.java delete mode 100644 src/H071221077/Pertemuan_1/No7.java delete mode 100644 src/H071221077/Pertemuan_1/No8.java delete mode 100644 src/H071221077/Pertemuan_2/No1.java delete mode 100644 src/H071221077/Pertemuan_2/No2.java delete mode 100644 src/H071221077/Pertemuan_2/No3.java delete mode 100644 src/H071221077/Pertemuan_2/No4.java delete mode 100644 src/H071221077/Pertemuan_2/No5.java create mode 100644 src/H071221087/Pertemuan_1/No1.java create mode 100644 src/H071221087/Pertemuan_1/No2.java create mode 100644 src/H071221087/Pertemuan_1/No3.java create mode 100644 src/H071221087/Pertemuan_1/No4.java create mode 100644 src/H071221087/Pertemuan_1/No5.java create mode 100644 src/H071221087/Pertemuan_1/No6.java create mode 100644 src/H071221087/Pertemuan_1/No7.java create mode 100644 src/H071221087/Pertemuan_1/No8.java diff --git a/src/H071221077/Pertemuan_1/No1.java b/src/H071221077/Pertemuan_1/No1.java deleted file mode 100644 index 33962cd..0000000 --- a/src/H071221077/Pertemuan_1/No1.java +++ /dev/null @@ -1,24 +0,0 @@ -package H071221077.Pertemuan_1; - -import java.util.Scanner; - -public class No1 { - public static void main(String[] args) { - String nim; - Scanner keyboard = new Scanner(System.in); // untuk menginput - System.out.print("Masukkan NIM: "); - nim = keyboard.next(); //tipe data - String inp = nim.substring(nim.length()-3); // inputan utk mengambil 3 angka dblkg nim - - int angka = Integer.parseInt(inp); //mengubah str menjadi int - - if (angka % 7 == 0) { - System.out.println("Soal: no 7"); // kalau angka % 7 = 0 muncul no 7 - } else{ - System.out.printf("Soal : no %d\n" , angka % 7 ); //kalau angka % 7 = selain 0, muncul - } - - keyboard.close(); - } - -} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_1/No2.java b/src/H071221077/Pertemuan_1/No2.java deleted file mode 100644 index 8bb95d6..0000000 --- a/src/H071221077/Pertemuan_1/No2.java +++ /dev/null @@ -1,33 +0,0 @@ -package H071221077.Pertemuan_1; - -import java.util.Scanner; - -public class No2 { - public static void main(String[] args) { - Scanner userInput = new Scanner(System.in); - try { - int bilBulat, bilDesimal, n, i; - - bilBulat = 0; - bilDesimal = 0; - - System.out.print("Masukkan Jumlah Bilangan : "); - n = userInput.nextInt(); - userInput.nextLine(); - - for (i = 0; i < n; i++) { - double num = userInput.nextDouble(); // mencari nilai yang double / float klo di python - if (num % 1 == 0) { - bilBulat++; - } else { - bilDesimal++; - } - } - System.out.println(bilBulat + " Bilangan Bulat"); - System.out.println(bilDesimal + " Bilangan Desimal"); - userInput.close(); - } catch (Exception e) { - System.out.println("Input Harus Berupa Angka"); - } - } -} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_1/No3.java b/src/H071221077/Pertemuan_1/No3.java deleted file mode 100644 index 7887e3f..0000000 --- a/src/H071221077/Pertemuan_1/No3.java +++ /dev/null @@ -1,26 +0,0 @@ -package H071221077.Pertemuan_1; - -import java.util.Scanner; - -public class No3 { - public static void main(String[] args) { - Scanner input = new Scanner(System.in); - - try { - System.out.print("Nama :"); - String name = input.nextLine(); - - System.out.print("Age :"); - int age = input.nextInt(); - input.nextLine(); // baris - - System.out.print("Hobby :"); - String hobby = input.nextLine(); - - System.out.println("Nama saya" + name + ", " + age + " Tahun, hobby " + hobby + "."); - } catch (Exception e) { - System.out.println("Umur harus berupa angka"); - } - input.close(); - } -} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_1/No4.java b/src/H071221077/Pertemuan_1/No4.java deleted file mode 100644 index 6fb1bf5..0000000 --- a/src/H071221077/Pertemuan_1/No4.java +++ /dev/null @@ -1,30 +0,0 @@ -package H071221077.Pertemuan_1; - -import java.util.Scanner; - -public class No4 { - public static void main(String[] args) { - Scanner judul = new Scanner(System.in); - String inp; - - System.out.print("Masukkan Judul Film : "); - inp = judul.nextLine(); - - String kalimatBaru = new String(); - - // Split kalimat menjadi beberapa kata: - // ["halo", "apa", "kabar", "semua"] - for (String kata : inp.split(" ")) { - - // kata.substring(0, 1) untuk mengambil huruf pertama pada kata - // toUpperCase() untuk mengubah character pertama jadi huruf kapital - // kata.substring(1), mengambil character kedua sampai terakhir pada kata - String kataBaru = kata.toUpperCase().charAt(0) + kata.substring(1).toLowerCase(); - - // kalimatBaru.append(kataBaru).append(" "); - kalimatBaru += kataBaru + " "; - } - System.out.println(kalimatBaru); - judul.close(); - } -} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_1/No5.java b/src/H071221077/Pertemuan_1/No5.java deleted file mode 100644 index d002e49..0000000 --- a/src/H071221077/Pertemuan_1/No5.java +++ /dev/null @@ -1,41 +0,0 @@ -package H071221077.Pertemuan_1; - -import java.util.HashMap; -import java.util.Scanner; - -public class No5 { - public static void main(String[] args) { - HashMap bulan = new HashMap<>(); - bulan.put("01", "Januari"); - bulan.put("02", "Februari"); - bulan.put("03", "Maret"); - bulan.put("04", "April"); - bulan.put("05", "Mei"); - bulan.put("06", "Juli"); - bulan.put("07", "Juni"); - bulan.put("08", "Agustus"); - bulan.put("09", "September"); - bulan.put("10", "Oktober"); - bulan.put("11", "November"); - bulan.put("12", "Desember"); - - Scanner input = new Scanner(System.in); - System.out.print("Masukkan tanggal : "); - - String tanggal = input.next(); - String day = tanggal.substring(0, 2); // substring untuk mengambil bbrp karakter dlm str (index) - System.out.print(Integer.parseInt(day) + " "); - String bln = tanggal.substring(3, 5); - // int month = Integer.parseInt(bl); //parseInt untuk mengubah str menjadi int - System.out.print("" + bulan.get(bln) + " "); - String thn = tanggal.substring(6, 8); - int year = Integer.parseInt(thn); - if (year <= 23) { - System.out.print("20" + thn + "\n"); - } else { - System.out.print("19" + thn + "\n"); - } - - input.close(); - } -} diff --git a/src/H071221077/Pertemuan_1/No6.java b/src/H071221077/Pertemuan_1/No6.java deleted file mode 100644 index 684fd8a..0000000 --- a/src/H071221077/Pertemuan_1/No6.java +++ /dev/null @@ -1,25 +0,0 @@ -package H071221077.Pertemuan_1; - -import java.util.Scanner; - -public class No6 { - public static void main(String[] args) { - Scanner input = new Scanner(System.in); - - try { - System.out.println("Menghitung Luas Lingkaran "); - System.out.println("Masukkan Jari-jari Lingkaran"); - double r = input.nextDouble(); - - // String luas = String.format ("%.2f" , (Math.PI * r *r)) ; //angka blkg koma 2 - System.out.printf("Luas Lingkaran = %.2f\n", (Math.PI * r * r)); - // System.out.println("Luas Lingkaran = " + luas); - - } catch (Exception e) { - System.out.println("Input Harus Berupa Angka"); - - } - input.close(); - } - -} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_1/No7.java b/src/H071221077/Pertemuan_1/No7.java deleted file mode 100644 index cf57948..0000000 --- a/src/H071221077/Pertemuan_1/No7.java +++ /dev/null @@ -1,24 +0,0 @@ -package H071221077.Pertemuan_1; - -import java.util.Scanner; - -public class No7 { - public static void main(String[] args) { - String[] namaNegara = { "Indonesia", "Malaysia", "Jepang", "Cina", "Thailand" }; - Scanner input = new Scanner(System.in); - System.out.print("Masukkan nama negara yang dicari : "); - String cari = input.nextLine(); // untuk membaca semua inputan - input.close(); - - System.out.println(findIndex(namaNegara, cari)); - } - - public static int findIndex(String[] array, String teks) { - for (int i = 0; i < array.length; i++) { - if (array[i].equalsIgnoreCase(teks)) { // untuk membandingkan dua str dgn mengabaikan besar-kecilnya - return i; - } - } - return -1; - } -} diff --git a/src/H071221077/Pertemuan_1/No8.java b/src/H071221077/Pertemuan_1/No8.java deleted file mode 100644 index 1d7dc1c..0000000 --- a/src/H071221077/Pertemuan_1/No8.java +++ /dev/null @@ -1,39 +0,0 @@ -package H071221077.Pertemuan_1; - -import java.util.Scanner; - -public class No8 { - public static void main(String[] args) { - Scanner scanner = new Scanner(System.in); - - // Input satu bilangan - try { - System.out.print("Masukkan satu bilangan : "); - int bilangan = scanner.nextInt(); - scanner.close(); - - int[][] array2D = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }; - // boolean found = false; - - for (int i = 0; i < array2D.length; i++) { // i untuk indeks yg per kurung kurawal warna ungu - for (int j = 0; j < array2D[i].length; j++) { // j untuk indeks bilangan yg didalam kurung kurawal warna - // ungu - if (array2D[i][j] == bilangan) { - System.out.println("Bilangan " + bilangan + " ditemukan pada indeks [" + i + "][" + j + "]"); - // found = true; - return; // langsung menghentikan method - } - - System.out.println("Indeks sekarang " + i + " " + j); - } - } - // if (!found) { - // System.out.println("Bilangan " + bilangan + " tidak ditemukan pada array - // 2D"); - // } - } catch (Exception e) { - System.out.println("Inputan harus berupa angka"); - - } - } -} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_2/No1.java b/src/H071221077/Pertemuan_2/No1.java deleted file mode 100644 index 95fad8c..0000000 --- a/src/H071221077/Pertemuan_2/No1.java +++ /dev/null @@ -1,38 +0,0 @@ -package H071221077.Pertemuan_2; - -class Food { //nama kelas - String namaMakanan; //atribut - String jenis; - int harga; - - public String getNama(){ - return namaMakanan; - } - - public String getJenis(){ - return jenis; - } - - public int getHarga(){ - return harga; - } -} - -public class No1 { - public static void main(String[] args) { - Food food = new Food(); //objek - Food food2 = new Food(); - - food.namaMakanan = "Batagor"; //mengisi nilai atribut - food.jenis = "Makanan ringan"; - food.harga = 13000; - - food2.namaMakanan = food.getNama(); - - System.out.println("Nama makanan : "+ food.getNama()); - System.out.println("Jenis makanan : "+ food.getJenis()); - System.out.println("Harga makananan : "+food.getHarga()); - System.out.println(food2.getNama()); - System.out.println(food2.namaMakanan); - } -} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_2/No2.java b/src/H071221077/Pertemuan_2/No2.java deleted file mode 100644 index 7fdf0e8..0000000 --- a/src/H071221077/Pertemuan_2/No2.java +++ /dev/null @@ -1,61 +0,0 @@ -package H071221077.Pertemuan_2; - -class Person { - String name; - int age; - boolean isMale; - - public void setName(String name){ - this.name = name; //this=variabel yg dmksd yg di class - } - - public String getName(){ - return name; - } - - public void setAge(Integer age){ - this.age = age; - } - - public int getAge(){ - return age; - } - - public void setGender(String gender){ - System.out.println(gender == "Male"); - this.isMale = gender == "Male"; - } - - public String getGender(){ - if (isMale){ //==true/false - return "Male"; - } - else{ - return "Female"; - } - } - // public void setGender(String gender) { - // if (gender.equalsIgnoreCase("male")) { - // this.isMale = true; - // } else { - // this.isMale = false; - // } - // } - - // public boolean getGender() { - // return isMale; - // } -} - -public class No2 { - public static void main(String[] args) { - Person person = new Person(); - person.setName("Cheryl"); - person.setAge(19); - person.setGender("Male"); - - System.out.println("Nama: "+ person.getName()); - System.out.println("Umur: "+ person.getAge()); - System.out.println("Jenis kelamin: "+ person.getGender()); - } -} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_2/No3.java b/src/H071221077/Pertemuan_2/No3.java deleted file mode 100644 index 7265f4d..0000000 --- a/src/H071221077/Pertemuan_2/No3.java +++ /dev/null @@ -1,65 +0,0 @@ -package H071221077.Pertemuan_2; - -class Produk{ - String id; //ini atribut - String nama; - int stok; - int harga; - - - public void isAvailable(){ - if (stok > 0) { - System.out.println("Tersedia"); - - } else { - System.out.println("Tidak tersedia"); - } - } - public void displayProduk() { - System.out.println("Nama produk : " + nama); - System.out.println("ID Produk : " + id); - System.out.println("Stok produk : " + stok); - System.out.println("Harga produk : " + harga); - - } - - public String getId(){ - return id; - } - public String getNama(){ - return nama; - } - public int getStok(){ - return stok; - } - public int getHarga(){ - return harga; - } - } - - public class No3{ - public static void main(String[] args) { - Produk produk1 = new Produk(); - Produk produk2 = new Produk(); - - produk1.id = "H0001"; - produk1.nama = "Baju kaos"; - produk1.stok = 1; - produk1.harga = 50000; - - produk1.stok = produk1.getStok() - 1; - - produk2.id = "H0002"; - produk2.nama = "Celana pendek"; - produk2.stok = 12; - produk2.harga = 35000; - - produk1.displayProduk(); - produk1.isAvailable(); //untuk pemanggilan - System.out.println(""); - produk2.displayProduk(); - produk2.isAvailable(); - - - } - } \ No newline at end of file diff --git a/src/H071221077/Pertemuan_2/No4.java b/src/H071221077/Pertemuan_2/No4.java deleted file mode 100644 index b85c710..0000000 --- a/src/H071221077/Pertemuan_2/No4.java +++ /dev/null @@ -1,21 +0,0 @@ -package H071221077.Pertemuan_2; - -class Cuboid { - double height; - double width; - double length; - - double getVolume(){ - return height*width*length; - } -} - -public class No4{ - public static void main(String[] args) { - Cuboid cuboid = new Cuboid(); - cuboid.height = 12; - cuboid.width = 25; - cuboid.length = 15; - System.out.printf("Volume: %.2f", cuboid.getVolume()); - } -} \ No newline at end of file diff --git a/src/H071221077/Pertemuan_2/No5.java b/src/H071221077/Pertemuan_2/No5.java deleted file mode 100644 index c763b46..0000000 --- a/src/H071221077/Pertemuan_2/No5.java +++ /dev/null @@ -1,46 +0,0 @@ -package H071221077.Pertemuan_2; - -class Mahasiswa { - String nama; - String nim; - Alamat alamat; // Alamat ini punya atribut sendiri utk dpt alamatLengkap - - public String getNama() { - return nama; - } - - public String getNim() { - return nim; - } - - public Alamat getAlamat() { - return alamat; - } -} - -class Alamat { - String jalan; - String kota; - - public String getAlamatLengkap() { - return jalan + ", " + kota; - } -} - -public class No5 { - public static void main(String[] args) { - Alamat alamat = new Alamat(); - alamat.jalan = "Hartaco Indah"; - alamat.kota = "Makassar"; - - Mahasiswa mahasiswa = new Mahasiswa(); - mahasiswa.alamat = alamat; - mahasiswa.nama = "Cheryl"; - mahasiswa.nim = "H071221077"; - - System.out.println("Nama : " + mahasiswa.getNama()); - System.out.println("NIM : " + mahasiswa.getNim()); - Alamat alamat2 = mahasiswa.getAlamat(); - System.out.println("Alamat : " + alamat2.getAlamatLengkap()); - } -} \ No newline at end of file diff --git a/src/H071221087/Pertemuan_1/No1.java b/src/H071221087/Pertemuan_1/No1.java new file mode 100644 index 0000000..d29c478 --- /dev/null +++ b/src/H071221087/Pertemuan_1/No1.java @@ -0,0 +1,23 @@ +package H071221087.Pertemuan_1; + +import java.util.Scanner; + +public class No1 { + public static void main(String[] args) { + + Scanner sc = new Scanner(System.in); + System.out.print("Nim : "); + String nim = sc.nextLine(); + System.out.print("Soal : No."); + int angka = Integer.parseInt(nim.substring(nim.length()-3)); + //System.out.println(angka%7 == 0? 7: angka%7); + if (angka%7 == 0) { + System.out.println(7); + + } else{ + System.out.println(angka%7); + } + sc.close(); + + } +} \ No newline at end of file diff --git a/src/H071221087/Pertemuan_1/No2.java b/src/H071221087/Pertemuan_1/No2.java new file mode 100644 index 0000000..85dbc6b --- /dev/null +++ b/src/H071221087/Pertemuan_1/No2.java @@ -0,0 +1,34 @@ +package H071221087.Pertemuan_1; + +import java.util.Scanner; + +public class No2 { + + public static void main(String[] args) { + try{ + Scanner sc = new Scanner(System.in); + System.out.print("Masukkan jumlah bilangan: "); + int nilai = sc.nextInt(); + int desimal = 0; + int bulat = 0; + + for (int i = 0; i < nilai; i++) { + double angka = sc.nextDouble(); + + if (angka % 1 == 0) { + bulat++; + } else { + desimal++; + } + } + + System.out.println(bulat + " Bilangan Bulat"); + System.out.println(desimal + " Bilangan Desimal"); + sc.close(); + + }catch (Exception e) { + System.out.println("Hanya bisa menerima angka"); + } + } +} + diff --git a/src/H071221087/Pertemuan_1/No3.java b/src/H071221087/Pertemuan_1/No3.java new file mode 100644 index 0000000..2de6dca --- /dev/null +++ b/src/H071221087/Pertemuan_1/No3.java @@ -0,0 +1,24 @@ +package H071221087.Pertemuan_1; + +import java.util.Scanner; + +public class No3 { + public static void main(String[] args) { + try { + Scanner sc = new Scanner (System.in); + System.out.print("Nama : "); + String nama = sc.nextLine(); + System.out.print("Umur : "); + String usia = sc.nextLine(); //jika di sini Nextint atau nextdouble atau next, lalu dibawahnya ada nextline maka harus ada nextLine diantanya + sc.nextLine(); + System.out.print("Hobby : "); + String hobby = sc.nextLine(); + sc.close(); + + System.out.print("Nama saya " + nama + ", " + usia + " Tahun, " + "Hobby " + hobby); + } catch(Exception e) { + System.out.println("Masukkan Umur berupa angka!!"); + } + +} +} diff --git a/src/H071221087/Pertemuan_1/No4.java b/src/H071221087/Pertemuan_1/No4.java new file mode 100644 index 0000000..cfe9276 --- /dev/null +++ b/src/H071221087/Pertemuan_1/No4.java @@ -0,0 +1,32 @@ +package H071221087.Pertemuan_1; + +import java.util.Scanner; + +public class No4 { + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + + System.out.print("Masukkan Judul Film: "); + String nama = sc.nextLine(); + String hasil = kapitalKata(nama); + System.out.println(hasil); + sc.close(); + } + + public static String kapitalKata(String namaString) { + String[] kata = namaString.split(" "); + for (int i = 0; i < kata.length; i++) { + if (kata[i].length() > 1) { + String kapital = kata[i].substring(0, 1).toUpperCase(); + String tidakKapital = kata[i].substring(1).toLowerCase(); + kata[i] = kapital + tidakKapital; + } else { + kata[i] = kata[i].toUpperCase(); + } + } + + String outputString = String.join(" ", kata); + + return outputString; + } +} \ No newline at end of file diff --git a/src/H071221087/Pertemuan_1/No5.java b/src/H071221087/Pertemuan_1/No5.java new file mode 100644 index 0000000..d32abd7 --- /dev/null +++ b/src/H071221087/Pertemuan_1/No5.java @@ -0,0 +1,52 @@ +package H071221087.Pertemuan_1; + +import java.util.Scanner; + +public class No5 { + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + String x = input.next(); + + String hari = x.substring(0, 2); + System.out.print(Integer.parseInt(hari)); + + String bulan = x.substring(3, 5); + int month = Integer.parseInt(bulan); + + if (month == 1) { + System.out.print(" Januari "); + } else if (month == 2) { + System.out.print(" Februari "); + } else if (month == 3) { + System.out.print(" Maret "); + } else if (month == 4) { + System.out.print(" April "); + } else if (month == 5) { + System.out.print(" Mei "); + } else if (month == 6) { + System.out.print(" Juni "); + } else if (month == 7) { + System.out.print(" Juli "); + } else if (month == 8) { + System.out.print(" Agustus "); + } else if (month == 9) { + System.out.print(" September "); + } else if (month == 10) { + System.out.print(" Oktober "); + } else if (month == 11) { + System.out.print(" November "); + } else if (month == 12) { + System.out.print(" Desember "); + } + + String tahun = x.substring(6, 8); + int year = Integer.parseInt(tahun); + + if (year <= 23) { + System.out.println("20" + tahun); + } else { + System.out.println("19" + tahun); + } + input.close(); + } +} \ No newline at end of file diff --git a/src/H071221087/Pertemuan_1/No6.java b/src/H071221087/Pertemuan_1/No6.java new file mode 100644 index 0000000..4d65681 --- /dev/null +++ b/src/H071221087/Pertemuan_1/No6.java @@ -0,0 +1,23 @@ +package H071221087.Pertemuan_1; + +import java.util.Scanner; + +public class No6 { + public static void main (String[] args) { + try { + Scanner sc = new Scanner(System.in); + double jarijari; + double luas; + final double pi = 3.14; + System.out.print("Masukkan jari-jari : "); + jarijari = sc.nextDouble(); + luas = pi * jarijari * jarijari; + sc.close(); + + String hasil = String.format("%.2f", luas); + System.out.println(hasil); + } catch (Exception e) { + + } + } +} \ No newline at end of file diff --git a/src/H071221087/Pertemuan_1/No7.java b/src/H071221087/Pertemuan_1/No7.java new file mode 100644 index 0000000..fad372c --- /dev/null +++ b/src/H071221087/Pertemuan_1/No7.java @@ -0,0 +1,27 @@ +package H071221087.Pertemuan_1; + +import java.util.Scanner; + +public class No7 { + + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + String zoo = sc.nextLine(); + int taman = findIndex(zoo); + System.out.println(taman); + + sc.close(); + } + + public static int findIndex(String teks) { + String binatang[] = { "Singa", "gajah", "ayam", "bebek", "masbro" }; + for (int i = 0; i < binatang.length; i += 1) { + if (binatang[i].equalsIgnoreCase(teks)) { + return i; + + } + } + return -1; + } + +} \ No newline at end of file diff --git a/src/H071221087/Pertemuan_1/No8.java b/src/H071221087/Pertemuan_1/No8.java new file mode 100644 index 0000000..707baf2 --- /dev/null +++ b/src/H071221087/Pertemuan_1/No8.java @@ -0,0 +1,24 @@ +package H071221087.Pertemuan_1; + +import java.util.Scanner; + +public class No8 { + public static void main(String[] args) { + try { + int[][] nilai = { { 1, 2, 3 }, { 4, 5, 6, 10 }, { 7, 8, 9 } }; + Scanner sc = new Scanner(System.in); + int angka = sc.nextInt(); + for (int i = 0; i < nilai.length; i++) { + for (int j = 0; j < nilai[i].length; j++) { + if (nilai[i][j] == angka) { + System.out.println(i + " " + j); + return; + } + } + sc.close(); + } + } catch (Exception e) { + + } + } +} From aab9e1f01060a62a0443a2e9d483725f3b6cdee2 Mon Sep 17 00:00:00 2001 From: toku404 Date: Sat, 25 Mar 2023 16:22:29 +0800 Subject: [PATCH 10/14] init --- src/H071221087/Pertemuan_1/No1.java | 23 ------------- src/H071221087/Pertemuan_1/No2.java | 34 ------------------ src/H071221087/Pertemuan_1/No3.java | 24 ------------- src/H071221087/Pertemuan_1/No4.java | 32 ----------------- src/H071221087/Pertemuan_1/No5.java | 52 ---------------------------- src/H071221087/Pertemuan_1/No6.java | 23 ------------- src/H071221087/Pertemuan_1/No7.java | 27 --------------- src/H071221087/Pertemuan_1/No8.java | 24 ------------- src/H071221088/Pertemuan_1/No1.java | 21 ++++++++++++ src/H071221088/Pertemuan_1/No2.java | 32 +++++++++++++++++ src/H071221088/Pertemuan_1/No3.java | 23 +++++++++++++ src/H071221088/Pertemuan_1/No4.java | 18 ++++++++++ src/H071221088/Pertemuan_1/No5.java | 53 +++++++++++++++++++++++++++++ src/H071221088/Pertemuan_1/No6.java | 18 ++++++++++ src/H071221088/Pertemuan_1/No7.java | 27 +++++++++++++++ src/H071221088/Pertemuan_1/No8.java | 31 +++++++++++++++++ 16 files changed, 223 insertions(+), 239 deletions(-) delete mode 100644 src/H071221087/Pertemuan_1/No1.java delete mode 100644 src/H071221087/Pertemuan_1/No2.java delete mode 100644 src/H071221087/Pertemuan_1/No3.java delete mode 100644 src/H071221087/Pertemuan_1/No4.java delete mode 100644 src/H071221087/Pertemuan_1/No5.java delete mode 100644 src/H071221087/Pertemuan_1/No6.java delete mode 100644 src/H071221087/Pertemuan_1/No7.java delete mode 100644 src/H071221087/Pertemuan_1/No8.java create mode 100644 src/H071221088/Pertemuan_1/No1.java create mode 100644 src/H071221088/Pertemuan_1/No2.java create mode 100644 src/H071221088/Pertemuan_1/No3.java create mode 100644 src/H071221088/Pertemuan_1/No4.java create mode 100644 src/H071221088/Pertemuan_1/No5.java create mode 100644 src/H071221088/Pertemuan_1/No6.java create mode 100644 src/H071221088/Pertemuan_1/No7.java create mode 100644 src/H071221088/Pertemuan_1/No8.java diff --git a/src/H071221087/Pertemuan_1/No1.java b/src/H071221087/Pertemuan_1/No1.java deleted file mode 100644 index d29c478..0000000 --- a/src/H071221087/Pertemuan_1/No1.java +++ /dev/null @@ -1,23 +0,0 @@ -package H071221087.Pertemuan_1; - -import java.util.Scanner; - -public class No1 { - public static void main(String[] args) { - - Scanner sc = new Scanner(System.in); - System.out.print("Nim : "); - String nim = sc.nextLine(); - System.out.print("Soal : No."); - int angka = Integer.parseInt(nim.substring(nim.length()-3)); - //System.out.println(angka%7 == 0? 7: angka%7); - if (angka%7 == 0) { - System.out.println(7); - - } else{ - System.out.println(angka%7); - } - sc.close(); - - } -} \ No newline at end of file diff --git a/src/H071221087/Pertemuan_1/No2.java b/src/H071221087/Pertemuan_1/No2.java deleted file mode 100644 index 85dbc6b..0000000 --- a/src/H071221087/Pertemuan_1/No2.java +++ /dev/null @@ -1,34 +0,0 @@ -package H071221087.Pertemuan_1; - -import java.util.Scanner; - -public class No2 { - - public static void main(String[] args) { - try{ - Scanner sc = new Scanner(System.in); - System.out.print("Masukkan jumlah bilangan: "); - int nilai = sc.nextInt(); - int desimal = 0; - int bulat = 0; - - for (int i = 0; i < nilai; i++) { - double angka = sc.nextDouble(); - - if (angka % 1 == 0) { - bulat++; - } else { - desimal++; - } - } - - System.out.println(bulat + " Bilangan Bulat"); - System.out.println(desimal + " Bilangan Desimal"); - sc.close(); - - }catch (Exception e) { - System.out.println("Hanya bisa menerima angka"); - } - } -} - diff --git a/src/H071221087/Pertemuan_1/No3.java b/src/H071221087/Pertemuan_1/No3.java deleted file mode 100644 index 2de6dca..0000000 --- a/src/H071221087/Pertemuan_1/No3.java +++ /dev/null @@ -1,24 +0,0 @@ -package H071221087.Pertemuan_1; - -import java.util.Scanner; - -public class No3 { - public static void main(String[] args) { - try { - Scanner sc = new Scanner (System.in); - System.out.print("Nama : "); - String nama = sc.nextLine(); - System.out.print("Umur : "); - String usia = sc.nextLine(); //jika di sini Nextint atau nextdouble atau next, lalu dibawahnya ada nextline maka harus ada nextLine diantanya - sc.nextLine(); - System.out.print("Hobby : "); - String hobby = sc.nextLine(); - sc.close(); - - System.out.print("Nama saya " + nama + ", " + usia + " Tahun, " + "Hobby " + hobby); - } catch(Exception e) { - System.out.println("Masukkan Umur berupa angka!!"); - } - -} -} diff --git a/src/H071221087/Pertemuan_1/No4.java b/src/H071221087/Pertemuan_1/No4.java deleted file mode 100644 index cfe9276..0000000 --- a/src/H071221087/Pertemuan_1/No4.java +++ /dev/null @@ -1,32 +0,0 @@ -package H071221087.Pertemuan_1; - -import java.util.Scanner; - -public class No4 { - public static void main(String[] args) { - Scanner sc = new Scanner(System.in); - - System.out.print("Masukkan Judul Film: "); - String nama = sc.nextLine(); - String hasil = kapitalKata(nama); - System.out.println(hasil); - sc.close(); - } - - public static String kapitalKata(String namaString) { - String[] kata = namaString.split(" "); - for (int i = 0; i < kata.length; i++) { - if (kata[i].length() > 1) { - String kapital = kata[i].substring(0, 1).toUpperCase(); - String tidakKapital = kata[i].substring(1).toLowerCase(); - kata[i] = kapital + tidakKapital; - } else { - kata[i] = kata[i].toUpperCase(); - } - } - - String outputString = String.join(" ", kata); - - return outputString; - } -} \ No newline at end of file diff --git a/src/H071221087/Pertemuan_1/No5.java b/src/H071221087/Pertemuan_1/No5.java deleted file mode 100644 index d32abd7..0000000 --- a/src/H071221087/Pertemuan_1/No5.java +++ /dev/null @@ -1,52 +0,0 @@ -package H071221087.Pertemuan_1; - -import java.util.Scanner; - -public class No5 { - public static void main(String[] args) { - Scanner input = new Scanner(System.in); - String x = input.next(); - - String hari = x.substring(0, 2); - System.out.print(Integer.parseInt(hari)); - - String bulan = x.substring(3, 5); - int month = Integer.parseInt(bulan); - - if (month == 1) { - System.out.print(" Januari "); - } else if (month == 2) { - System.out.print(" Februari "); - } else if (month == 3) { - System.out.print(" Maret "); - } else if (month == 4) { - System.out.print(" April "); - } else if (month == 5) { - System.out.print(" Mei "); - } else if (month == 6) { - System.out.print(" Juni "); - } else if (month == 7) { - System.out.print(" Juli "); - } else if (month == 8) { - System.out.print(" Agustus "); - } else if (month == 9) { - System.out.print(" September "); - } else if (month == 10) { - System.out.print(" Oktober "); - } else if (month == 11) { - System.out.print(" November "); - } else if (month == 12) { - System.out.print(" Desember "); - } - - String tahun = x.substring(6, 8); - int year = Integer.parseInt(tahun); - - if (year <= 23) { - System.out.println("20" + tahun); - } else { - System.out.println("19" + tahun); - } - input.close(); - } -} \ No newline at end of file diff --git a/src/H071221087/Pertemuan_1/No6.java b/src/H071221087/Pertemuan_1/No6.java deleted file mode 100644 index 4d65681..0000000 --- a/src/H071221087/Pertemuan_1/No6.java +++ /dev/null @@ -1,23 +0,0 @@ -package H071221087.Pertemuan_1; - -import java.util.Scanner; - -public class No6 { - public static void main (String[] args) { - try { - Scanner sc = new Scanner(System.in); - double jarijari; - double luas; - final double pi = 3.14; - System.out.print("Masukkan jari-jari : "); - jarijari = sc.nextDouble(); - luas = pi * jarijari * jarijari; - sc.close(); - - String hasil = String.format("%.2f", luas); - System.out.println(hasil); - } catch (Exception e) { - - } - } -} \ No newline at end of file diff --git a/src/H071221087/Pertemuan_1/No7.java b/src/H071221087/Pertemuan_1/No7.java deleted file mode 100644 index fad372c..0000000 --- a/src/H071221087/Pertemuan_1/No7.java +++ /dev/null @@ -1,27 +0,0 @@ -package H071221087.Pertemuan_1; - -import java.util.Scanner; - -public class No7 { - - public static void main(String[] args) { - Scanner sc = new Scanner(System.in); - String zoo = sc.nextLine(); - int taman = findIndex(zoo); - System.out.println(taman); - - sc.close(); - } - - public static int findIndex(String teks) { - String binatang[] = { "Singa", "gajah", "ayam", "bebek", "masbro" }; - for (int i = 0; i < binatang.length; i += 1) { - if (binatang[i].equalsIgnoreCase(teks)) { - return i; - - } - } - return -1; - } - -} \ No newline at end of file diff --git a/src/H071221087/Pertemuan_1/No8.java b/src/H071221087/Pertemuan_1/No8.java deleted file mode 100644 index 707baf2..0000000 --- a/src/H071221087/Pertemuan_1/No8.java +++ /dev/null @@ -1,24 +0,0 @@ -package H071221087.Pertemuan_1; - -import java.util.Scanner; - -public class No8 { - public static void main(String[] args) { - try { - int[][] nilai = { { 1, 2, 3 }, { 4, 5, 6, 10 }, { 7, 8, 9 } }; - Scanner sc = new Scanner(System.in); - int angka = sc.nextInt(); - for (int i = 0; i < nilai.length; i++) { - for (int j = 0; j < nilai[i].length; j++) { - if (nilai[i][j] == angka) { - System.out.println(i + " " + j); - return; - } - } - sc.close(); - } - } catch (Exception e) { - - } - } -} diff --git a/src/H071221088/Pertemuan_1/No1.java b/src/H071221088/Pertemuan_1/No1.java new file mode 100644 index 0000000..7fdd56d --- /dev/null +++ b/src/H071221088/Pertemuan_1/No1.java @@ -0,0 +1,21 @@ +package H071221088.Pertemuan_1; + +import java.util.Scanner; +public class No1{ + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + System.out.print("Nim = "); + String a = input.nextLine(); + System.out.print("Soal : no "); + int angka = Integer.parseInt(a.substring(a.length()-3)); + if (angka%7 == 0) { + System.out.println(7); + } + else { + System.out.println(angka%7); + } + input.close(); + } +} + + diff --git a/src/H071221088/Pertemuan_1/No2.java b/src/H071221088/Pertemuan_1/No2.java new file mode 100644 index 0000000..217ad4c --- /dev/null +++ b/src/H071221088/Pertemuan_1/No2.java @@ -0,0 +1,32 @@ +package H071221088.Pertemuan_1; + +import java.util.Scanner; + +public class No2 { + public static void main(String[] args) { + System.out.print("Masukkan angka : "); + Scanner input = new Scanner(System.in); + try{ + int a = input.nextInt(); + int desimal = 0; + int bulat = 0; + for (int i = 0; i < a; i++) { + System.out.print("Masukkan bilangan ke " + (i+1) + " : "); + double bilangan = input.nextDouble(); + if (bilangan%1 == 0) { + bulat++; + } + else { + desimal++; + } + } + System.out.println(bulat + (" Bilangan Bulat")); + System.out.println(desimal + (" Bilangan Desimal")); + input.close(); + } + catch (Exception e) { + System.out.println("Inputan hanya berupa angka"); + } + } +} + \ No newline at end of file diff --git a/src/H071221088/Pertemuan_1/No3.java b/src/H071221088/Pertemuan_1/No3.java new file mode 100644 index 0000000..76cda46 --- /dev/null +++ b/src/H071221088/Pertemuan_1/No3.java @@ -0,0 +1,23 @@ +package H071221088.Pertemuan_1; + +import java.util.Scanner; + +public class No3 { + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + try { + System.out.print("Nama = "); + String a = input.nextLine(); + System.out.print("Umur = "); + int b = input.nextInt(); + input.nextLine(); + System.out.print("Hobby = "); + String c = input.nextLine(); + System.out.println("Nama saya " + a + ", " + b + " tahun, hobby " + c); + } + catch (Exception e) { + System.out.println("Inputan umur harus berupa angka"); + } + input.close(); + } +} diff --git a/src/H071221088/Pertemuan_1/No4.java b/src/H071221088/Pertemuan_1/No4.java new file mode 100644 index 0000000..97a2f7a --- /dev/null +++ b/src/H071221088/Pertemuan_1/No4.java @@ -0,0 +1,18 @@ +package H071221088.Pertemuan_1; + +import java.util.Scanner; + +public class No4 { + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + System.out.print("Masukkan kalimat: "); + String kalimat = input.nextLine(); + String[] kata = kalimat.toLowerCase().split(" "); + String kalimatBaru = ""; + for (int i = 0; i < kata.length; i++) { + kalimatBaru += kata[i].substring(0,1).toUpperCase() + kata[i].substring(1) + " "; + } + System.out.println(kalimatBaru.trim()); + input.close(); + } +} \ No newline at end of file diff --git a/src/H071221088/Pertemuan_1/No5.java b/src/H071221088/Pertemuan_1/No5.java new file mode 100644 index 0000000..7d2f22f --- /dev/null +++ b/src/H071221088/Pertemuan_1/No5.java @@ -0,0 +1,53 @@ +package H071221088.Pertemuan_1; + +import java.util.Scanner; + +public class No5 { + public static void main(String[] args) { + Scanner inp = new Scanner(System.in); + String tanggal = inp.nextLine(); + String [] arraytanggal = tanggal.split("-"); + int [] arraytanggal2 = new int [3]; + for (int i = 0; i < arraytanggal.length; i++) { + arraytanggal2[i] = Integer.parseInt(arraytanggal[i]); + } + int tahun = arraytanggal2[2]; + String tahun2 = ""; + if (tahun >= 0 && tahun < 30){ + tahun2 = "20" + arraytanggal[2]; + } else { + tahun2 = "19" + arraytanggal[2]; + } + inp.close(); + System.out.println(arraytanggal2[0] + " " + konversiBulan(arraytanggal2[1])+ " " + tahun2); + } + public static String konversiBulan(int angka){ + if (angka == 1) { + return "Januari"; + } else if (angka == 2) { + return "Februari"; + } else if (angka == 3) { + return "Maret"; + } else if (angka == 4) { + return "April"; + } else if (angka == 5) { + return "Mei"; + } else if (angka == 6) { + return "Juni"; + } else if (angka == 7) { + return "Juli"; + } else if (angka == 8) { + return "Agustus"; + } else if (angka == 9) { + return "September"; + } else if (angka == 10) { + return "Oktober"; + } else if (angka == 11) { + return "November"; + } else if (angka == 12) { + return "Desember"; + } else { + return ""; + } + } +} diff --git a/src/H071221088/Pertemuan_1/No6.java b/src/H071221088/Pertemuan_1/No6.java new file mode 100644 index 0000000..f8a42fd --- /dev/null +++ b/src/H071221088/Pertemuan_1/No6.java @@ -0,0 +1,18 @@ +package H071221088.Pertemuan_1; + +import java.util.Scanner; + +public class No6 { + public static void main(String[] args) { + Scanner input = new Scanner(System.in); + try { + System.out.print("Masukkan jari-jari lingkaran: "); + double r = input.nextDouble(); + double luas = Math.PI * (r*r); + System.out.printf("Luas lingkaran adalah: %.2f", luas); + } catch (Exception e) { + System.out.println("Hanya menerima angka"); + } + input.close(); + } +} diff --git a/src/H071221088/Pertemuan_1/No7.java b/src/H071221088/Pertemuan_1/No7.java new file mode 100644 index 0000000..e901b2e --- /dev/null +++ b/src/H071221088/Pertemuan_1/No7.java @@ -0,0 +1,27 @@ +package H071221088.Pertemuan_1; + +import java.util.Scanner; +public class No7 { + static String[] serangga = {"Tawon", "Nyamuk", "Lalat", "Ngengat", "Rayap", "Lipan", "Ulat", "Belatung", "Laron", +"Kumbang", "Belalang"}; +public static void main(String[] args) { + Scanner input = new Scanner(System.in); + System.out.print("Key: "); + String inputSerangga = input.next(); + int indexSerangga = findIndex(inputSerangga); + System.out.println(indexSerangga); + input.close(); +} +static int findIndex(String inputserangga){ + inputserangga = inputserangga.toLowerCase(); + int result = -1; + for (int i = 0; i < serangga.length; i++) { + String serangga1 = serangga[i]; + serangga1 = serangga1.toLowerCase(); + if (serangga1.equals(inputserangga)){ + result = i; + } + } + return result; +} +} \ No newline at end of file diff --git a/src/H071221088/Pertemuan_1/No8.java b/src/H071221088/Pertemuan_1/No8.java new file mode 100644 index 0000000..4e25a2d --- /dev/null +++ b/src/H071221088/Pertemuan_1/No8.java @@ -0,0 +1,31 @@ +package H071221088.Pertemuan_1; + +import java.util.Scanner; + +public class No8 { + public static void main(String[] args) { + int[][] angka = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9, }, { 10, 11 }, { 12 }, { 13, 14, 15, 16 } }; + Scanner input = new Scanner(System.in); + + try { + System.out.print("Input angka yang ingin di cari : "); + int inputAngka = input.nextInt(); + + if (inputAngka > 16) { + System.out.println("Angka yang di input di ada dalam array"); + } + for (int i = 0; i < angka.length; i++) { + for (int j = 0; j < angka[i].length; j++) { + int angka1 = angka[i][j]; + if (angka1 == inputAngka) { + System.out.println("Found " + inputAngka + " at [" + i + "][" + j + "]"); + break; + } + } + } + } catch (Exception e) { + System.out.println("Input harus berupa data integer (angka)"); + } + input.close(); + } +} \ No newline at end of file From 7b13c78dcd1f61a1e43b7dd49baf2d3b580a2c28 Mon Sep 17 00:00:00 2001 From: toku404 Date: Sat, 25 Mar 2023 16:25:40 +0800 Subject: [PATCH 11/14] init --- src/H071221088/Pertemuan_1/No1.java | 21 ---------- src/H071221088/Pertemuan_1/No2.java | 32 --------------- src/H071221088/Pertemuan_1/No3.java | 23 ----------- src/H071221088/Pertemuan_1/No4.java | 18 --------- src/H071221088/Pertemuan_1/No5.java | 53 ------------------------- src/H071221088/Pertemuan_1/No6.java | 18 --------- src/H071221088/Pertemuan_1/No7.java | 27 ------------- src/H071221088/Pertemuan_1/No8.java | 31 --------------- src/H071221092/Pertemuan_1/No1.java | 30 ++++++++++++++ src/H071221092/Pertemuan_1/No2.java | 33 ++++++++++++++++ src/H071221092/Pertemuan_1/No3.java | 26 ++++++++++++ src/H071221092/Pertemuan_1/No4.java | 34 ++++++++++++++++ src/H071221092/Pertemuan_1/No5.java | 61 +++++++++++++++++++++++++++++ src/H071221092/Pertemuan_1/No6.java | 28 +++++++++++++ src/H071221092/Pertemuan_1/No7.java | 23 +++++++++++ src/H071221092/Pertemuan_1/No8.java | 35 +++++++++++++++++ 16 files changed, 270 insertions(+), 223 deletions(-) delete mode 100644 src/H071221088/Pertemuan_1/No1.java delete mode 100644 src/H071221088/Pertemuan_1/No2.java delete mode 100644 src/H071221088/Pertemuan_1/No3.java delete mode 100644 src/H071221088/Pertemuan_1/No4.java delete mode 100644 src/H071221088/Pertemuan_1/No5.java delete mode 100644 src/H071221088/Pertemuan_1/No6.java delete mode 100644 src/H071221088/Pertemuan_1/No7.java delete mode 100644 src/H071221088/Pertemuan_1/No8.java create mode 100644 src/H071221092/Pertemuan_1/No1.java create mode 100644 src/H071221092/Pertemuan_1/No2.java create mode 100644 src/H071221092/Pertemuan_1/No3.java create mode 100644 src/H071221092/Pertemuan_1/No4.java create mode 100644 src/H071221092/Pertemuan_1/No5.java create mode 100644 src/H071221092/Pertemuan_1/No6.java create mode 100644 src/H071221092/Pertemuan_1/No7.java create mode 100644 src/H071221092/Pertemuan_1/No8.java diff --git a/src/H071221088/Pertemuan_1/No1.java b/src/H071221088/Pertemuan_1/No1.java deleted file mode 100644 index 7fdd56d..0000000 --- a/src/H071221088/Pertemuan_1/No1.java +++ /dev/null @@ -1,21 +0,0 @@ -package H071221088.Pertemuan_1; - -import java.util.Scanner; -public class No1{ - public static void main(String[] args) { - Scanner input = new Scanner(System.in); - System.out.print("Nim = "); - String a = input.nextLine(); - System.out.print("Soal : no "); - int angka = Integer.parseInt(a.substring(a.length()-3)); - if (angka%7 == 0) { - System.out.println(7); - } - else { - System.out.println(angka%7); - } - input.close(); - } -} - - diff --git a/src/H071221088/Pertemuan_1/No2.java b/src/H071221088/Pertemuan_1/No2.java deleted file mode 100644 index 217ad4c..0000000 --- a/src/H071221088/Pertemuan_1/No2.java +++ /dev/null @@ -1,32 +0,0 @@ -package H071221088.Pertemuan_1; - -import java.util.Scanner; - -public class No2 { - public static void main(String[] args) { - System.out.print("Masukkan angka : "); - Scanner input = new Scanner(System.in); - try{ - int a = input.nextInt(); - int desimal = 0; - int bulat = 0; - for (int i = 0; i < a; i++) { - System.out.print("Masukkan bilangan ke " + (i+1) + " : "); - double bilangan = input.nextDouble(); - if (bilangan%1 == 0) { - bulat++; - } - else { - desimal++; - } - } - System.out.println(bulat + (" Bilangan Bulat")); - System.out.println(desimal + (" Bilangan Desimal")); - input.close(); - } - catch (Exception e) { - System.out.println("Inputan hanya berupa angka"); - } - } -} - \ No newline at end of file diff --git a/src/H071221088/Pertemuan_1/No3.java b/src/H071221088/Pertemuan_1/No3.java deleted file mode 100644 index 76cda46..0000000 --- a/src/H071221088/Pertemuan_1/No3.java +++ /dev/null @@ -1,23 +0,0 @@ -package H071221088.Pertemuan_1; - -import java.util.Scanner; - -public class No3 { - public static void main(String[] args) { - Scanner input = new Scanner(System.in); - try { - System.out.print("Nama = "); - String a = input.nextLine(); - System.out.print("Umur = "); - int b = input.nextInt(); - input.nextLine(); - System.out.print("Hobby = "); - String c = input.nextLine(); - System.out.println("Nama saya " + a + ", " + b + " tahun, hobby " + c); - } - catch (Exception e) { - System.out.println("Inputan umur harus berupa angka"); - } - input.close(); - } -} diff --git a/src/H071221088/Pertemuan_1/No4.java b/src/H071221088/Pertemuan_1/No4.java deleted file mode 100644 index 97a2f7a..0000000 --- a/src/H071221088/Pertemuan_1/No4.java +++ /dev/null @@ -1,18 +0,0 @@ -package H071221088.Pertemuan_1; - -import java.util.Scanner; - -public class No4 { - public static void main(String[] args) { - Scanner input = new Scanner(System.in); - System.out.print("Masukkan kalimat: "); - String kalimat = input.nextLine(); - String[] kata = kalimat.toLowerCase().split(" "); - String kalimatBaru = ""; - for (int i = 0; i < kata.length; i++) { - kalimatBaru += kata[i].substring(0,1).toUpperCase() + kata[i].substring(1) + " "; - } - System.out.println(kalimatBaru.trim()); - input.close(); - } -} \ No newline at end of file diff --git a/src/H071221088/Pertemuan_1/No5.java b/src/H071221088/Pertemuan_1/No5.java deleted file mode 100644 index 7d2f22f..0000000 --- a/src/H071221088/Pertemuan_1/No5.java +++ /dev/null @@ -1,53 +0,0 @@ -package H071221088.Pertemuan_1; - -import java.util.Scanner; - -public class No5 { - public static void main(String[] args) { - Scanner inp = new Scanner(System.in); - String tanggal = inp.nextLine(); - String [] arraytanggal = tanggal.split("-"); - int [] arraytanggal2 = new int [3]; - for (int i = 0; i < arraytanggal.length; i++) { - arraytanggal2[i] = Integer.parseInt(arraytanggal[i]); - } - int tahun = arraytanggal2[2]; - String tahun2 = ""; - if (tahun >= 0 && tahun < 30){ - tahun2 = "20" + arraytanggal[2]; - } else { - tahun2 = "19" + arraytanggal[2]; - } - inp.close(); - System.out.println(arraytanggal2[0] + " " + konversiBulan(arraytanggal2[1])+ " " + tahun2); - } - public static String konversiBulan(int angka){ - if (angka == 1) { - return "Januari"; - } else if (angka == 2) { - return "Februari"; - } else if (angka == 3) { - return "Maret"; - } else if (angka == 4) { - return "April"; - } else if (angka == 5) { - return "Mei"; - } else if (angka == 6) { - return "Juni"; - } else if (angka == 7) { - return "Juli"; - } else if (angka == 8) { - return "Agustus"; - } else if (angka == 9) { - return "September"; - } else if (angka == 10) { - return "Oktober"; - } else if (angka == 11) { - return "November"; - } else if (angka == 12) { - return "Desember"; - } else { - return ""; - } - } -} diff --git a/src/H071221088/Pertemuan_1/No6.java b/src/H071221088/Pertemuan_1/No6.java deleted file mode 100644 index f8a42fd..0000000 --- a/src/H071221088/Pertemuan_1/No6.java +++ /dev/null @@ -1,18 +0,0 @@ -package H071221088.Pertemuan_1; - -import java.util.Scanner; - -public class No6 { - public static void main(String[] args) { - Scanner input = new Scanner(System.in); - try { - System.out.print("Masukkan jari-jari lingkaran: "); - double r = input.nextDouble(); - double luas = Math.PI * (r*r); - System.out.printf("Luas lingkaran adalah: %.2f", luas); - } catch (Exception e) { - System.out.println("Hanya menerima angka"); - } - input.close(); - } -} diff --git a/src/H071221088/Pertemuan_1/No7.java b/src/H071221088/Pertemuan_1/No7.java deleted file mode 100644 index e901b2e..0000000 --- a/src/H071221088/Pertemuan_1/No7.java +++ /dev/null @@ -1,27 +0,0 @@ -package H071221088.Pertemuan_1; - -import java.util.Scanner; -public class No7 { - static String[] serangga = {"Tawon", "Nyamuk", "Lalat", "Ngengat", "Rayap", "Lipan", "Ulat", "Belatung", "Laron", -"Kumbang", "Belalang"}; -public static void main(String[] args) { - Scanner input = new Scanner(System.in); - System.out.print("Key: "); - String inputSerangga = input.next(); - int indexSerangga = findIndex(inputSerangga); - System.out.println(indexSerangga); - input.close(); -} -static int findIndex(String inputserangga){ - inputserangga = inputserangga.toLowerCase(); - int result = -1; - for (int i = 0; i < serangga.length; i++) { - String serangga1 = serangga[i]; - serangga1 = serangga1.toLowerCase(); - if (serangga1.equals(inputserangga)){ - result = i; - } - } - return result; -} -} \ No newline at end of file diff --git a/src/H071221088/Pertemuan_1/No8.java b/src/H071221088/Pertemuan_1/No8.java deleted file mode 100644 index 4e25a2d..0000000 --- a/src/H071221088/Pertemuan_1/No8.java +++ /dev/null @@ -1,31 +0,0 @@ -package H071221088.Pertemuan_1; - -import java.util.Scanner; - -public class No8 { - public static void main(String[] args) { - int[][] angka = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9, }, { 10, 11 }, { 12 }, { 13, 14, 15, 16 } }; - Scanner input = new Scanner(System.in); - - try { - System.out.print("Input angka yang ingin di cari : "); - int inputAngka = input.nextInt(); - - if (inputAngka > 16) { - System.out.println("Angka yang di input di ada dalam array"); - } - for (int i = 0; i < angka.length; i++) { - for (int j = 0; j < angka[i].length; j++) { - int angka1 = angka[i][j]; - if (angka1 == inputAngka) { - System.out.println("Found " + inputAngka + " at [" + i + "][" + j + "]"); - break; - } - } - } - } catch (Exception e) { - System.out.println("Input harus berupa data integer (angka)"); - } - input.close(); - } -} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_1/No1.java b/src/H071221092/Pertemuan_1/No1.java new file mode 100644 index 0000000..0e048b8 --- /dev/null +++ b/src/H071221092/Pertemuan_1/No1.java @@ -0,0 +1,30 @@ +package H071221092.Pertemuan_1; + +import java.util.Scanner; + +public class No1 { + public static void main(String[] args) { + int nim; + Scanner keyboard = new Scanner(System.in); + System.out.print("Masukkan NIM: "); + nim = keyboard.nextInt(); + + if (nim % 7 == 0) { + System.out.println("Soal: no 7"); + } else if (nim % 7 == 1) { + System.out.println("Soal: no 1"); + } else if (nim % 7 == 2) { + System.out.println("Soal: no 2"); + } else if (nim % 7 == 3) { + System.out.println("Soal: no 3"); + } else if (nim % 7 == 4) { + System.out.println("Soal: no 4"); + } else if (nim % 7 == 5) { + System.out.println("Soal: no 5"); + } else if (nim % 7 == 6) { + System.out.println("Soal: no 6"); + } + keyboard.close(); + } + +} diff --git a/src/H071221092/Pertemuan_1/No2.java b/src/H071221092/Pertemuan_1/No2.java new file mode 100644 index 0000000..2ab92a8 --- /dev/null +++ b/src/H071221092/Pertemuan_1/No2.java @@ -0,0 +1,33 @@ +package H071221092.Pertemuan_1; + +import java.util.Scanner; + +public class No2 { + public static void main(String[] args) { + Scanner userInput = new Scanner(System.in) ; + int bilBulat,bilDesimal,n,i; + + bilBulat = 0; + bilDesimal = 0; + + try{ + System.out.print("Masukkan Jumlah Bilangan :"); + n = userInput.nextInt(); + userInput.nextLine(); + + for(i = 0; i < n; i++) { + double num = userInput.nextDouble(); //untuk mencari nilai yang double / float di python + if (num % 1 == 0 ) { + bilBulat++; + } else { + bilDesimal++; + } + } + System.out.println(bilBulat + " Bilangan Bulat"); + System.out.println(bilDesimal + " Bilangan Desimal"); + userInput.close() ; + } catch (Exception e) { + System.out.println("Input Harus Berupa Angka"); + } + } +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_1/No3.java b/src/H071221092/Pertemuan_1/No3.java new file mode 100644 index 0000000..e64f8e4 --- /dev/null +++ b/src/H071221092/Pertemuan_1/No3.java @@ -0,0 +1,26 @@ +package H071221092.Pertemuan_1; + +import java.util.Scanner; + +public class No3 { + public static void main(String[] args) { + Scanner input= new Scanner (System.in); + + try{ + System.out.print("Name : "); + String name = input.nextLine(); + + System.out.print("Age : "); + int age = input.nextInt(); + input.nextLine(); //baris + + System.out.print("Hobby : "); + String hobby = input.nextLine(); + + System.out.print("Nama saya " + name + ", " + age + " Tahun, hobby " + hobby + "."); + } catch (Exception e) { + System.out.println("Umur harus berupa angka"); + } + input.close() ; + } +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_1/No4.java b/src/H071221092/Pertemuan_1/No4.java new file mode 100644 index 0000000..57218b5 --- /dev/null +++ b/src/H071221092/Pertemuan_1/No4.java @@ -0,0 +1,34 @@ + +package H071221092.Pertemuan_1; + +import java.util.Scanner; + +public class No4 { + public static void main(String[] args) { + Scanner inputan = new Scanner(System.in); + + String kalimat; + + System.out.print("Masukkan Judul Film : "); + kalimat = inputan.nextLine(); + + String kalimatBaru = new String(); + + String[] array = kalimat.split(" "); + for (int index = 0; index < array.length; index=index+1) { + // System.out.print(array[index] + " "); + String kataBaru = array[index].toUpperCase().charAt(0) + array[index].substring(1).toLowerCase(); + System.out.print(kataBaru + " ") ; + } + // Split kalimat menjadi beberapa kata: + // // for (String kata : kalimat.split(" ")) { + + // String kataBaru = kata.toUpperCase().charAt(0) + kata.substring(1).toLowerCase(); + + // // kalimatBaru.append(kataBaru).append(" "); + // kalimatBaru += kataBaru + (" "); + // } + // System.out.println(kalimatBaru); + // inputan.close(); + } +} diff --git a/src/H071221092/Pertemuan_1/No5.java b/src/H071221092/Pertemuan_1/No5.java new file mode 100644 index 0000000..5709e19 --- /dev/null +++ b/src/H071221092/Pertemuan_1/No5.java @@ -0,0 +1,61 @@ +package H071221092.Pertemuan_1; + +import java.util.Scanner; + +public class No5 { + public static void main(String[] args) { + Scanner ip = new Scanner(System.in); + String a = ip.next(); + String day = a.substring(0, 2); + System.out.print(Integer.parseInt(day)); //untuk ubah 03 mnjdi 3 (menghilangkan 0) + String bulan = a.substring(3, 5); + int month = Integer.parseInt(bulan); + String [] bul = {"Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "september", "Oktober", "November", "Desember"}; + System.out.print(" " + bul[month-1] + " "); + + // if (month == 1) { + // System.out.print(" Januari "); + // } + // else if (month == 2) { + // System.out.print(" Februari "); + // } + // else if (month == 3) { + // System.out.print(" Maret "); + // } + // else if (month == 4) { + // System.out.print(" April "); + // } + // else if (month == 5) { + // System.out.print(" Mei "); + // } + // else if (month == 6) { + // System.out.print(" Juni "); + // } + // else if (month == 7) { + // System.out.print(" Juli "); + // } + // else if (month == 8) { + // System.out.print(" Agustus "); + // } + // else if (month == 9) { + // System.out.print(" September "); + // } + // else if (month == 10) { + // System.out.print(" Oktober "); + // } + // else if (month == 11) { + // System.out.print(" November "); + // } + // else if (month == 12) { + // System.out.print(" Desember "); + // } + String tahun = a.substring(6, 8); + int year = Integer.parseInt (tahun); + if (year <= 23) { + System.out.print("20" + tahun); + } + else { + System.out.print("19" + tahun); + } ip.close(); + } +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_1/No6.java b/src/H071221092/Pertemuan_1/No6.java new file mode 100644 index 0000000..b2a04ce --- /dev/null +++ b/src/H071221092/Pertemuan_1/No6.java @@ -0,0 +1,28 @@ +package H071221092.Pertemuan_1; + +import java.util.Scanner; + +public class No6 { + public static void main(String[] args) { + + Scanner input = new Scanner(System.in); + + //Deklarasi variabel + double luas, phi=3.14; + double r; + try { + //Input nilai jari-jari + System.out.print("Masukan Jari-jari : "); + r = input.nextDouble(); + + //Menghitung luas lingkaran + luas = phi*r*r; + + //untuk menampilkan hasil + System.out.printf("Luas Lingkaran = %.2f",luas); + input.close(); + } catch(Exception a) { + System.out.println("Inputan bukan angka"); + } + } +} diff --git a/src/H071221092/Pertemuan_1/No7.java b/src/H071221092/Pertemuan_1/No7.java new file mode 100644 index 0000000..f70ca36 --- /dev/null +++ b/src/H071221092/Pertemuan_1/No7.java @@ -0,0 +1,23 @@ +package H071221092.Pertemuan_1; + +import java.util.Scanner; + +public class No7 { + public static void main(String[] args) { + String [] Makanan = {"KFC" , "MCD" , "Shilin" , "Pangsit" , "Bakso"} ; + Scanner input = new Scanner (System.in) ; + System.out.println("Masukkan nama makanan:"); + String search = input.nextLine() ; + input.close() ; // + + System.out.println(findIndex(Makanan, search)); + } + public static int findIndex (String[] array, String teks) { + for (int i = 0; i < array.length; i=i+1) { + if (array[i].toLowerCase().equals(teks.toLowerCase())) { // method untuk digunakan untuk mengabaikan case sensitive contohnya hurufbesar kecil pada inputan //cara lain gunakan tolowercase + return i ; + } + } + return -1 ; + } +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_1/No8.java b/src/H071221092/Pertemuan_1/No8.java new file mode 100644 index 0000000..7caf291 --- /dev/null +++ b/src/H071221092/Pertemuan_1/No8.java @@ -0,0 +1,35 @@ +package H071221092.Pertemuan_1; + +import java.util.Scanner; + +public class No8 { + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + + // Input satu bilangan + try { + System.out.print("Masukkan satu bilangan : "); + int bil = scanner.nextInt(); + + int[][] array2D = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }; + boolean found = false; + + for (int i = 0; i < array2D.length; i++) { + for (int j = 0; j < array2D[i].length; j++) { + if (array2D[i][j] == bil) { + System.out.println("Bilangan " + bil + " ditemukan pada indeks [" + i + "][" + j + "]"); + found = true; + return; + } + } + } + if (!found) { + System.out.println("Bilangan " + bil + " tidak ditemukan pada array 2D"); + } + } catch (Exception e) { + System.out.println("Inputan harus berupa angka"); + + } + scanner.close(); + } +} \ No newline at end of file From 94806e31fd4a05ee71b4c0334604fe4d1178198d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=A4=E3=82=AF=E3=82=B5=E3=83=B3?= <54715920+ToKu404@users.noreply.github.com> Date: Sat, 25 Mar 2023 16:32:28 +0800 Subject: [PATCH 12/14] Update README.md --- README.md | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index f859e46..9a768b4 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -# Lab OOP -Repository tempat pengumpulan tugas untuk Lab OOp +# Lab-OOP +Repository tempat pengumpulan tugas untuk Praktikan Lab OOP Sistem Informasi 2022 ## Aturan Pengumpulan **Note:** @@ -11,18 +11,30 @@ _Untuk perintah yang dibungkus < > maka perintah tersebut diganti sesuai instruk ``` - Pindah ke repositori hasil clone dengan perintah berikut ``` - cd lab-oop/src/ + cd Lab-Pbo-J ``` -- Buat branch baru berdasarkan NIM kalian serta gunakan branch tersebut untuk menyimpan kode dari soal yang dikerjakan +- Pindah ke branch NIM kalian serta gunakan branch tersebut untuk menyimpan kode dari soal yang dikerjakan ``` - git checkout -b + git checkout ``` -- Buat folder baru berdasarkan NIM kalian +- Buat folder baru berdasarkan NIM kalian di dalam folder `src` ``` + cd src mkdir ``` -- Di dalam folder NIM kalian buat folder dengan nama "Pertemuan_<_no_pertemuan_>" tanpa tanda kutip. contoh: Pertemuan_01 -- Di dalam folder pertemuan tersebut, kalian menambahkan file tugas praktikum yang telah kalian kerjakan dengan format nama file "assignment_<_no pertemuan_>_<_no_soal_>.java" tanpa tanda kutip +- Di dalam folder NIM kalian buat folder dengan nama "Pertemuan_<_no_pertemuan_>" tanpa tanda kutip. contoh: Pertemuan_1 +- Di dalam folder pertemuan tersebut, kalian menambahkan file tugas praktikum yang telah kalian kerjakan dengan format nama file "No<_no_soal_>.java" tanpa tanda kutip. Contoh: No1.java +- Perhatikan bahwa disetiap filenya kalian harus menambahkan packagenya di awal file tersebut. Dimana nama package nantinya harus sesuai dengan folder dimana file tersebut berada di dalma folder `src`. +Contoh: +``` +package H071191049.Pertemuan_1 + +public class Main{ + .... + ... +} +``` +berarti file di atas berada di folder `src/H071191049/Pertemuan_1`. Untuk contoh detailnya bisa dilihat di file `src/H071191049/Pertemuan_1/Main.java` dan `src/H071191049/Pertemuan_1/my_package/Person.java` - Setelah semua file tugas telah diselesaikan dan telah diasistensikan lakukan perintah berikut ``` git add . @@ -31,7 +43,7 @@ _Untuk perintah yang dibungkus < > maka perintah tersebut diganti sesuai instruk ``` Note: Pesan commit yang dibuat diharapkan sesuai dengan hal yang dilakukan. Seperti "menambah tugas praktikum ..." atau "memperbaiki type di file ..." -- Setiap file wajib menggunakan package, dengan format misal nim anda H071191049 dan Tugasnya merupakan tugas Pertemuan_02, maka packagenya - ```package H071191049.Pertemuan02``` -- Setelah perintah tersebut berhasil, silahkan membuka repository hasil fork kalian di github dan lakukan pull request ke repository ini. +- Setelah perintah tersebut berhasil, silahkan membuka repository hasil fork kalian di github dan lakukan pull request ke repository ini. +- Pastikan base branch sama dengan branch NIM kalian +![panduan pull request](https://i.ibb.co/XtWGrS6/Panduan-pull-request.png) - Apabila terdapat kesulitan, silahkan menghubungi asistennya From 35bd12f882926a9f85c21e142c0ef9cdd173203d Mon Sep 17 00:00:00 2001 From: fara1201 <114276188+fara1201@users.noreply.github.com> Date: Tue, 4 Apr 2023 15:00:06 +0800 Subject: [PATCH 13/14] kumpul --- .../Pertemuan_2/.vscode/settings.json | 3 + src/H071221092/Pertemuan_2/No1.java | 29 +++++++ src/H071221092/Pertemuan_2/No2.java | 43 ++++++++++ src/H071221092/Pertemuan_2/No3.java | 67 ++++++++++++++++ src/H071221092/Pertemuan_2/No4.java | 20 +++++ src/H071221092/Pertemuan_2/No5.java | 43 ++++++++++ src/H071221092/Pertemuan_3/No1.java | 78 +++++++++++++++++++ src/H071221092/Pertemuan_3/No2.java | 63 +++++++++++++++ src/H071221092/Pertemuan_3/No3.java | 36 +++++++++ 9 files changed, 382 insertions(+) create mode 100644 src/H071221092/Pertemuan_2/.vscode/settings.json create mode 100644 src/H071221092/Pertemuan_2/No1.java create mode 100644 src/H071221092/Pertemuan_2/No2.java create mode 100644 src/H071221092/Pertemuan_2/No3.java create mode 100644 src/H071221092/Pertemuan_2/No4.java create mode 100644 src/H071221092/Pertemuan_2/No5.java create mode 100644 src/H071221092/Pertemuan_3/No1.java create mode 100644 src/H071221092/Pertemuan_3/No2.java create mode 100644 src/H071221092/Pertemuan_3/No3.java diff --git a/src/H071221092/Pertemuan_2/.vscode/settings.json b/src/H071221092/Pertemuan_2/.vscode/settings.json new file mode 100644 index 0000000..c995aa5 --- /dev/null +++ b/src/H071221092/Pertemuan_2/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "java.debug.settings.onBuildFailureProceed": true +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_2/No1.java b/src/H071221092/Pertemuan_2/No1.java new file mode 100644 index 0000000..1e081ec --- /dev/null +++ b/src/H071221092/Pertemuan_2/No1.java @@ -0,0 +1,29 @@ +class Handphone { + String merk ; // atribt 3-6 + String warna ; + int harga ; + + public String getMerk () { + return merk; + } + public String getWarna () { + return warna; + } + public int getHarga () { + return harga; + } +} + +public class No1 { // class main method harus public dan public cuma boleh ada satu dalam satu file + public static void main(String[] args) { + Handphone hp = new Handphone (); + hp.merk = "Iphone"; + hp.warna = "Merah"; + hp.harga = 10000; + + System.out.println("Merk handphone: " + hp.getMerk()); + System.out.println("Warna handphone: " + hp.getWarna()); + System.out.println("Harga handphone: " + hp.getHarga()); + + } +} diff --git a/src/H071221092/Pertemuan_2/No2.java b/src/H071221092/Pertemuan_2/No2.java new file mode 100644 index 0000000..d06c694 --- /dev/null +++ b/src/H071221092/Pertemuan_2/No2.java @@ -0,0 +1,43 @@ +class Person { + String name; //atribut 2-4 + int age; + boolean isMale; + + public void setName (String name){ //String name itu parameter + this.name = name; // this supaya merujuk ke objek atau class dan nama antara atribut dan parameter harus sama, bisa tidak pakai this tp harus beda nama antara atribut dan parameter + } + public String getName () { + return name; + } + public void setAge (int age) { //public void yaitu method yang tidak mengembalikan apa2 + this.age = age; + } + public int getAge () { + return age; + } + public void setGender (String gender) { //String gender karena + this.isMale = gender == "male"; + } + public String getGender (){ + if (isMale) { + return "male"; + } + else { + return "female"; + } + + } +} + +public class No2{ + public static void main(String[] args) { + Person orang = new Person (); + orang.setName("Fara"); + orang.setAge(18); + orang.setGender("female"); + + System.out.println("Nama: " + orang.getName()); + System.out.println("Umur: " + orang.getAge()); + System.out.println("Jenis kelamin: " + orang.getGender()); + } +} diff --git a/src/H071221092/Pertemuan_2/No3.java b/src/H071221092/Pertemuan_2/No3.java new file mode 100644 index 0000000..6611859 --- /dev/null +++ b/src/H071221092/Pertemuan_2/No3.java @@ -0,0 +1,67 @@ +class Produk { + String ID; + String nama; + int stok; + int harga; + public Produk (){ + } + public Produk (String ID, String nama, int stok, int harga ){ + this.ID = ID; + this.nama = nama; + this.stok = stok; + this.harga = harga; + + } + public String getId () { + return ID; + } + public String getNama () { + return nama; + } + public double getHarga () { + return harga; + } + public int getStok () { + return stok; + } + public boolean isAda () { + return stok > 0; + } +} + +public class No3{ + public static void main(String[] args) { + Produk produk1 = new Produk (); //PEMBUAT OBJEK PRODUK 1 yang PARAMETERNYA KOSONG + produk1.ID = "A"; + produk1.nama = "Baju"; + produk1.stok = 12; + produk1.harga= 100000; + + // Produk produk1 = new Produk ("A", "Baju", 12, 50000); + Produk produk2 = new Produk ("B", "Celana", 0, 40000); // PEMBUAT OBJEK MENGGUNAKAN KONSTRAKTOR YANG DALAM PARAMETERNYA + Produk produk3 = new Produk ("C", "Mukenah", 5, 100000); + + + System.out.println("ID produk 1 : " + produk1.getId()); + System.out.println("Nama Produk : " + produk1.getNama()); + System.out.println("Jumlah Stok : " + produk1.getStok()); + System.out.println("Harga: RP." + produk1.getHarga()); + System.out.printf("Cek Stok: %s\n" , produk1.isAda() ? "Tersedia" : "Barang Kosong"); + + System.out.println("========================================"); + + System.out.println("ID produk 2 : " + produk2.getId()); + System.out.println("Nama Produk : " + produk2.getNama()); + System.out.println("Jumlah Stok : " + produk2.getStok()); + System.out.println("Harga: RP." + produk2.getHarga()); + System.out.printf("Cek Stok: %s\n" , produk2.isAda() ? "Tersedia" : "Barang Kosong"); + + System.out.println("======================================="); + + System.out.println("ID produk 3 : " + produk3.getId()); + System.out.println("Nama Produk : " + produk3.getNama()); + System.out.println("Jumlah Stok : " + produk3.getStok()); + System.out.println("Harga: RP." + produk3.getHarga()); + System.out.printf("Cek Stok: %s\n" ,produk3.isAda() ? "Tersedia" : "Barang Kosong"); + } +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_2/No4.java b/src/H071221092/Pertemuan_2/No4.java new file mode 100644 index 0000000..5a70487 --- /dev/null +++ b/src/H071221092/Pertemuan_2/No4.java @@ -0,0 +1,20 @@ +class Cuboid { + double height; + double widht; + double length; + + double getVolume(){ + return height * widht * length; + } +} + +public class No4 { + public static void main(String[] args) { + Cuboid cuboid = new Cuboid (); + cuboid.height = 10.0; + cuboid.widht = 30.0; + cuboid.length = 15.0; + + System.out.printf("Volume = %.2f", cuboid.getVolume()); + } +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_2/No5.java b/src/H071221092/Pertemuan_2/No5.java new file mode 100644 index 0000000..126153d --- /dev/null +++ b/src/H071221092/Pertemuan_2/No5.java @@ -0,0 +1,43 @@ +class Alamat { + String jalan; + String kota; + + public String getAlamatLengkap(){ + return this.jalan + "," + this.kota; + } +} + +class Mahasiswa { + Alamat alamat; + String nama; + String nim; + + public Alamat getAlamat () { + return this.alamat; + } + + public String getNama() { + return this.nama; + } + + public String getNim () { + return this.nim; + } +} + +public class No5 { + public static void main(String[] args) { + Alamat alamat = new Alamat () ; + alamat.jalan = "mana saja"; + alamat.kota = "Kota Makassar"; + + Mahasiswa mahasiswa = new Mahasiswa (); + mahasiswa.alamat = alamat; + mahasiswa.nama = "Fara Aulia Al Aini Syam"; + mahasiswa.nim = "H071221092"; + + System.out.println("Nama : " + mahasiswa.getNama()); + System.out.println("Nim : " + mahasiswa.getNim()); + System.out.println("Alamat : " + mahasiswa.getAlamat().getAlamatLengkap()); + } +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_3/No1.java b/src/H071221092/Pertemuan_3/No1.java new file mode 100644 index 0000000..4c69961 --- /dev/null +++ b/src/H071221092/Pertemuan_3/No1.java @@ -0,0 +1,78 @@ +public class No1 { + public static void main(String[] args) { + Stationary produk1 = new Stationary ("Pulpen", 3, 4000, new Diskon(90, "Diskon Ramadhan")); + Stationary produk2 = new Stationary ("Penggaris", 2, 2000, new Diskon(50, "Diskon Ramadhan")); + + produk1.tampilkanRincian(); + produk2.tampilkanRincian(); + + produk1.tambahBarang(4); + System.out.println("Setelah ditambahkan barang: " + "\n"); + produk2.tambahBarang(3); + System.out.println("Setelah ditambahkan barang: " + "\n"); + + produk1.tampilkanRincian(); + } +} + +class Stationary { + String barang ; + int jumlah ; + int harga ; + Diskon diskon ; + + public Stationary () {} + public Stationary (String barang, int jumlah, int harga, Diskon diskon ){ + this.barang = barang; + this.jumlah = jumlah; + this.harga = harga; + this.diskon = diskon; + } + public void setBarang (String barang){ + this.barang = barang; + } + public String getBarang () { + return barang; + } + public void setHarga (int harga){ + this.harga = harga; + } + public int getHarga (){ + return harga; + } + public void setJumlah (int jumlah){ + this.jumlah = jumlah; + } + public int getJumlah (){ + return jumlah; + } + public void setDiskon (Diskon diskon){ + this.diskon = diskon; + } + public Diskon getdiskon () { + return diskon; + } + //Behavior + public void tambahBarang(int barangTambahan) { + jumlah += barangTambahan; + } + public int diskonBarang () { + harga = harga-(diskon.persentaseDiskon * harga/100); + return harga; + } + public void tampilkanRincian (){ + System.out.println("========== Rincian Produk 1 =========="); + System.out.println("Nama barang : " + barang); + System.out.println("Jumlah barang : " + jumlah); + System.out.println("Harga barang : " + harga); + } +} + +class Diskon { + int persentaseDiskon; + String namaDiskon; + public Diskon (int persentaseDiskon, String namaDiskon) { + this.persentaseDiskon = persentaseDiskon; + this.namaDiskon = namaDiskon; + } +} diff --git a/src/H071221092/Pertemuan_3/No2.java b/src/H071221092/Pertemuan_3/No2.java new file mode 100644 index 0000000..709a542 --- /dev/null +++ b/src/H071221092/Pertemuan_3/No2.java @@ -0,0 +1,63 @@ +public class No2 { + public static void main(String[] args) { + Player player1 = new Player("Mino", 30, 15); + Player player2 = new Player("Hilda", 10); + player2.setAttackPower(35); + + player1.getDamage(player2); + player1.status(); + player2.status(); + } +} + +class Player { + private String name; + private int hp ; + private int attackPower; + private int defense; + + public Player() { + } + + public void getDamage(Player enemy) { + hp = hp - Math.abs(enemy.getAttackPower() - defense); + } + + public Player (String name,int defense){ // + this.name = name; + this.hp = 100; + this.defense = defense; + } + + public Player (String name,int defense,int attackPower){ + this(name, defense); + this.attackPower = attackPower; + } + + + public void setAttackPower(int attackPower){ + this.attackPower = attackPower; + } + public void status() { // + System.out.println(name + " status"); + System.out.println("HP = " + hp); + System.out.println("Defense = " + defense); + System.out.println("Attack = " + attackPower + "\n"); + } + + int getAttackPower() { + return attackPower; + } +} + +// public class No2 { +// public static void main(String[] args) { +// Player player1 = new Player("Mino", 30, 15); +// Player player2 = new Player("Hilda", 10); +// player2.setAttackPower(35); + +// player1.getDamage(player2); +// player1.status(); +// player2.status(); +// } +// } \ No newline at end of file diff --git a/src/H071221092/Pertemuan_3/No3.java b/src/H071221092/Pertemuan_3/No3.java new file mode 100644 index 0000000..c83a12d --- /dev/null +++ b/src/H071221092/Pertemuan_3/No3.java @@ -0,0 +1,36 @@ +public class No3{ + public static void main(String[] args) { + ObjekWisata objek = new ObjekWisata ("Dufan", "Jakarta", 120); + System.out.println(objek.nama); + System.out.println(objek.lokasi); + if (objek.isPopular()){ + System.out.println("Populer"); + } + else { + System.out.println("Tidak Populer"); + } + } +} + +class ObjekWisata{ + String nama; + String lokasi; + int pengunjung; + + public ObjekWisata () {} + public ObjekWisata (String nama, String lokasi, int pengunjung){ + this.nama = nama; + this.lokasi = lokasi; + this.pengunjung = 120; + + } + public boolean isPopular(){ + if (pengunjung >= 100){ + return true; + } + else { + return false; + } + } +} + From b5da23fd7373e0f26b1b72c4172bc4ce8a03d43f Mon Sep 17 00:00:00 2001 From: fara1201 Date: Tue, 30 May 2023 16:59:47 +0800 Subject: [PATCH 14/14] KUMPUL TUGAS SEMESTER 2 --- src/H071221092/Pertemuan_4/No2.java | 86 ++++++ .../Pertemuan_4/login_app/Main.java | 179 +++++++++++++ .../Pertemuan_4/login_app/models/Profile.java | 38 +++ .../Pertemuan_4/login_app/models/User.java | 28 ++ .../login_app/utils/StringUtils.java | 24 ++ .../Pertemuan_5/.vscode/extensions.json | 6 + .../Pertemuan_5/Diagram Anggota.jpeg | Bin 0 -> 112480 bytes .../Pertemuan_5/Diagram Bangun.jpeg | Bin 0 -> 111423 bytes src/H071221092/Pertemuan_5/No1/Balok.java | 14 + .../Pertemuan_5/No1/BangunDatar.java | 25 ++ .../Pertemuan_5/No1/BangunRuang.java | 25 ++ src/H071221092/Pertemuan_5/No1/Bola.java | 11 + src/H071221092/Pertemuan_5/No1/Kubus.java | 11 + src/H071221092/Pertemuan_5/No1/Lingkaran.java | 11 + src/H071221092/Pertemuan_5/No1/Main.java | 70 +++++ src/H071221092/Pertemuan_5/No1/Persegi.java | 11 + .../Pertemuan_5/No1/PersegiPanjang.java | 11 + src/H071221092/Pertemuan_5/No1/Segitiga.java | 11 + src/H071221092/Pertemuan_5/No1/Tabung.java | 11 + src/H071221092/Pertemuan_5/No1/Trapesium.java | 11 + src/H071221092/Pertemuan_5/No2/Anggota.java | 29 +++ .../Pertemuan_5/No2/Koordinator.java | 13 + src/H071221092/Pertemuan_5/No2/Mainn.java | 16 ++ .../Pertemuan_5/No2/PengurusInti.java | 14 + src/H071221092/Pertemuan_6/Bulldog.java | 13 + src/H071221092/Pertemuan_6/Car.java | 33 +++ src/H071221092/Pertemuan_6/Dog.java | 24 ++ .../Pertemuan_6/GermanShepherd.java | 14 + src/H071221092/Pertemuan_6/Main.java | 19 ++ src/H071221092/Pertemuan_6/Moveable.java | 3 + src/H071221092/Pertemuan_6/Pitbull.java | 15 ++ .../Pertemuan_6/SeiberianHusky.java | 13 + src/H071221092/Pertemuan_6/Smartphone.java | 24 ++ src/H071221092/Pertemuan_7/No1/Character.java | 23 ++ src/H071221092/Pertemuan_7/No1/Fighter.java | 20 ++ src/H071221092/Pertemuan_7/No1/Mage.java | 24 ++ src/H071221092/Pertemuan_7/No1/Main.java | 35 +++ src/H071221092/Pertemuan_7/No2/Main.java | 48 ++++ src/H071221092/Pertemuan_7/No2/Product.java | 4 + src/H071221092/Pertemuan_7/No3/No3.java | 73 ++++++ src/H071221092/Pertemuan_8/AppRacer.java | 197 ++++++++++++++ .../Pertemuan_8/TugasPraktikum.java | 101 ++++++++ src/H071221092/Pertemuan_9/.gitattributes | 9 + src/H071221092/Pertemuan_9/.gitignore | 5 + .../Pertemuan_9/.vscode/settings.json | 3 + .../Pertemuan_9/app/bin/main/bgkalkul.jpg | Bin 0 -> 40617 bytes .../Pertemuan_9/app/bin/main/styles/style.css | 3 + src/H071221092/Pertemuan_9/app/build.gradle | 48 ++++ .../app/src/main/java/kalkulator/App.java | 168 ++++++++++++ .../app/src/main/resources/bgkalkul.jpg | Bin 0 -> 40617 bytes .../app/src/main/resources/styles/style.css | 3 + .../app/src/test/java/kalkulator/AppTest.java | 14 + .../gradle/wrapper/gradle-wrapper.properties | 6 + src/H071221092/Pertemuan_9/gradlew | 245 ++++++++++++++++++ src/H071221092/Pertemuan_9/gradlew.bat | 92 +++++++ src/H071221092/Pertemuan_9/settings.gradle | 16 ++ 56 files changed, 1950 insertions(+) create mode 100644 src/H071221092/Pertemuan_4/No2.java create mode 100644 src/H071221092/Pertemuan_4/login_app/Main.java create mode 100644 src/H071221092/Pertemuan_4/login_app/models/Profile.java create mode 100644 src/H071221092/Pertemuan_4/login_app/models/User.java create mode 100644 src/H071221092/Pertemuan_4/login_app/utils/StringUtils.java create mode 100644 src/H071221092/Pertemuan_5/.vscode/extensions.json create mode 100644 src/H071221092/Pertemuan_5/Diagram Anggota.jpeg create mode 100644 src/H071221092/Pertemuan_5/Diagram Bangun.jpeg create mode 100644 src/H071221092/Pertemuan_5/No1/Balok.java create mode 100644 src/H071221092/Pertemuan_5/No1/BangunDatar.java create mode 100644 src/H071221092/Pertemuan_5/No1/BangunRuang.java create mode 100644 src/H071221092/Pertemuan_5/No1/Bola.java create mode 100644 src/H071221092/Pertemuan_5/No1/Kubus.java create mode 100644 src/H071221092/Pertemuan_5/No1/Lingkaran.java create mode 100644 src/H071221092/Pertemuan_5/No1/Main.java create mode 100644 src/H071221092/Pertemuan_5/No1/Persegi.java create mode 100644 src/H071221092/Pertemuan_5/No1/PersegiPanjang.java create mode 100644 src/H071221092/Pertemuan_5/No1/Segitiga.java create mode 100644 src/H071221092/Pertemuan_5/No1/Tabung.java create mode 100644 src/H071221092/Pertemuan_5/No1/Trapesium.java create mode 100644 src/H071221092/Pertemuan_5/No2/Anggota.java create mode 100644 src/H071221092/Pertemuan_5/No2/Koordinator.java create mode 100644 src/H071221092/Pertemuan_5/No2/Mainn.java create mode 100644 src/H071221092/Pertemuan_5/No2/PengurusInti.java create mode 100644 src/H071221092/Pertemuan_6/Bulldog.java create mode 100644 src/H071221092/Pertemuan_6/Car.java create mode 100644 src/H071221092/Pertemuan_6/Dog.java create mode 100644 src/H071221092/Pertemuan_6/GermanShepherd.java create mode 100644 src/H071221092/Pertemuan_6/Main.java create mode 100644 src/H071221092/Pertemuan_6/Moveable.java create mode 100644 src/H071221092/Pertemuan_6/Pitbull.java create mode 100644 src/H071221092/Pertemuan_6/SeiberianHusky.java create mode 100644 src/H071221092/Pertemuan_6/Smartphone.java create mode 100644 src/H071221092/Pertemuan_7/No1/Character.java create mode 100644 src/H071221092/Pertemuan_7/No1/Fighter.java create mode 100644 src/H071221092/Pertemuan_7/No1/Mage.java create mode 100644 src/H071221092/Pertemuan_7/No1/Main.java create mode 100644 src/H071221092/Pertemuan_7/No2/Main.java create mode 100644 src/H071221092/Pertemuan_7/No2/Product.java create mode 100644 src/H071221092/Pertemuan_7/No3/No3.java create mode 100644 src/H071221092/Pertemuan_8/AppRacer.java create mode 100644 src/H071221092/Pertemuan_8/TugasPraktikum.java create mode 100644 src/H071221092/Pertemuan_9/.gitattributes create mode 100644 src/H071221092/Pertemuan_9/.gitignore create mode 100644 src/H071221092/Pertemuan_9/.vscode/settings.json create mode 100644 src/H071221092/Pertemuan_9/app/bin/main/bgkalkul.jpg create mode 100644 src/H071221092/Pertemuan_9/app/bin/main/styles/style.css create mode 100644 src/H071221092/Pertemuan_9/app/build.gradle create mode 100644 src/H071221092/Pertemuan_9/app/src/main/java/kalkulator/App.java create mode 100644 src/H071221092/Pertemuan_9/app/src/main/resources/bgkalkul.jpg create mode 100644 src/H071221092/Pertemuan_9/app/src/main/resources/styles/style.css create mode 100644 src/H071221092/Pertemuan_9/app/src/test/java/kalkulator/AppTest.java create mode 100644 src/H071221092/Pertemuan_9/gradle/wrapper/gradle-wrapper.properties create mode 100644 src/H071221092/Pertemuan_9/gradlew create mode 100644 src/H071221092/Pertemuan_9/gradlew.bat create mode 100644 src/H071221092/Pertemuan_9/settings.gradle diff --git a/src/H071221092/Pertemuan_4/No2.java b/src/H071221092/Pertemuan_4/No2.java new file mode 100644 index 0000000..97952c8 --- /dev/null +++ b/src/H071221092/Pertemuan_4/No2.java @@ -0,0 +1,86 @@ +public class No2{ + public static void main(String[] args) { + Player player = new Player(); + System.out.println("========== PLAYER 1 =========="); + player.setName("Miya"); //memberi nilai ke objek menggunakan setter + player.setLevel(2); + player.setHealth(250); + player.setMana(350); + player.setExp(450); + player.displayinfo(); + System.out.println("========== PLAYER 2 =========="); + Player player2 = new Player("Lancelot", 3, 200, 300, 400); + System.out.println("Nama : " + player2.getName()); //Mengambil nilai objek menggunakan getter + System.out.println("Level : " + player2.getLevel()); + System.out.println("Health : " + player2.getHealth()); + System.out.println("Mana :" + player2.getMana()); + System.out.println("Exp : " + player2.getExp()); + System.out.println("============ DATA ============"); + Utils.displaySelfData(); //Mamanggil method static tanpa instance objek + // Utils utils = new Utils (); + // utils.displaySelfData(); + } +} + +class Player{ + private String name; + private int level; + private int health; + private int mana; + private int exp; + + public Player (){} //constroctur kosong + public Player (String name, int level, int health, int mana, int exp){ + this.name = name; + this.level = level; + this.health = health; + this.mana = mana; + this.exp = exp; + } + public void setName (String name){ + this.name = name; + } + public String getName(){ + return name; + } + public void setLevel (int level){ + this.level = level; + } + public int getLevel (){ + return level; + } + public void setHealth (int health){ + this.health = health; + } + public int getHealth (){ + return health; + } + public void setMana (int mana){ + this.mana = mana; + } + public int getMana (){ + return mana; + } + public void setExp (int exp){ + this.exp = exp; + } + public int getExp (){ + return exp; + } + + //behavior + public void displayinfo(){ + System.out.println("Name : " + name); + System.out.println("Level : " + level); + System.out.println("Health : " + health); + System.out.println("Mana : " + mana); + System.out.println("Exp : " + exp); + } +} + +class Utils{ //static method + public static void displaySelfData() { + System.out.println("Nama : Fara Aulia Al Aini Syam"); + System.out.println("NIm : H071221092"); + } +} diff --git a/src/H071221092/Pertemuan_4/login_app/Main.java b/src/H071221092/Pertemuan_4/login_app/Main.java new file mode 100644 index 0000000..494b3cc --- /dev/null +++ b/src/H071221092/Pertemuan_4/login_app/Main.java @@ -0,0 +1,179 @@ +package login_app; + +import java.util.ArrayList; +import java.util.Scanner; +import login_app.models.Profile; +import login_app.models.User; +import login_app.utils.StringUtils; + +public class Main { + private static ArrayList listUser = new ArrayList<>(); + private static ArrayList listUserProfile = new ArrayList<>(); + private static Scanner sc = new Scanner(System.in); //scanner untuk input + + public static void main(String[] args) { + // Memanggil method runApp(); + runApp(); + } + + private static void runApp() { + // Menu Utama Aplikasi + System.out.println("-------------------------"); + System.out.println("Aplikasi Login Sederhana"); + System.out.println("-------------------------"); + System.out.println("1. Login"); + System.out.println("2. Register"); + System.out.print("> "); + + // Menginput pilihan menu + int selectMenu = sc.nextInt(); + sc.nextLine(); + switch (selectMenu) { + case 1: + // Membuka Halaman Login + showLoginMenu(); + break; + case 2: + // Membuka Halaman Register + showRegisterMenu(); + default: + // Mengulang Pemanggilan Menu Utama + runApp(); + } + } + + private static void showLoginMenu() { + // Halaman Login + System.out.println("-------------------------"); + System.out.println("Login"); + // Menginput Username dan Menyimpannya di attribute username; + System.out.println("Masukkan Username"); + System.out.print("> "); + + String username = sc.next(); //input username + // Membuat variabel userIndex yang mana nanti akan menampung index dari user + int userIndex = -1; + for (int i = 0; i < listUser.size(); i++) { + + /* + * TODO + * Buatlah sebuah perkondisian (IF) yang akan + * Mengecek apakah user index ke i dari listUser memiliki username yang sama + * dengan username yang sudah diinput. + * Jika ada ganti userIndex dengan Index dari User Tersebut, kemudian hentikan + * perulangan + */ + if (listUser.get(i).getUsername().equals(username)){ //equels membandingkan 2 string + userIndex = i; //supaya ditau di dalam list userindex mana yg sama dengan yg sdh diinput + break; + } + } + + // Saat userIndex tidak sama dengan -1 atau userIndexnya ditemukan + if (userIndex != -1) { + // Menginput Password + System.out.println("Password"); + System.out.print("> "); + String password = sc.next(); + + /* + * TODO + * Mengecek apakah password dari User yang login berdasarkan username + * sama dengan password yang diinput sebelumnya, kemudian simpan + * hasilnya di variabel isPasswordMatch + */ + + // Jika passwordnya sama maka berhasil login + boolean isPasswordMatch = listUser.get(userIndex).getPassword().equals(password); + if (isPasswordMatch) { + System.out.println("Berhasil Login"); + /* + * TODO + * panggil method showDetailUser dan kirimkan data Profile User yang login + * + */ + showDetailUser(listUserProfile.get(userIndex)); + System.exit(0); + } else { + // saat password salah akan menampikan password salah + System.out.println("Password Salah"); + } + } + } + + private static void showRegisterMenu() { + System.out.println("-------------------------"); + System.out.println("REGISTER"); + + // Menginput username dan password + System.out.println("Username"); + System.out.print("> "); + String username = sc.nextLine(); + System.out.println("Password"); + System.out.print("> "); + String password = sc.nextLine(); + /* + * TODO + * Buatlah atau Instance objek User baru, dan tambahkan + * username dan password yang diinput sebelumnya secara langsung + * saat instance User + */ + User user = new User(username, password); + /* + * TODO + * Buatlah atau Instance objek Profile baru + */ + Profile profile = new Profile(); + + // Menginput Data Profile + System.out.println("Nama Lengkap"); + System.out.print("> "); + String fullName = sc.nextLine(); + System.out.println("Umur"); + System.out.print("> "); + int age = sc.nextInt(); + sc.nextLine(); + System.out.println("Hobby"); + System.out.print("> "); + String hobby = sc.nextLine(); + + /* + * TODO + * Berikan nilai fullName, age, dan hobby ke objek profile yang telah + * di Instance sebelumnya. Nilai ini diperoleh dari data profile yang + * diinput sebelumnya + */ + profile.setFullName(fullName); + profile.setNickName(StringUtils.generateNickName(fullName)); + profile.setAge(age); + profile.setHobby(hobby); + /* + * TODO + * Berikan nilai nickName ke objek profile, + * Nilai ini diperoleh menggunakan static method yang dibuat di class + * StringUtils, dengan mengirimkan fullName yang diinput sebelumnya + */ + + // Menambahkan user yang dibuat ke list user + listUser.add(user); + // Menambahkan profile user yang dibuat ke list profile + listUserProfile.add(profile); + System.out.println("-------------------------"); + System.out.println("Berhasil Membuat User Baru!!"); + runApp(); + } + + private static void showDetailUser(Profile profile) { + /* + * TODO * + * Tampilkan semua data profile user yang login + */ + System.out.println("-------------------------"); + System.out.println("SELAMAT DATANG"); + System.out.println("-------------------------"); + System.out.println("Nama Lengkap: " + profile.getFullName()); + System.out.println("Nama Panggilan: "+ profile.getNickName()); + System.out.println("Umur: "+ profile.getAge()); + System.out.println("Hobby: "+ profile.getHobby()); + } +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_4/login_app/models/Profile.java b/src/H071221092/Pertemuan_4/login_app/models/Profile.java new file mode 100644 index 0000000..34c8158 --- /dev/null +++ b/src/H071221092/Pertemuan_4/login_app/models/Profile.java @@ -0,0 +1,38 @@ +package login_app.models; + +public class Profile { + private String fullName; + private int age; + private String hobby; + private String nickname; + + public String getFullName() { + return fullName; + } + public void setFullName(String fullName) { + this.fullName = fullName; + } + public int getAge() { + return age; + } + public void setAge(int age) { + this.age = age; + } + public String getHobby() { + return hobby; + } + public void setHobby(String hobby) { + this.hobby = hobby; + } + public String getNickName() { + return nickname; + } + public void setNickName(String nickname) { + this.nickname = nickname; + } +} + /* + * TODO: + * Tambahkan attribute, method, atau constructor + * yang dibutuhkan di kelas user + */ \ No newline at end of file diff --git a/src/H071221092/Pertemuan_4/login_app/models/User.java b/src/H071221092/Pertemuan_4/login_app/models/User.java new file mode 100644 index 0000000..670f69e --- /dev/null +++ b/src/H071221092/Pertemuan_4/login_app/models/User.java @@ -0,0 +1,28 @@ +package login_app.models; + +public class User { + private String username; + private String password; + /* + * TODO: + * Tambahkan attribute, method, atau constructor + * yang dibutuhkan di kelas user + */ + + public User(String username, String password){ + this.username = username; + this.password = password; + } + public String getUsername() { + return username; + } + public void setUsername(String username) { + this.username = username; + } + public String getPassword() { + return password; + } + public void setPassword(String password) { + this.password = password; + } +} diff --git a/src/H071221092/Pertemuan_4/login_app/utils/StringUtils.java b/src/H071221092/Pertemuan_4/login_app/utils/StringUtils.java new file mode 100644 index 0000000..613eac7 --- /dev/null +++ b/src/H071221092/Pertemuan_4/login_app/utils/StringUtils.java @@ -0,0 +1,24 @@ +package login_app.utils; + +public class StringUtils { + public static String generateNickName(String fullName){ //method static + String[] nameParts = fullName.split(" "); //memecah fullname menjadi beberapa bagian menggunakan split + + if (nameParts.length ==1) { //memeriksa apakah hanya satu elemen jika iya langsung return fullname + return fullName; + }else{ + return nameParts[1]; + } + } +} + /* + TODO + * Buatlah sebuah method static yang akan + * mengembalikan nickName berdasarkan fullName yang diberikan + * aturan pembuatan nickName adalah : + * 1. Jika fullName hanya 1 kata maka nickName = fullName + * (ex: FullName = Agus, maka NickName = Agus) + * 2. Jika fullName lebih dari 1 kata maka nickName adalah kata kedua dari + * fullName + * (ex: FullName = Eurico Devon, maka NickName = Devon) + */ \ No newline at end of file diff --git a/src/H071221092/Pertemuan_5/.vscode/extensions.json b/src/H071221092/Pertemuan_5/.vscode/extensions.json new file mode 100644 index 0000000..70f4ee7 --- /dev/null +++ b/src/H071221092/Pertemuan_5/.vscode/extensions.json @@ -0,0 +1,6 @@ +{ + "recommendations": [ + "visualstudioexptteam.vscodeintellicode", + "visualstudioexptteam.intellicode-api-usage-examples" + ] +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_5/Diagram Anggota.jpeg b/src/H071221092/Pertemuan_5/Diagram Anggota.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..178169e4fd48dbe81183ca0bb6bf29168b2c8aa1 GIT binary patch literal 112480 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 z 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 vv?Fr&AYJElwJ@R%IZ0!Vo-<1Fib(@G*@|svbN"); + System.out.println("Attack Power : " + character.attackPower); + if (character instanceof Fighter) { + System.out.println("Mele : " + character.attack("Mele")); + System.out.println("Ranged : " + character.attack("Ranged")); + } else if (character instanceof Mage) { //instanceof untuk cek tipe objek atau karakter + System.out.println("Fire : " + character.attack("Fire")); + System.out.println("Frost : " + character.attack("Frost")); + } + } + public static void main(String[] args) { + + Character[] hero = new Character[5]; + hero[0] = new Fighter("Fara", 10); + hero[1] = new Mage("Aulia", 20); + hero[2] = new Fighter("Al Aini", 30); + hero[3] = new Fighter("Syam", 40); + hero[4] = new Mage("Ayya", 50); + + + // for (Character i : hero) { + // printAttack(i); + // System.out.println(""); + // } + + for (int i = 0; i product1 = new Product<>("Pizza", "Rp 1000", "12-12-2022"); + Product product2 = new Product<>("Burger", 2000, "12-01-2020"); + Product product3 = new Product<>("Ciki", 12.12, "13-03-2020"); + + System.out.println("===== Produk 1 ====="); + System.out.println("Nama: " + product1.getName()); + System.out.println("Harga: " + product1.getPrice()); + System.out.println("Tanggal Kadaluarsa: " + product1.getExpDate()); + System.out.println(); + + System.out.println("===== Produk 2 ====="); + System.out.println("Nama: " + product2.getName()); + System.out.println("Harga: " + product2.getPrice()); + System.out.println("Tanggal Kadaluarsa: " + product2.getExpDate()); + System.out.println(); + + System.out.println("===== Produk 3 ====="); + System.out.println("Nama: " + product3.getName()); + System.out.println("Harga: " + product3.getPrice()); + System.out.println("Tanggal Kadaluarsa: " + product3.getExpDate()); + System.out.println(); + } +} + +class Product { // generic bisa lebih dari 1 variabel + protected String name; + protected A price; + protected String expDate; + + public Product (String name, A price, String expDate){ + this.name = name; + this.price = price; + this.expDate = expDate; + } + public String getName(){ + return name; + } + public A getPrice(){ + return price; + } + public String getExpDate(){ + return expDate; + } +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_7/No2/Product.java b/src/H071221092/Pertemuan_7/No2/Product.java new file mode 100644 index 0000000..9671ae6 --- /dev/null +++ b/src/H071221092/Pertemuan_7/No2/Product.java @@ -0,0 +1,4 @@ +package No2; + +import java.util.Date; + diff --git a/src/H071221092/Pertemuan_7/No3/No3.java b/src/H071221092/Pertemuan_7/No3/No3.java new file mode 100644 index 0000000..b10a021 --- /dev/null +++ b/src/H071221092/Pertemuan_7/No3/No3.java @@ -0,0 +1,73 @@ +import java.util.ArrayList; +import java.util.List; + +public class No3{ + public static void main(String[] args) { + Food burger = FoodFactory.getFood(FoodType.burger); + Food pizza = FoodFactory.getFood(FoodType.pizza); + Food steak = FoodFactory.getFood(FoodType.steak); + + List foods = new ArrayList<>(); + foods.add(burger); + foods.add(pizza); + foods.add(steak); + + int total = Restaurant.kalkulTotal(foods); + System.out.println("Total price: "+ total); + } +} + +class FoodFactory{ //poli itu klaas anak bs dsmpn diparent + static Food getFood(FoodType food){ + if (food == FoodType.burger){ + return new Burger(); + }else if (food == FoodType.pizza){ + return new Pizza(); + }else if (food == FoodType.steak){ + return new Steak(); + }else{ + System.out.println("Error"); + return null; + } + } +} + +interface Food{ + public int getPrice(); +} + +class Burger implements Food{ + + @Override + public int getPrice() { + return 50000; + } +} +class Pizza implements Food{ + + @Override + public int getPrice() { + return 100000; + } +} +class Steak implements Food{ + + @Override + public int getPrice() { + return 70000; + } +} + +class Restaurant{ + static int kalkulTotal(List foods){ + int totalPrice = 0; + for (Food food : foods){ + totalPrice += food.getPrice(); + } + return totalPrice; + } +} + +enum FoodType{ //kategori + burger, pizza, steak +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_8/AppRacer.java b/src/H071221092/Pertemuan_8/AppRacer.java new file mode 100644 index 0000000..5468cc1 --- /dev/null +++ b/src/H071221092/Pertemuan_8/AppRacer.java @@ -0,0 +1,197 @@ +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Random; + +public class AppRacer { + public static void main(String[] args) throws InterruptedException { + Tes typeRacer = new Tes(); + typeRacer.setNewWordsToType(); + System.out.println("|| Text to Type ||"); + System.out.println("\"" + typeRacer.getWordsToType() + "\""); + + Typer[] typers = new Typer[3]; + + typers[0] = new Typer("Bot Mansur", 40, typeRacer); + typers[1] = new Typer("Bot ToKu", 32, typeRacer); + typers[2] = new Typer("Bot Yukiao", 30, typeRacer); + + typeRacer.getRaceContestant().addAll(Arrays.asList(typers)); + + typeRacer.startRace(); + } +} + +class Typer extends Thread { + private String botName, wordsTyped; + private double wpm; + private Tes typeRacer; + + public Typer(String botName, double wpm, Tes typeRacer) { + this.botName = botName; + this.wpm = wpm; + this.wordsTyped = ""; + this.typeRacer = typeRacer; + } + + public void setBotName(String botName) { + this.botName = botName; + } + + public void setWpm(int wpm) { + this.wpm = wpm; + } + + public void addWordTyped(String newWordsTyped) { + this.wordsTyped += newWordsTyped + " "; + } + + public String getWordsTyped() { + return wordsTyped; + } + + public String getBotName() { + return botName; + } + + public double getWpm() { + return wpm; + } + + @Override + public void run() { + + String[] wordsToType = typeRacer.getWordsToType().split(" "); + + // TODO (1): Buatlah variable howLongToType yang memuat waktu yang diperlukan + // typer + // untuk menulis 1 kata dalam milisecond + int howLongToType = (int) Math.floor(((60 / this.wpm)) * 1000); + + // TODO (2): Buatlah perulangan untuk menambahkan kata dengan method + // addWordToTyped setelah interval waktu sebanyak howLongToType + for (int i = 0; i < wordsToType.length; i++) { + try { + Thread.sleep(howLongToType); + addWordTyped(wordsToType[i]); + } catch (InterruptedException e) { + System.out.println("Error: " + this.botName); + } + } + + this.addWordTyped("(selesai)"); + // TODO (3): menambahkan typer yang telah selesai mengetik semua kata ke list + // typeRaceTabel yang ada di class typeRacer + typeRacer.addResult(new Result(botName, howLongToType * wordsToType.length)); + } +} + +class Result { + private String name; + private int finishTime; + + public Result(String name, int finishTime) { + this.name = name; + this.finishTime = finishTime; + } + + public String getName() { + return name; + } + + public void setName(String racerName) { + this.name = racerName; + } + + public int getFinishTime() { + return finishTime; + } + + public void setFinishTime(int racerTime) { + this.finishTime = racerTime; + } +} + +class Tes { + private String wordsToType; + private ArrayList raceContestant = new ArrayList<>(); + private ArrayList raceStanding = new ArrayList<>(); + + public String getWordsToType() { + return wordsToType; + } + + public ArrayList getRaceContestant() { + return raceContestant; + } + + // Word by Yusuf Syam, Silahkan diubah jika dirasa kurang bijak + private String[] wordsToTypeList = { + "Menuju tak terbatas dan melampauinya", + "Kehidupan adalah perjalanan yang penuh dengan lika-liku. Jadikan setiap tantangan sebagai kesempatan untuk tumbuh dan berkembang", + "Cinta sejati adalah ketika dua jiwa saling melengkapi, memberi dukungan dan menginspirasi satu sama lain untuk menjadi yang terbaik", + "Hidup adalah anugerah yang berharga. Nikmati setiap momen dan hargai kebahagiaan sederhana di sekitar kita", + "Perubahan adalah satu-satunya konstanta dalam hidup. Yang bertahan adalah mereka yang dapat beradaptasi dengan fleksibilitas", + "Kebersamaan adalah fondasi yang kuat dalam membangun hubungan yang langgeng dan bermakna", + "Masa depan adalah milik mereka yang memiliki imajinasi, tekad, dan kerja keras untuk mewujudkan visi mereka", + "Ketika kita berbagi dengan orang lain, kita tidak hanya mengurangi beban mereka, tetapi juga memperkaya hati kita sendiri", + "Kesuksesan sejati adalah ketika kita mencapai tujuan kita sambil tetap mempertahankan integritas dan empati terhadap orang lain", + "Rasa syukur adalah kunci untuk mengalami kebahagiaan yang sejati dalam hidup. Mencintai apa yang kita miliki adalah kunci kepuasan yang tak ternilai", + }; + + public void setNewWordsToType() { + Random random = new Random(); + int angkaRandom = random.nextInt(10); + wordsToType = wordsToTypeList[angkaRandom]; + } + + // TODO (4) : Buat method addResult yang mana digunakan untuk menambahkan typer + // yangtelah selesai (mengetik semua kata), ke dalam list race standing. + public synchronized void addResult(Result result) { + raceStanding.add(result); + } + + public void printRaceStanding() { + System.out.println("\nKlasemen Akhir Type Racer"); + System.out.println("=========================\n"); + + // TODO (5) : Tampilkan klasemen akhir dari kompetisi, dengan format + // {posisi}. {nama} = {waktu penyelesaian dalam detik} detik + int index = 1; + + for (Result result : raceStanding) { + System.out.printf("%d. %s - %.2f detik\n", index, result.getName(), + result.getFinishTime() / 1000.0); + index += 1; + } + } + + public void startRace() throws InterruptedException { + // TODO (6) : jalankan kompetisi + for (Typer racer : raceContestant) { + racer.start(); + } + + // TODO (7) : selaman semua peserta belum selesai, maka tampilkan + // SS + // Setiap 2 detik + while (raceContestant.size() != raceStanding.size()) { + Thread.sleep(2000); + System.out.println("\nTyping Progress ..."); + System.out.println("================\n"); + + for (Typer racer : raceContestant) { + System.out.printf("- %s\t=> %s\n", racer.getBotName(), racer.getWordsTyped()); + System.out.println("-".repeat(100)); + } + + System.out.println("\n" + "#".repeat(100)); + } + + // TODO (8) : Tampilkan race standing setelah semua typer selesai + for (Typer racer : raceContestant) { + racer.join(); + } + + printRaceStanding(); + } +} diff --git a/src/H071221092/Pertemuan_8/TugasPraktikum.java b/src/H071221092/Pertemuan_8/TugasPraktikum.java new file mode 100644 index 0000000..4864cd0 --- /dev/null +++ b/src/H071221092/Pertemuan_8/TugasPraktikum.java @@ -0,0 +1,101 @@ +package no3; + +import java.util.Random; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; + +public class TugasPraktikum { + + public static void main(String[] args) { + int numData = 4; + + UiThread uiThread = new UiThread(numData); + + ExecutorService executor = Executors.newFixedThreadPool(3); + + uiThread.start(); + + for (int i = 0; i < numData; i++) { + executor.execute(new BackgroundThread(uiThread, TaskTimeHelper.generateRandomTimeExecution())); + } + executor.shutdown(); + } +} + +class UiThread extends Thread { + private int numBackgroundThreads; + private int numThreadsSuccess = 0; + private int numThreadsFailed = 0; + private int timeExecution = 0; + + public UiThread(int numBackgroundThreads) { + this.numBackgroundThreads = numBackgroundThreads; + } + + public void run() { + System.out.println("Start load " + numBackgroundThreads + " Data"); + while ((numThreadsSuccess + numThreadsFailed) < numBackgroundThreads) { + try { + Thread.sleep(1000); + timeExecution++; + System.out.printf("Loading... (%ds)\n", timeExecution); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + System.out.println("\nTask Finish."); + System.out.println("Time Execution : " + timeExecution + "s"); + if (numThreadsFailed == 0) { + System.out.println("All data is successfully loaded"); + } else if (numThreadsSuccess == 0) { + System.out.println("All data failed to load"); + } else { + System.out.println( + numThreadsSuccess + " Data Successfully loaded & " + numThreadsFailed + " Data failed to load"); + } + } + + public synchronized void incrementNumThreadsSuccess() { + this.numThreadsSuccess++; + } + + public synchronized void incrementNumThreadsFailed() { + this.numThreadsFailed++; + } +} + +class BackgroundThread extends Thread { + private UiThread uiThread; + private int timeExecution; + + public BackgroundThread(UiThread uiThread, int timeExecution) { + this.uiThread = uiThread; + this.timeExecution = timeExecution; + } + + public void run() { + try { + for (int i = 1; i <= timeExecution; i++) { + TimeUnit.SECONDS.sleep(1); + if (i * 1000 > 2000) { + System.out.println("Request Timeout"); + uiThread.incrementNumThreadsFailed(); + return; + } + } + uiThread.incrementNumThreadsSuccess(); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + +} + +class TaskTimeHelper { + static int generateRandomTimeExecution() { + Random random = new Random(); + int randomNumber = random.nextInt(6) + 1; + return randomNumber; + } +} diff --git a/src/H071221092/Pertemuan_9/.gitattributes b/src/H071221092/Pertemuan_9/.gitattributes new file mode 100644 index 0000000..097f9f9 --- /dev/null +++ b/src/H071221092/Pertemuan_9/.gitattributes @@ -0,0 +1,9 @@ +# +# https://help.github.com/articles/dealing-with-line-endings/ +# +# Linux start script should use lf +/gradlew text eol=lf + +# These are Windows script files and should use crlf +*.bat text eol=crlf + diff --git a/src/H071221092/Pertemuan_9/.gitignore b/src/H071221092/Pertemuan_9/.gitignore new file mode 100644 index 0000000..1b6985c --- /dev/null +++ b/src/H071221092/Pertemuan_9/.gitignore @@ -0,0 +1,5 @@ +# Ignore Gradle project-specific cache directory +.gradle + +# Ignore Gradle build output directory +build diff --git a/src/H071221092/Pertemuan_9/.vscode/settings.json b/src/H071221092/Pertemuan_9/.vscode/settings.json new file mode 100644 index 0000000..c5f3f6b --- /dev/null +++ b/src/H071221092/Pertemuan_9/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "java.configuration.updateBuildConfiguration": "interactive" +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_9/app/bin/main/bgkalkul.jpg b/src/H071221092/Pertemuan_9/app/bin/main/bgkalkul.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2c9fa4f8f7ed4d596a996d4c412ae05d70eb2cd4 GIT binary patch literal 40617 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 { + layarOpsi(stage); + }); + + // VBox secRight = new VBox (judul, tombol); + // secRight.setSpacing(8); + // secRight.setAlignment(Pos.CENTER); + // secRight.setPrefWidth(320); + // secRight.setId("s"); + + ImageView ivBanner = new ImageView("/bgkalkul.jpg"); + ivBanner.setFitWidth(320); + ivBanner.setFitHeight(512); + ivBanner.setPreserveRatio(true); + + StackPane backg = new StackPane(ivBanner, vbox); + // VBox rootNode = new VBox (ivBanner, vbox); + + // Scene gmbr = new Scene(rootNode, 320, 512); + // return gmbr; + + Scene scene = new Scene(backg, 320, 512); + stage.setScene(scene); + stage.setTitle("Kalkul"); + stage.show(); + } + + public void layarOpsi (Stage stage){ + VBox vbox = new VBox(); + vbox.setId("section-right"); + Label opsiLabel = new Label("MENU"); + opsiLabel.setFont(Font.font("Arial",23)); + vbox.getChildren().add(opsiLabel); + vbox.setSpacing(12.5); + + Button kalkulSuhu = new Button ("Kalkulator Suhu"); + kalkulSuhu.getStyleClass().add("kalkulSuhu"); + vbox.getChildren().add(kalkulSuhu); + vbox.setAlignment(Pos.CENTER); + vbox.setSpacing(12.5); + + kalkulSuhu.setOnAction(action -> { + kalkulSuhu(stage); + }); + + Button kalkulJarak = new Button ("Kalkulator Jarak"); + kalkulJarak.getStyleClass().add("kalkulJarak"); + vbox.getChildren().add(kalkulJarak); + vbox.setAlignment(Pos.CENTER); + vbox.setSpacing(12.5); + + kalkulJarak.setOnAction(action ->{ + kalkulJarak(stage); + }); + + Scene scene = new Scene(vbox, 320, 512); + scene.getStylesheets().add(getClass().getResource("/styles/style.css").toExternalForm()); + stage.setScene(scene); + stage.show(); + } + + public void kalkulSuhu (Stage stage){ + Label judulSuhu = new Label ("KALKULATOR SUHU CELCIUS ke REAMUR"); + judulSuhu.setFont(Font.font("Arial", 15)); + + TextField tfCelcius = new TextField(); + tfCelcius.setPromptText("Celcius"); + + Button tombolProses = new Button ("COUNT"); + + Label lHasil = new Label(); + Button back = new Button("RETURN"); + back.setOnAction(v ->{ + layarOpsi(stage); + }); + + tombolProses.setOnAction(v ->{ + double celcius = Double.parseDouble(tfCelcius.getText()); + double hasil = (0.8)*celcius; + + lHasil.setText(String.format("%.0f Reamur", hasil)); + }); + + VBox vbox = new VBox(judulSuhu, tfCelcius, tombolProses, lHasil, back); + vbox.setAlignment(Pos.CENTER); + vbox.setSpacing(12.5); + + Scene scene = new Scene(vbox, 320, 512); + stage.setScene(scene); + stage.show(); + } + + public void kalkulJarak (Stage stage){ + Label judulJarak = new Label ("KALKULATOR JARAK CM ke M"); + judulJarak.setFont(Font.font("Arial", 15)); + + TextField tfCentiMeter = new TextField(); + tfCentiMeter.setPromptText("Centimeter"); + + Button tombolProses = new Button ("COUNT"); + + Label lJumlah = new Label(); + Button back = new Button("RETURN"); + back.setOnAction(v ->{ + layarOpsi(stage); + }); + + tombolProses.setOnAction(v ->{ + double cm = Double.parseDouble(tfCentiMeter.getText()); + double jumlah = cm/100; + + lJumlah.setText(String.format("%.2f", jumlah,"Meter")); + }); + + VBox vbox = new VBox(judulJarak, tfCentiMeter, tombolProses, lJumlah, back); + vbox.setAlignment(Pos.CENTER); + vbox.setSpacing(12.5); + + // ImageView ivBanner = new ImageView("/bgkalkul.jpg"); + // ivBanner.setFitWidht(320); + // ivBanner.setFitHeight(512); + // ivBanner.setPrerveRatio(true); + + Scene scene = new Scene(vbox, 320, 512); + stage.setScene(scene); + stage.show(); + } + + public static void main(String[] args) { // untuk run + launch(); + } + +} \ No newline at end of file diff --git a/src/H071221092/Pertemuan_9/app/src/main/resources/bgkalkul.jpg b/src/H071221092/Pertemuan_9/app/src/main/resources/bgkalkul.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2c9fa4f8f7ed4d596a996d4c412ae05d70eb2cd4 GIT binary patch literal 40617 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 '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/src/H071221092/Pertemuan_9/gradlew.bat b/src/H071221092/Pertemuan_9/gradlew.bat new file mode 100644 index 0000000..93e3f59 --- /dev/null +++ b/src/H071221092/Pertemuan_9/gradlew.bat @@ -0,0 +1,92 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/src/H071221092/Pertemuan_9/settings.gradle b/src/H071221092/Pertemuan_9/settings.gradle new file mode 100644 index 0000000..0ef62d9 --- /dev/null +++ b/src/H071221092/Pertemuan_9/settings.gradle @@ -0,0 +1,16 @@ +/* + * This file was generated by the Gradle 'init' task. + * + * The settings file is used to specify which projects to include in your build. + * + * Detailed information about configuring a multi-project build in Gradle can be found + * in the user manual at https://docs.gradle.org/8.1.1/userguide/multi_project_builds.html + */ + +plugins { + // Apply the foojay-resolver plugin to allow automatic download of JDKs + id 'org.gradle.toolchains.foojay-resolver-convention' version '0.4.0' +} + +rootProject.name = 'Kalkulator' +include('app')