Kiểm tra số nguyên trong Java | Laptrinhcanban.com

Kiểm tra số nguyên trong Java

Hướng dẫn cách kiểm tra số nguyên trong Java. Bạn sẽ học được cách tạo một phương thức cơ bản để kiểm tra số nguyên trong Java cũng như cách liệt kê và tính tổng tất cả các số nguyên bằng Java sau bài học này.

Số nguyên số thực trong Java là gì

Trong ngôn ngữ Java, khái niệm số nguyên và số thực cũng giống với khái niệm mà chúng ta hay dùng.

Số nguyên bao gồm các số tự nhiên (1,2,3…), số âm (-1,-2,-3…) và số 0.
Những con số thông thường mà chúng ta thường sử dụng được gọi là số nguyên.

Số thực là một số nguyên cộng với một giá trị thập phân. Ví dụ, các số như 1.0, 5.2, -9.687, 3.14159,… chẳng hạn. Số thực cũng bao gồm số nguyên trong nó.
Tóm lại, các số bao gồm cả phần thập phân được gọi là số thực.

Số nguyên trong Java có thể biểu diễn bởi giá trị chính xác của nó, trong khi số thực trong Java lại được biểu diễn dưới dạng dấu phẩy động, điều đó có nghĩa là số thực không thể biểu diễn bởi giá trị chính xác, mà chúng ta có thể làm tròn lên hoặc làm tròn xuống số chữ cái sau phần thập phân để biểu diễn nó với các giá trị khác nhau.

Kiểm tra số nguyên trong Java

Số nguyên trong Java có khả năng biểu diễn bởi giá trị chính xác của nó, trong khi số thực thì có thể làm tròn lên hoặc làm tròn xuống thành các giá trị khác nhau.

Bằng cách sử dụng tính chất này, chúng ta có thể so sánh hai giá trị làm tròn lênlàm tròn xuống của số đã cho, và nếu hai giá trị này giống nhau thì số đã cho chính là một số nguyên.

Chúng ta cần sử dụng tới hai phương thức trong class Math là Math.ceil() để làm tròn lên, và phương thức Math.floor để làm tròn xuống giá trị một số trong Java.

Và chúng ta có thể tạo phương thức kiểm tra số nguyên trong Java như sau:

private static int check_real_integer_number(double n){
//flag = 1 => số nguyên
//flag = 0 => số thực

int flag = 1;
if (Math.ceil(n) != Math.floor(n)) flag = 0;
return flag;
}

Chúng ta có thể gọi phương thức này và sử dụng trong chương trình nhập n kiểm tra n có phải số nguyên không trong Java như sau:

import java.util.Scanner;
public class Main
{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);

System.out.print("Nhap so nguyen= ");
double n = scanner.nextDouble();

int check = check_real_integer_number(n);

if( check == 1 ) System.out.println((int)n + " la so nguyen" ) ;
else System.out.println(n+ " khong phai la so nguyen" ) ;
}
private static int check_real_integer_number(double n){
//flag = 1 => số nguyên
//flag = 0 => số thực

int flag = 1;
if (Math.ceil(n) != Math.floor(n)) flag = 0;
return flag;
}

}

Màn hình nhập liệu và kết quả kiểm tra số thực số nguyên sẽ như sau:

Nhap so= 6
So vua nhap la so nguyen

Nhap so= 6.1
So vua nhap la so thuc

Nhap so= 0
So vua nhap la so nguyen

Liệt kê và tính tổng tất cả các số nguyên

Sử dụng phương pháp ở trên, chúng ta có thể liệt kê và tính tổng tất cả các số nguyên bằng Java.

Và dưới đây là ví dụ về chương trình liệt kê và tính tổng tất cả các số nguyên trong Java:

public class Main
{
public static void main(String[] args) {
double[] array = {5, 4.1, 7.2, 2, 8.9, 7, 3};
int i = 0, check=0,total=0;

for(i = 0; i < array.length; i++){
check = check_real_integer_number(array[i]);
if( check == 1 ) {
System.out.print(array[i]+" ");
total+=array[i];
}
}
System.out.println("\nTong cac so nguyen trong mang: "+total);

}
private static int check_real_integer_number(double n){
//flag = 1 => số nguyên
//flag = 0 => số thực

int flag = 1;
if (Math.ceil(n) != Math.floor(n)) flag = 0;
return flag;
}

}

Kết quả:

5 2 7 3 
Tong cac so nguyen trong mang:17

Tổng kết

Trên đây Kiyoshi đã hướng dẫn bạn cách kiểm tra số nguyên trong Java cũng như cách liệt kê và tính tổng tất cả các số nguyên bằng Java rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về Java trong các bài học tiếp theo.

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

HOME>> >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.