โจทย์
พิมพ์ตัวเลขในลำดับย้อนกลับโดยใช้ฟังก์ชันแบบวนซ้ำ (while loop)
อัลกอริทึม
Input: number
Step 1: กำหนด reverse = 0
Step 2: while number > 0
(a) reverse = reverse * 10 + number % 10
(b) number = number / 10
Step 3: return reverse
โปรแกรม
#include <stdio.h>
int reverse(int number) {
int reverse = 0;
while (number > 0) {
reverse = reverse * 10 + number % 10;
number = number / 10;
}
return reverse;
}
int main() {
int number;
printf("enter a number: ");
scanf("%d", &number);
printf("Reverse of no. is %d", reverse(number));
return 0;
}
ผลลัพธ์
enter a number: 356789
Reverse of no. is 987653