void main() { print(convertRomawiToNumber("III")); } String convertRomawiToNumber(String? romawi) { Map<String, int> romawiToNumber = { "I": 1, "V": 5, "X": 10, "L": 50, "C": 100, "D": 500, "M": 1000 }; int total = 0; List<int> listRomawiToNumber = []; //cek invalid INPUT if (romawi == null || romawi.length < 1) { return "INVALID INPUT"; } //cek invalid ROMAWI for (int i = 0; i < romawi.length; i++) { if (!(romawiToNumber.keys.toList().contains(romawi.split("")[i]))) { return "INVALID ROMAWI"; } } //Convert ROMAWI TO NUMBER for (int i = 0; i < romawi.length; i++) { listRomawiToNumber.add(romawiToNumber[romawi.split("")[i]]!); } //SET DEFAULT TOTAL WITH LAST VALUE LIST RESULT ROMAWI TO NUMBER total += listRomawiToNumber[listRomawiToNumber.length - 1]; //LOGIC CHECK ROMAWI for (int i = listRomawiToNumber.length - 1; i >= 0; i--) { if (i >= 1) { if (listRomawiToNumber[i] <= listRomawiToNumber[i - 1]) { total += listRomawiToNumber[i - 1]; } else { total -= listRomawiToNumber[i - 1]; } } } //RETURN TOTAL return total.toString(); }
Mengerjakan challenge SOAL dengan menggunakan bahasa pemrograman C++
Hari ini saya akan mengerjakan sebuah soal dengan menggunakan bahasa pemrograman C++. Adapun soal yang akan saya kerjakan adalah sebagai berikut:
25 / 100
Keterangan:
- dibutuhkan 25 hari untuk membangun sebuah kebiasaanBerdasarkan rumus di atas, seorang lelaki sebut saja si Aldi bertekad membuat kegiatan lari pagi sebagai gaya hidupnya. Jika lari pagi sudah tercatat sebagai kebiasaannya sejak Minggu, 1 Januari 2021 maka pada hari dan tanggal berapakah dia mulai lari pagi dan lari pagi menjadi gaya hidupnya?
Ketentuan:
1. Tiap bulan memiliki 30 hari, tiap tahun memiliki 12 bulan.
2. Menggunakan maksimal 7 variabel.
3. Terdapat 4 input-an untuk hari, tanggal, bulan dan tahun.
4. Minimal terdapat dua penggunaan switch-case.
5. Terdapat penggunaan statement looping.
Berikut saya tampilkan source code nya:
#include <iostream> using namespace std; string KonversiHari (int inputHari){ switch (inputHari){ case 0: return "Minggu"; break; case 1: return "Senin"; break; case 2: return "Selasa"; break; case 3: return "Rabu"; break; case 4: return "Kamis"; break; case 5: return "Jumat"; break; case 6: return "Sabtu"; break; default: return "Hari salah"; } } string KonversiBulan (int inputBulan){ switch (inputBulan){ case 1: return "Januari"; break; case 2: return "Februari"; break; case 3: return "Maret"; break; case 4: return "April"; break; case 5: return "Mei"; break; case 6: return "Juni"; break; case 7: return "Juli"; break; case 8: return "Agustus"; break; case 9: return "September"; break; case 10: return "Oktober"; break; case 11: return "November"; break; case 12: return "Desember"; break; default: return "Bulan salah"; } } int CekHari (int hari, int hitungan){ if (hari == 0){ if (((hitungan + hari) % 7) == 0){ return hari; }else{ return 7 - ((hitungan + hari) % 7); } return hari; }else return hari - (hitungan % 7); } void CekKebiasaan (string keterangan, int hari, int hitungan, int inputTanggal, int inputBulan, int inputTahun, bool mulai){ int tanggal = inputTanggal; int bulan = inputBulan; int tahun = inputTahun; if (mulai) { for (int i = hitungan; i >= 1; i--) { tanggal--; if (tanggal < 1) { tanggal = 30; bulan--; if (bulan < 1) { bulan = 12; tahun--; } } } } else { for (int i = 1; i <= hitungan; i++) { tanggal++; if (tanggal > 30) { tanggal = 1; bulan++; if (bulan > 12) { bulan = 1; tahun++; } } } } cout << keterangan << KonversiHari (mulai ? CekHari (hari, hitungan) : ((hitungan + hari) % 7)) << ", " << tanggal << " " << KonversiBulan (bulan) << " " << tahun; } int main (){ int inputHari, inputTanggal, inputBulan, inputTahun; cout << "Masukkan hari (0 = Minggu..... 6 = Sabtu)" << endl; cout << "Pilihan Anda: "; cin >> inputHari; cout << "\nMasukkan tanggal: "; cin >> inputTanggal; cout << "\nMasukkan bulan: "; cin >> inputBulan; cout << "\nMasukkan tahun: "; cin >> inputTahun; CekKebiasaan ("\nAldi mulai pada hari ", inputHari, 25, inputTanggal, inputBulan, inputTahun, true); cout << "\nMenjadi kebiasaan pada hari " << KonversiHari (inputHari) << ", " << inputTanggal << " " << KonversiBulan (inputBulan) << " " << inputTahun; CekKebiasaan ("\nMenjadi gaya hidup pada hari ", inputHari, 75, inputTanggal, inputBulan, inputTahun, false); return 0; }
Catatan Nolsatu : Kelas Orientasi
Source Code listing angka yang habis dibagi 3 atau 7 menggunakan bahasa pemrograman JAVA
berikut contoh programnya :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | package ketikanMD; import java.util.Scanner; /** * * @author ketikanMD.blogspot.com */ public class Listing { public static void main(String[] args) { boolean cek = true; String jawab; do { int min, max; int count = 0; Scanner input = new Scanner(System.in); System.out.print("Nilai awal: "); min = input.nextInt(); System.out.print("Nilai akhir: "); max = input.nextInt(); for (int i = min; i <= max; i++) { if (i % 3 == 0 || i % 7 == 0) { System.out.println(" " + i); count += i; } } System.out.println("hasil penjumlahan semua angka yang habis dibagi 3 dan 7 \nyang berada diantara " + min + "-" + max + " adalah " + count); System.out.println("=========================================="); System.out.println("Apakah anda ingin keluar?"); System.out.print("Jawab [Y/T]> "); jawab = input.next(); if (jawab.equalsIgnoreCase("Y")) { cek = false; } } while (cek); } } |
Source Code Game sederhana Tebak huruf menggunakan bahasa pemrograman JAVA
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | package ketikanMD; import java.util.Random; import java.util.Scanner; /** * * @author ketikanMD.blogspot.com */ public class TebakHuruf { public static void main(String[] args) { //membuat atau menginstansi objek baru input Scanner input = new Scanner(System.in); //membuat atau menginstansi variabel baru boolean jawaban = true; String jawab; do { boolean cek = true; //membuat array dengan tipe data String String huruf[] = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"}; int jml, hasil; String tebakan; int nilaiTebakan = 0; jml = huruf.length;//menghitung panjang dari array huruf //variabel hasil menampung hasil random jml hasil = (int) (Math.random() * jml); do { System.out.print("Masukkan Tebakanmu: "); //mengambil nilai input tipe data String //mengubah inputan menjadi huruf kecil atau Lower Case tebakan = input.next().toLowerCase(); //melakukan perulangan sesuai dengan panjang Array huruf for (int i = 0; i < jml; i++) { //mengecek apakah tebakan sama dengan elemen yang ada pada array huruf if (tebakan.equals(huruf[i])) {//jika sama,set variabel nilaiTebakan dengan i(index dari elemen) nilaiTebakan = i; } } //mengecek tebakan apakah lebih besar,lebih kecil atau tebakan benar if (nilaiTebakan > hasil) { System.out.println("terlalu besar"); cek = true; } else if (nilaiTebakan == hasil) { System.out.println("Huruf Tebakan: " + huruf[hasil]); System.out.println("Selamat,tebakan benar"); cek = false; } else { System.out.println("terlalu kecil"); cek = true; } System.out.println("=========================================="); } while (cek); System.out.println("Main lagi?"); System.out.print("Jawab [Y/T]> "); jawab = input.next(); if (jawab.equalsIgnoreCase("T")) { jawaban = false; } } while (jawaban); } } |
Source Code untuk mengecek kata atau kalimat palindrome menggunakan bahasa pemrograman JAVA
contohnya: Kasur ini rusak
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | package ketikanMD; /** * * @author ketikanMD.blogspot.com */ import java.util.Scanner; public class Palindrome{ public static void main(String[] args) { //inisialisasi variabel boolean cek = true; String jawab; do { //inisialisasi variabel String teksAwal, teksKebalikan = ""; Scanner in = new Scanner(System.in); System.out.println("Masukkan kalimat yang ingin dicek apakah palindrome atau tidak:"); teksAwal = in.nextLine().toLowerCase();//mengubah String yang diinput menjadi huruf kecil semua //membuat array tandaBaca dengan tipe data String String tandaBaca[] = {".", ",", " ", "?", "!", "@", "#", "$", "%", "^", "&", "*", "_", "-", "+", "+", "|", ">", "<", "~", "`"}; int jml = tandaBaca.length;//menghitung panjang dari array tandaBaca for (int i = 0; i < jml; i++) { //menghilangkan tanda baca teksAwal = teksAwal.replace(tandaBaca[i], ""); } int ukuran = teksAwal.length();//variabel untuk menampung ukuran dari teks yang diinput for (int i = ukuran - 1; i >= 0; i--) { teksKebalikan += teksAwal.charAt(i); } /*cek apakah teks awal dan teks kebalikan sama tanpa membandingkan huruf besar dan kecil sebuah string*/ if (teksAwal.equalsIgnoreCase(teksKebalikan)) { System.out.println("ini kalimat PALINDROME."); } else { System.out.println("ini bukan kalimat PALINDROME."); } System.out.println("=========================================="); System.out.println("Apakah anda ingin keluar?"); System.out.print("Jawab [Y/T]> "); jawab = in.nextLine(); if (jawab.equalsIgnoreCase("Y")) { cek = false; } } while (cek); } } |
Tantangan Algoritma
dan harga kopi yang dibeli.
Inputan 52 kemasan

Inputan 47 kemasan