Computer >> Máy Tính >  >> Lập trình >> lập trình C

Làm thế nào để tìm tích của các chữ số đã cho bằng cách sử dụng vòng lặp for trong ngôn ngữ C?

Người dùng phải nhập một số, sau đó chia số đã cho thành các chữ số riêng lẻ và cuối cùng, tìm tích của các chữ số riêng lẻ đó bằng vòng lặp for.

Logic để tìm tích của các chữ số đã cho như sau -

for(product = 1; num > 0; num = num / 10){
   rem = num % 10;
   product = product * rem;
}

Ví dụ1

Sau đây là chương trình C để tìm tích các chữ số của một số nhất định bằng cách sử dụng vòng lặp for -

#include <stdio.h>
int main(){
   int num, rem, product;
   printf("enter the number : ");
   scanf("%d", & num);
   for(product = 1; num > 0; num = num / 10){
      rem = num % 10;
      product = product * rem;
   }
   printf(" result = %d", product);
   return 0;
}

Đầu ra

Khi chương trình trên được thực thi, nó sẽ tạo ra kết quả như sau -

enter the number: 269
result = 108
enter the number: 12345
result = 120

Ví dụ2

Hãy xem xét một ví dụ khác để tìm tích các chữ số của một số nhất định bằng cách sử dụng vòng lặp while.

#include <stdio.h>
int main(){
   int num, rem, product=1;
   printf("enter the number : ");
   scanf("%d", & num);
   while(num != 0){
      rem = num % 10;
      product = product * rem;
      num = num /10;
   }
   printf(" result = %d", product);
   return 0;
}

Đầu ra

Khi chương trình trên được thực thi, nó tạo ra kết quả sau -

enter the number: 257
result = 70
enter the number: 89
result = 72