C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++で合計と積が両方ともNと同じである2つの数値を検索します


このチュートリアルでは、合計と積が両方ともNと同じである2つの数値を見つけるプログラムについて説明します。

このために、整数値が提供されます。私たちのタスクは、積と合計が指定された値に等しい他の2つの整数値を見つけることです。

#include <bits/stdc++.h>
using namespace std;
//finding a and b such that
//a*b=N and a+b=N
void calculateTwoValues(double N) {
   double val = N * N - 4.0 * N;
   if (val < 0) {
      cout << "NO";
      return;
   }
   double a = (N + sqrt(val)) / 2.0;
   double b = (N - sqrt(val)) / 2.0;
   cout << "Value of A:" << a << endl;
   cout << "Value of B:" << b << endl;
}
int main() {
   double N = 57.0;
   calculateTwoValues(N);
   return 0;
}

出力

Value of A:55.9818
Value of B:1.01819

  1. 合計とGCDがC++で与えられている2つの数値を見つけます

    2つの数aとbの合計とgcdがあります。数字aとbの両方を見つける必要があります。それが不可能な場合は、-1を返します。合計が6でgcdが2であるとすると、数値は4と2になります。 このアプローチは、GCDが与えられると、その数がその倍数になることが知られているようなものです。次の手順があります 最初の数値をGCDとして選択すると、2番目の数値はsum − GCDになります。 前の手順で選択した数値の合計が合計と同じである場合は、両方の数値を出力します。 それ以外の場合は、数値が存在しないため、-1を出力します。 例 #include <iostream>

  2. 合計と積が両方ともNと同じである2つの数値を見つけるC++プログラム

    このチュートリアルでは、両方が次のようになる2つの数字(たとえば「a」と「b」)を見つけるプログラムについて説明します a+b = N and a*b = N are satisfied. 両方の方程式から「a」を削除すると、「b」と「N」の2次方程式が得られます。つまり b2 - bN + N = 0 この方程式には、「a」と「b」の両方の値を与える2つの根があります。行列式を使用して根を見つけると、「a」と「b」の値が次のようになります。 $ a =(N- \ sqrt {N * N-4N)} / 2 \\ b =(N + \ sqrt {N * N-4N)} / 2 $ 例 #i