C++で除算しない2つの数値の高速平均
この問題では、2つの数値AとBが与えられます。私たちのタスクは、除算なしで2つの数値の高速平均を計算するプログラムを作成することです。
問題を理解するために例を見てみましょう
入力: A =34 B =54
出力: 44
ソリューションアプローチ:
通常、平均は2つの数値を加算し、それを2で割って計算されます。これには除算が必要ですが、除算を使用せずに平均を見つける必要があります。これは、右シフト演算子>>を使用して実行でき、除算演算子を使用する代わりにバイナリ展開をシフトします。
ソリューションの動作を説明するプログラム
例
#include <iostream> #include <stdio.h> using namespace std; int calcAvgWODiv(int A, int B) { int average = (A + B) >> 1; return average; } int main() { int A = 123 , B = 653; cout<<"The average of the number is "<<calcAvgWODiv(A, B); return 0; }
出力-
The average of the number is 388
-
2つの数値を交換するC++プログラム
2つの数値を交換するプログラムを作成する方法は2つあります。 1つは一時変数を使用することを含み、2番目の方法は3番目の変数を使用しません。これらは次のように詳細に説明されています- 一時変数を使用して2つの数値を交換するプログラム 一時変数を使用して2つの数値を交換するプログラムは次のとおりです。 例 #include <iostream > using namespace std; int main() { int a = 10, b = 5, temp; temp = a; a = b; &nbs
-
2つの数値を追加するC++プログラム
加算は基本的な算術演算です。 2つの数値を加算するプログラムは、2つの数値の加算を実行し、それらの合計を画面に出力します。 2つの数字の加算を示すプログラムは次のとおりです- 例 #include <iostream> using namespace std; int main() { int num1=15 ,num2=10, sum; sum = num1 + num2; cout<<"Sum of "<<num1<<" and &q