Output looping terus dan tidak mau lanjut ke program selanjutnya saat memasukan angka

Saya adalah mahasiswa jurusan sistem Informasi, dan saat ini saya sedang belajar mengenai salah satu bahasa pemrograman yaitu JAVA, saya mendapatkan tugas untuk membuatlah program Java untuk menukar uang IDR menjadi USD dan EUR. *Notes = karena saya masih belajar, dosen mengarahkan kami untuk menjalankan program di "public class Main"

output program yang di inginkan adalah sebagai berikut :

Enter the amount in IDR (or -1 to exit): 12000000 Hasil konversi: 12000000 IDR setara dengan 428 USD dan sisa 6008000 IDR Sisa 6008000 IDR setara dengan 375 EUR Enter the amount in IDR (or 1 to exit): 15000000 Hasil konversi: 15000000 IDR setara dengan 535 USD dan sisa 7510000 IDR Sisa 7510000 IDR setara dengan 469 EUR Enter the amount in IDR (or -1 to exit): -1 Goodbye!

Berikut program java yang buat :

import java.util.Scanner;

public class Main { Scanner scan = new Scanner (System.in); public Main() {

	while (true) {
		float eur1, money;
		int idrTousd1, idrToeur;
		
		
			
			do {
				System.out.print("Enter the amount in IDR (or -1 to exit): ");
				money = scan.nextFloat();
				scan.nextLine();
			} while (money != -1);
			

            if (money == -1) {
            	System.out.println("Good Bye");
            	 break;
            }
       
			
			idrTousd1 = (int) (money / 14000 / 2);
	
			eur1 = idrTousd1 * 14000;
			idrToeur = (int) (eur1 / 16000);
			
			System.out.println( money + "IDR setara dengan" + idrTousd1 + "USD dan sisa" + eur1 + "IDR setara dengan" + idrToeur + "EUR");
			
		
	}
}

public static void main(String[] args) {
	// TODO Auto-generated method stub
	new Main ();

}

}

Namun output saya tidak berjalan dengan baik, tidak ada error namun outputnya terus looping dan tidak mau berjalan ke program selanjutnya

berikut output yang keluar Enter the amount in IDR (or -1 to exit): 12000000 Enter the amount in IDR (or -1 to exit):

setelah saya menulis 12000000, outputnya kembali ngeprint "Enter the amount in IDR (or -1 to exit): "

bagaimana cara mengatasinya dan apa yang salah dari program saya? Terima kasih..

avatar Jonathansen18
@Jonathansen18

2 Kontribusi 1 Poin

Diperbarui 1 tahun yang lalu

1 Jawaban:

udah dapet jawabannya 😅

ini jawabannya : import java.util.Scanner;

public class Main { Scanner scan = new Scanner (System.in); public Main() {

	while (true) {
		int eur1,money;
		int idrTousd1, idrToeur;
		
		
		System.out.print("Enter the amount in IDR (or -1 to exit): ");
		money = scan.nextInt();
		scan.nextLine();
		

            if (money == -1) {
            	System.out.println("Good Bye");
            	 break;
            }
       
			
			idrTousd1 = (int) (money / 14000 / 2);
	
			eur1 = idrTousd1 * 14000;
			idrToeur = (int) (eur1 / 16000);
			
			if (money >= 0) {
				System.out.println( money + " IDR setara dengan " + idrTousd1 + " USD dan sisa " + eur1 + " IDR setara dengan " + idrToeur + "EUR");
			}
			
			
			
		
	}
}

public static void main(String[] args) {
	// TODO Auto-generated method stub
	new Main ();

}

}

avatar Jonathansen18
@Jonathansen18

2 Kontribusi 1 Poin

Dipost 1 tahun yang lalu

Tanggapan

terima kasih sudah share jawabannya!

Login untuk ikut Jawaban