*Divisors and Multiples

Правка en1, от Zeaur_Rahman, 2024-12-24 22:45:27

Let's start with Divisors and Multiples and work through each subtopic. I'll provide:

  1. Theory: Brief explanation of the concept.
  2. Practical Application: Where and why the concept is used.
  3. Implementation in C++: Example code for clarity.

1. Divisors and Multiples

Theory:

  • Factors: Numbers that divide a given number ( n ) without leaving a remainder.
  • Example: Factors of 12 are {1, 2, 3, 4, 6, 12}.
  • Greatest Common Divisor (GCD): The largest number that divides two numbers ( a ) and ( b ).
  • Least Common Multiple (LCM): The smallest number divisible by both ( a ) and ( b ).

Practical Application:

  • GCD is used in simplifying fractions.
  • LCM is useful for scheduling problems, finding periods, etc.
  • Factors are fundamental in number theory, especially in problems involving divisors.

Implementation in C++:

#include <iostream>
#include <vector>
using namespace std;

// Function to find factors of a number
vector<int> findFactors(int n) {
    vector<int> factors;
    for (int i = 1; i * i <= n; ++i) {
        if (n % i == 0) {
            factors.push_back(i); // Add the factor
            if (i != n / i) {     // Avoid duplicate when n is a perfect square
                factors.push_back(n / i);
            }
        }
    }
    return factors;
}

// Function to compute GCD using Euclid's Algorithm
int gcd(int a, int b) {
    while (b != 0) {
        int temp = b;
        b = a % b;
        a = temp;
    }
    return a;
}

// Function to compute LCM using GCD
int lcm(int a, int b) {
    return (a / gcd(a, b)) * b; // Formula: (a * b) / GCD
}

int main() {
    int num = 12;
    cout << "Factors of " << num << ": ";
    vector<int> factors = findFactors(num);
    for (int factor : factors) {
        cout << factor << " ";
    }
    cout << endl;

    int a = 24, b = 36;
    cout << "GCD of " << a << " and " << b << ": " << gcd(a, b) << endl;
    cout << "LCM of " << a << " and " << b << ": " << lcm(a, b) << endl;

    return 0;
}

Output:

Factors of 12: 1 12 2 6 3 4
GCD of 24 and 36: 12
LCM of 24 and 36: 72
Теги #divisors, #multiplies, #competitive-programming

История

 
 
 
 
Правки
 
 
  Rev. Язык Кто Когда Δ Комментарий
en1 Английский Zeaur_Rahman 2024-12-24 22:45:27 2275 Initial revision (published)