การกลับตัวเลข (Reversing a number) หมายถึงการจัดเก็บหลักของตัวเลขในลำดับที่กลับกัน
ตัวอย่างเช่น: หากตัวเลขคือ 6529 ผลลัพธ์ที่ได้จะเป็น 9256
โปรแกรมสำหรับการกลับตัวเลขมีดังนี้:
ตัวอย่างโค้ด
#include <iostream>
using namespace std;
int main() {
int num = 63972, rev = 0;
while(num > 0) {
rev = rev * 10 + num % 10;
num = num / 10;
}
cout << "Reverse of number is " << rev;
return 0;
}
ผลลัพธ์
Reverse of number is 27936
ในโปรแกรมข้างต้น ตัวเลขที่ต้องการกลับคือ 63972 ซึ่งถูกเก็บไว้ในตัวแปร num ตัวเลขที่กลับแล้วจะถูกเก็บไว้ในตัวแปร rev ตรรกะหลักของโปรแกรมอยู่ในลูป while ซึ่งจะทำงานจนกว่า num จะมีค่าน้อยกว่าหรือเท่ากับ 0
ในแต่ละรอบของลูป while ค่า rev จะถูกคูณด้วย 10 แล้วบวกกับเศษจากการหาร num ด้วย 10 (คือ num % 10) จากนั้นเก็บผลลัพธ์ไว้ใน rev อีกครั้ง พร้อมทั้ง num จะถูกหารด้วย 10 ในแต่ละรอบ
โค้ดสำหรับส่วนนี้แสดงดังนี้:
while(num > 0) {
rev = rev * 10 + num % 10;
num = num / 10;
}
ในที่สุด rev จะเก็บค่าตัวเลขที่กลับแล้ว และค่า num จะกลายเป็นศูนย์ จากนั้นจะแสดงค่า rev ออกมา
ส่วนของการแสดงผลมีดังนี้:
cout << "Reverse of number is " << rev;