Lấy chữ số trong C++ | Laptrinhcanban.com

HOME › >>

Lấy chữ số trong C++

Trong lập trình, việc lấy chữ số từ một số nguyên là một công việc phổ biến và quan trọng. Trong bài viết này, chúng ta sẽ khám phá cách thực hiện kỹ thuật lấy chữ số trong ngôn ngữ lập trình C++. Chúng ta sẽ tìm hiểu cách truy cập và xử lý từng chữ số của một số nguyên, và cách áp dụng điều này trong các tình huống thực tế.

Lấy Chữ Số Bằng Toán Tử Chia và Chia Lấy Dư

Trong C++, một cách phổ biến để lấy chữ số từ một số nguyên là sử dụng toán tử chia (/) để chia số cho 10 và sử dụng toán tử chia lấy dư (%) để lấy phần dư. Dưới đây là một ví dụ đơn giản:

#include <iostream>

int main() {
int number = 12345;

while (number > 0) {
int digit = number % 10; // Lấy chữ số cuối cùng
std::cout << digit << " ";
number /= 10; // Loại bỏ chữ số cuối cùng
}

return 0;
}

Trong đoạn mã trên, chúng ta sử dụng vòng lặp để lấy từng chữ số của number bằng cách lấy phần dư khi chia cho 10 và sau đó loại bỏ chữ số cuối cùng bằng cách chia cho 10.

Chuyển Số thành Chuỗi và Sử Dụng Vòng Lặp

Một cách khác để lấy chữ số từ số nguyên là chuyển số đó thành chuỗi (std::to_string) và sau đó sử dụng vòng lặp để duyệt qua từng ký tự của chuỗi. Dưới đây là một ví dụ:

#include <iostream>
#include <string>

int main() {
int number = 98765;
std::string numberStr = std::to_string(number);

for (char digit : numberStr) {
std::cout << digit << " ";
}

return 0;
}

Trong đoạn mã này, chúng ta chuyển number thành một chuỗi numberStr và sau đó sử dụng vòng lặp for-each để duyệt qua từng ký tự của chuỗi.

Sử Dụng Đệ Quy để Lấy Chữ Số

Đệ quy là một phương pháp khác để lấy chữ số từ một số nguyên. Chúng ta có thể định nghĩa một hàm đệ quy để thực hiện công việc này như sau:

#include <iostream>

void printDigits(int number) {
if (number == 0) {
return;
}

int digit = number % 10;
printDigits(number / 10);
std::cout << digit << " ";
}

int main() {
int number = 54321;
printDigits(number);

return 0;
}

Trong đoạn mã này, hàm printDigits được gọi đệ quy, và mỗi lần gọi nó sẽ in chữ số cuối cùng của number và sau đó gọi lại chính nó với number đã được loại bỏ chữ số cuối cùng.

Ứng Dụng Trong Thực Tế: Kiểm Tra Chữ Số Đặc Biệt

Kỹ thuật lấy chữ số thường được sử dụng trong nhiều tình huống thực tế. Một ví dụ là việc kiểm tra xem một số có chữ số đặc biệt nào đó hay không, chẳng hạn như việc kiểm tra xem số có chữ số 0 hay không.

#include <iostream>

bool hasDigit(int number, int targetDigit) {
while (number > 0) {
int digit = number % 10;
if (digit == targetDigit) {
return true;
}
number /= 10;
}
return false;
}

int main() {
int numberToCheck = 56789;
int targetDigit = 0;

if (hasDigit(numberToCheck, targetDigit)) {
std::cout << "So " << numberToCheck << " co chu so " << targetDigit << std::endl;
} else {
std::cout << "So " << numberToCheck << " khong co chu so " << targetDigit << std::endl;
}

return 0;
}

Kết Luận

Trên đây Kiyoshi đã hướng dẫn bạn về lấy chữ số trong C++ rồi. Trong bài viết này, chúng ta đã khám phá các kỹ thuật lấy chữ số từ một số nguyên trong ngôn ngữ lập trình C++. Từ cách sử dụng toán tử chia và chia lấy dư đến việc chuyển số thành chuỗi và sử dụng đệ quy, có nhiều cách để thực hiện công việc này dựa trên yêu cầu cụ thể của vấn đề. Việc lấy chữ số thường được sử dụng rộng rãi trong các ứng dụng thực tế và là một phần quan trọng của quá trình xử lý số liệu trong lập trình. Hãy áp dụng và thực hành những kỹ thuật này để trở thành một lập trình viên linh hoạt và hiệu quả.

URL Link

https://laptrinhcanban.com/cpp/lap-trinh-cpp-co-ban/so-trong-cpp/lay-chu-so-trong-cpp/

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.