Maison > développement back-end > C++ > Programme de résolution d'équations du module C/C++

Programme de résolution d'équations du module C/C++

PHPz
Libérer: 2023-08-26 16:37:03
avant
1458 Les gens l'ont consulté

Programme de résolution déquations du module C/C++

En mathématiques, équation modulaire est une équation algébrique qui satisfait modulo au sens de problème modulaire. Autrement dit, étant donné plusieurs fonctions sur un espace de modules, l'équation modulaire est l'équation entre elles, ou en d'autres termes, l'identité modulaire.

L'usage le plus courant du terme équations « modulaires » est lié au problème modulaire des courbes elliptiques. Dans ce cas, l’espace des modules lui-même est unidimensionnel. Cela signifie que deux fonctions rationnelles F et G dans le domaine des fonctions de courbe modulaire satisferont l'équation modulaire P(F, G) = 0 P est un polynôme non nul des deux variables sur les nombres complexes. Pour des choix non dégénérés appropriés de F et G, l'équation P(X,Y) = 0 définira en fait la courbe modulaire.

Vous venez de voir une étrange expression mathématique de la forme

B ≡ (A mod X)

Cela signifie que B est congru à A mod X. Prenons un exemple,

21 ≡ 5( mod 4)

Le symbole égal signifie « équivalent ». Dans l'équation ci-dessus, 21 et 5 sont équivalents. En effet, 21 modulo 4 = 1 est égal à 5 ​​modulo 4 = 1. Un autre exemple est 51 eq 16(mod 7)

Dans ce problème, nous avons deux entiers a et b et nous devons trouver le nombre de valeurs possibles de x qui suivent l'équation modulaire (A mod X)=B, où l'équation modulaire Solution de X.

Par exemple

Input: A = 26, B = 2
Output: X can take 6 values
Copier après la connexion

explique que

Par exemple, (26 mod 3) = (26 mod 4) = (26 mod 6) = (26 mod 8) = .... = 2

Nous avons l'équation A mod X = B

condition

si (A = B) Alors il y aura un nombre infini de valeurs où A est toujours supérieur à X.

si (A < B) alors il est impossible pour X de s'adapter aux équations modulaires. < B) 那么 X 不可能容纳模方程。

Il ne reste plus que le dernier cas (A > B).

Maintenant, dans ce cas, nous utiliserons la relation

Dividende = Diviseur * Quotient + Reste

X, qui est le diviseur étant donné A (c'est-à-dire le dividende) et B (c'est-à-dire le reste).

Maintenant

A = X * Quotient + B

Laissons le quotient être exprimé comme Y

∴ A = Valeur,

Nous devons prendre tout X tel que X divisé par (A - B)

∴ Le problème principal est que le nombre de diviseurs correspond aux valeurs possibles que X peut prendre.

Nous savons que la valeur de la solution de A mod X sera de (0 à X – 1) en prenant tout X tel que X > B.

De cette façon, nous pouvons conclure que le nombre de diviseurs de (A – B) est supérieur à B, et toutes les valeurs possibles de X peuvent satisfaire A mod X = B

Exemple

#include <iostream>
#include <math.h>
using namespace std;
int Divisors(int A, int B) {
   int N = (A - B);
   int D = 0;
   for (int i = 1; i <= sqrt(N); i++) {
      if ((N % i) == 0) {
         if (i > B)
            D++;
         if ((N / i) != i && (N / i) > B)
            D++;
      }
   }
   return D;
}
int PossibleWaysUtil(int A, int B) {
   if (A == B)
      return -1;
   if (A < B)
      return 0;
   int D = 0;
   D = Divisors(A, B);
   return D;
}
int main() {
   int A = 26, B = 2;
   int Sol = PossibleWaysUtil(A, B);
   if (Sol == -1) {
      cout <<" X can take Infinitely many values greater than " << A << "\n";
   } else {
      cout << " X can take " << Sol << " values\n";
      return 0;
   }
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal