> 백엔드 개발 > C++ > 본문

n으로 나눈 배열 곱의 나머지를 찾는 C/C++ 프로그램

WBOY
풀어 주다: 2023-08-29 18:37:02
앞으로
635명이 탐색했습니다.

C/C++ 程序以找到数组乘积除以 n 的余数

배열 곱셈을 통해 주어진 배열의 모든 요소의 곱을 구합니다. 그러면 문제에 따라 곱을 n으로 나누어보겠습니다. 예를 들어보겠습니다 −

Input: arr[] = { 12, 35, 69, 74, 165, 54};
      N = 47
Output: 14
로그인 후 복사

Explanation

배열은 {12, 35, 69, 74, 165, 54}이므로 곱은 (12 * 35 * 69 * 74 * 165 * 54) = 19107673200입니다. . 이제 47로 나눈 나머지를 얻으려면 결과는 14입니다.

먼저 모든 숫자를 곱한 다음 n의 %를 취하고 나머지를 구하세요. 하지만 이 방법에서는 숫자가 최대값인 2^64에 도달하면 잘못된 답이 나옵니다.

#include <stdio.h>
int main() {
   int arr[] = { 12, 35, 69, 74, 165, 54};
   int len = 6;
   int n = 47 ;
   int mul = 1;
   for (int i = 0; i < len; i++)
      mul = (mul * (arr[i] % n)) % n;
   printf("the remainder is %d", (mul%n));
   return 0;
}
로그인 후 복사

출력

the remainder is 14
로그인 후 복사

위 내용은 n으로 나눈 배열 곱의 나머지를 찾는 C/C++ 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿