Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

นับคู่ของตัวเลขตั้งแต่ 1 ถึง N ด้วย Product หารด้วยผลรวมของพวกมันใน C++


เราได้รับหมายเลข N เป้าหมายคือการหาคู่ของตัวเลขตั้งแต่ 1 ถึง N โดยที่ผลคูณของคู่จะเท่ากับผลรวมของคู่

ให้เราเข้าใจด้วยตัวอย่าง

ป้อนข้อมูล − N=11

ผลผลิต − จำนวนคู่ของหมายเลข จาก 1 ถึง N โดยสินค้าหารด้วยผลรวมลงตัวคือ − 1

คำอธิบาย − หมายเลข 3 และ 6 มีผลลัพธ์ 18 และผลรวม 9 หาร 18 ได้เต็มที่

ป้อนข้อมูล − N=30

ผลผลิต − จำนวนคู่ของหมายเลข จาก 1 ถึง N โดยสินค้าหารด้วยผลรวมลงตัวคือ − 12

คำอธิบาย − คู่ คือ − (3, 6), (4,12), (5, 20), (6, 12), (6, 30), (8, 24), (9, 18), (10, 15 ), (12, 24), (15, 30), (20, 30), (21, 28)

จำนวนคู่ − 12

แนวทางที่ใช้ในโปรแกรมด้านล่างมีดังนี้

เราจะข้ามจาก 1 ถึง N โดยใช้ FOR วนซ้ำสองครั้ง สำหรับทุก ๆ ฉันค้นหา j โดยที่ผลคูณของ (i,j) หารด้วยผลรวม i+j ลงตัว จำนวนที่เพิ่มขึ้นสำหรับคู่ suc i,j โดยที่ i!=j.

  • ใช้ตัวเลข N เป็นอินพุต

  • ฟังก์ชัน Sum_N(N) รับ N และส่งคืนค่าจำนวนคู่เพื่อให้ผลคูณของตัวเลขหารด้วยผลรวมของตัวเลขได้

  • ข้ามจาก i=1 ไปยัง i

  • ข้ามจาก j=i+1 ไปยัง j<=N.

  • นับเริ่มต้นเป็น 0

  • สำหรับแต่ละ i และ j คำนวณ temp=(i*j)%(i+j)

  • ถ้าอุณหภูมิเป็น 0 ผลรวมจะหารผลคูณทั้งหมด จำนวนที่เพิ่มขึ้น

  • หลังจากสิ้นสุดการทำซ้ำทั้งหมด การนับจะมีจำนวนคู่ดังกล่าวทั้งหมด

  • ผลตอบแทนนับเป็นผลลัพธ์

ตัวอย่าง

#include <bits/stdc++.h>
using namespace std;
int Sum_N(int N){
   int count = 0;
   for (int i = 1; i < N; i++){
      for (int j = i + 1; j <= N; j++){
         int temp = (j * i) % (j + i);
         if (!temp){
            count++;
         }
      }
   }
   return count;
}
int main(){
   int N = 20;
   cout<<"Count of pairs of numbers from 1 to N with Product divisible by their Sum are: "<<Sum_N(N);
   return 0;
}

ผลลัพธ์

หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -

Count of pairs of numbers from 1 to N with Product divisible by their Sum are: 6