Khắc phục lỗi nhập kí tự trong code phương trình bậc 1 Java

Em mới học code :cry:
Mà chú em ra bài tập khắc phục lỗi khi xuất ra làm sao để nhập kí tự hết bị lỗi.

public class Luyentap {
    public static void main(String[] args) {
        double a, b, x;
        System.out.println("phuong trinh bac 1");
        Scanner input = new Scanner(System.in);

        System.out.println("nhap a");
        a = input.nextDouble();

        System.out.println("nhap b");
        b = input.nextDouble();

        if (a == 0) {
            System.out.println("phuong trinh vo nghiem");
        } else { x = -b/a;
            System.out.println("phuong trinh co nghiem" + x);
        }
    }
}
phuong trinh bac 1
nhap a
fsdfd
Exception in thread "main" java.util.InputMismatchException
    at java.util.Scanner.throwFor(Scanner.java:864)
    at java.util.Scanner.next(Scanner.java:1486)
    at java.util.Scanner.nextDouble(Scanner.java:2413)
    at luyentap.Luyentap.main(Luyentap.java:26)
C:\Users\ASUS\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 4 seconds)

Có số nào là fsdfd không hả bạn

ý mình là khắc phục sao để khi nhập kí tự thì nó sẽ xuất ra dòng “yêu cầu nhập số” á bạn

Đổi nextDouble thành nextLine thôi

1 Like

em cám ơn ạ , em mới học nên chưa rành lắm ạ

Thì bạn thay vì nhập trực tiếp số thì bạn nhập chuỗi, sau đó kiểm tra chuỗi nếu thoả mãn thì convert thành số.

1 Like

dạ cám ơn anh, để em thử ạ

em chịu thua =(((( hiểu thì hiểu mà kh biết code sao hết =(((

Từng bước một thôi bạn. Bây giờ bạn cần search google những thứ sau, nên search tiếng Anh:

  1. Cách nhập chuỗi ký tự trong Java
  2. Cách kiểm tra một chuỗi có phải là số trong Java
  3. Cách chuyển một chuỗi thành một số trong Java
2 Likes

dạ em cám ơn anh nhiều ạ

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?