ผู้ใช้ป้อนตัวเลข โปรแกรมจะแยกแต่ละหลัก แล้วหาผลคูณของหลักเลขทั้งหมด
ตรรกะการหาผลคูณหลักเลข (for loop)
for(product = 1; num > 0; num = num / 10) {
rem = num % 10; // ดึงหลักสุดท้าย
product = product * rem; // คูณสะสม
}
ตัวอย่างที่ 1: ใช้ for loop
#include <stdio.h>
int main() {
int num, rem, product;
printf("Enter number: ");
scanf("%d", &num);
for(product = 1; num > 0; num = num / 10) {
rem = num % 10;
product = product * rem;
}
printf("Result = %d\n", product);
return 0;
}
ผลลัพธ์
enter the number: 269 result = 108 (2*6*9=108) enter the number: 12345 result = 120 (1*2*3*4*5=120)
ตัวอย่างที่ 2: ใช้ while loop
#include <stdio.h>
int main() {
int num, rem, product = 1;
printf("Enter number: ");
scanf("%d", &num);
while(num != 0) {
rem = num % 10;
product = product * rem;
num = num / 10;
}
printf("Result = %d\n", product);
return 0;
}
ผลลัพธ์
enter the number: 257 result = 70 (2*5*7=70) enter the number: 89 result = 72 (8*9=72)