-
数値のすべての桁がそれを分割するかどうかをチェックするためのPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 −数値nを指定して、nのすべての桁がそれを分割するかどうかを調べます。 ここでは、指定された数値に0がないことを確認します。これは、ゼロ除算の例外が発生するため、回答としてnoを返す必要があるためです それ以外の場合は、チェック条件を宣言できる一時変数フラグを使用して、すべての桁が数値を除算できるかどうかをチェックする必要があります。 それでは、実装を見てみましょう- 例 n=int(input()) flag=1 for i in str(n): if
-
除数の数が偶数か奇数かをチェックするPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 −数値「n」を指定して、除数の総数が偶数または奇数であることを確認します。 このアプローチでは、すべての除数を見つけて、除数の数が偶数または奇数であることを確認します。 実装は以下のとおりです- 例 import math def countDivisors(n) : count = 0 # calculating all the divisors root=int(math.sqrt(n))+2 &nbs
-
複利のためのPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 −原則、利率、時間の3つの入力値が与えられ、複利を計算する必要があります。 以下のコードは、複利の計算プロセスを示しています。 ここで使用される式はです。 Compound Interest = P(1 + R/100)r どこで、 Pは元本です Rはレートであり、 Tは期間です 実装は以下のとおりです 例 def compound_interest(principle, rate, time): CI = principle * (pow((1
-
最初のn個の自然数の立方和のためのPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 −入力nが与えられた場合、シリーズ13 + 23 + 33 +43+……。+n3の合計をn番目の項まで出力する必要があります。 ここでは、問題ステートメントの解決策に到達するための2つのアプローチについて説明します- ループを使用した強引なアプローチ。 n個の数の合計の数学的解。 アプローチ1 -数値を繰り返して加算することにより、各項の合計を計算する 例 def sumOfSeries(n): sum = 0 for i in
-
奇数桁と偶数桁の合計の差のためのPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 −整数の場合、奇数桁の合計と偶数桁の合計の差が0であるかどうかを計算する必要があります。 ブルートフォースアプローチでは、数値のすべての偶数桁と奇数桁の合計を計算し、それらを減算して答えを計算します。 計算時間を短縮するために、精神数学の概念を使用します。 上記の制約は、数値が11で割り切れる場合にのみ当てはまります。したがって、以下の実装では、数値の11で割り切れる可能性を確認します。 ここで、複雑さはO(n)から、分割可能性と比較に関係する一定の時間に減少します。 それでは
-
数の階乗のためのPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 −nの階乗を計算するタスク。 非負数の階乗は-で与えられます n! = n*n-1*n-2*n-3*n-4*.................*3*2*1 この問題には2つの解決策があります 再帰的アプローチ 反復的なアプローチ アプローチ1-再帰的アプローチ 例 def factorial(n): # recursive solution if (n==1 or n==0): return 1 &
-
フィボナッチ数のPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 −n番目のフィボナッチ数を計算するタスク。 フィボナッチ数のシーケンスFnは、以下に示す漸化式によって与えられます。 Fn =Fn-1 + Fn-2 シード値付き(標準) F0=0およびF1=1。 この問題には2つの解決策があります 再帰的アプローチ 動的アプローチ アプローチ1-再帰的アプローチ 例 #recursive approach def Fibonacci(n): if n<0: pri
-
数の最大の素因数を見つけるためのPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 正の整数nが与えられます。数の最大の素因数を見つける必要があります。 アプローチ 指定された数値を数値の約数で割って因数分解します。 最大素因数を更新し続けます。 例 import math def maxPrimeFactor(n): # number must be even while n % 2 == 0: max_Prime = 2 n /= 1
-
数の因子の最小合計を見つけるためのPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 入力された数値を指定して、指定された数値の因子の最小合計を求めます。 ここでは、すべての因子とそれに対応する合計を計算し、それらの中から最小値を見つけます。 したがって、数の積の最小合計を見つけるために、積の素因数の合計を見つけます。 これが問題の反復実装です- 例 #iterative approach def findMinSum(num): sum_ = 0 # Find factors of number and add to the sum
-
nで割った配列乗算のリマインダーを見つけるためのPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 複数の数値と数値入力nが与えられた場合、除算可能なすべての数値にnを掛けた後、余りを出力する必要があります。 アプローチ まず、arr [i]%nのように余りを計算します。次に、この余りに現在の結果を掛けます。 乗算後、オーバーフローを避けるために同じ余りを取ります。これは、モジュラー演算の分配法則に準拠しています。 ( a * b) % c = ( ( a % c ) * ( b % c ) ) % c 例 def findremainder(arr, lens, n): &n
-
数の偶数因子の合計を見つけるためのPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 数値入力nが与えられた場合、タスクは数値の偶数因子の合計を見つけることです。 ここでは、最初にすべての奇妙な要因を排除する必要があります。 入力された数値が奇数の場合、偶数の因数はなく、直接ゼロを返します。それ以外の場合は、以下のコードのアプローチに従います。 以下は実装です- 例 import math # Returns sum of all even factors of n. def sumofFactors(n) : # If n is odd &nbs
-
数の奇数因子の合計を見つけるためのPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 数値入力nが与えられた場合、タスクは数値の奇数因子の合計を見つけることです。 ここでは、最初にすべての偶数の要因を排除する必要があります。 すべての偶数因子を削除するために、nを2で割り切れるまで繰り返し除算します。このステップの後、数の奇数因子のみを取得します。 以下は実装です- 例 import math def sumofoddFactors( n ): #prime factors res = 1 # ignore e
-
n番目の項がn^2 –(n-1)^2である級数の合計を見つけるためのPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 整数入力nが与えられ、すべてのn項を合計する必要があります。ここで、一連のn番目の項は次のように表されます- Tn = n2 - (n-1)2 より多くの時間計算量を含むnの二乗muktiolicaionを含む合計を計算するための直接式があります。これを減らすために、ここではモジュラー乗算アプローチを使用します それでは、実装を見てみましょう- 例 # Python program to find sum of given # series. mod = 1000000007 def findSum(n)
-
Pythonプログラムで円柱の周囲を見つける
この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 直径と高さを入力し、円柱の周囲長を見つけます。 周囲長は、円柱、つまり長方形の側面図に他なりません。 したがって、周囲長=2 *(h + d) ここで、dは円柱の直径です hは円柱の高さです それでは、実装を見てみましょう 例 # Function to calculate the perimeter of a cylinder def perimeter( diameter, height ) : return 2 * ( diameter + height )
-
Pythonプログラムで放物線の頂点、焦点、方向を見つける
この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 放物線方程式の標準形はy=ax ^ 2です。 + bx+c。 a、b、cの値を入力します。私たちのタスクは、頂点の座標、フォーカス、およびdirectrixの方程式を見つけることです。 頂点 放物線の座標は最も鋭角に曲がる座標ですが、y=aは曲線を生成するために使用される直線です。 ダイレクトリックス 曲線またはサーフェスの記述に使用される固定線。 それでは、実装を見てみましょう- 例 def findparabola(a, b, c): print ("Ve
-
Pythonプログラムでの球面鏡の焦点距離
この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 球面鏡の曲率半径が与えられ、その焦点距離を見つける必要があります。 焦点距離は、ミラーの曲率の中心から主焦点までの距離です。球面鏡の焦点距離を最初に決定するには、その鏡の曲率半径を知る必要があります。ミラーの頂点から曲率中心までの距離を曲率半径と呼びます。 数学的に- 凹面ミラーの場合: F =R / 2 凸面鏡の場合: F =-R / 2 それでは、実装を見てみましょう 例 #spherical concave mirror def focal_length_concave(R):  
-
Pythonプログラムの2つ以上(または配列)の数値のGCD
この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 数の配列が与えられ、最大公約数を見つける必要があります。 3つ以上の数のgcdを見つける必要がある場合、gcdは、引数として提供されるすべての数に共通の素因数の積に等しくなります。また、引数の数のペアのGCDを繰り返し取得することによって計算することもできます。 ここでは、後者のアプローチを実装します では、実装を見てみましょう 例 def findgcd(x, y): while(y): x, y = y, x % y
-
与えられた番号がPythonプログラムでフィボナッチ数であるかどうかを確認するにはどうすればよいですか?
この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 数nが与えられたら、nがフィボナッチ数であるかどうかを確認します n番目のフィボナッチ数は前の2つのフィボナッチ数の合計であることは誰もが知っています。しかし、それらは漸化式以外の興味深い関係も提供します。 (5 * n2 + 4)または(5 * n2 – 4)が完全な正方形である場合に限り、数値は本質的にフィボナッチです。 このプロパティを使用して、数値がフィボナッチであるかどうかを確認します。 では、Pythonスクリプトの実装を見てみましょう- 例 import math # if x is p
-
Pythonプログラムでの挿入ソート
この記事では、Python3.xでの挿入ソートの実装について学習します。またはそれ以前。 アルゴリズム ソートされた配列を各反復で拡張することにより、入力要素を反復します。 現在の要素を、並べ替えられた配列で使用可能な最大値と比較します。 現在の要素の方が大きい場合は、その要素をそのままにして次の要素に移動します。それ以外の場合は、並べ替えられた配列内で正しい位置を見つけて、配列内のその位置に移動します。 これは、並べ替えられた配列内の現在の要素よりも大きいすべての要素を右にシフトすることで実現されます。 それでは、アルゴリズムの視覚的表現を見てみましょう
-
Pythonプログラムでの線形探索
この記事では、線形検索とPython3.xでの実装について学習します。またはそれ以前。 アルゴリズム 指定されたarr[]の左端の要素から開始し、要素xをarr []の各要素と1つずつ比較します。 xがいずれかの要素と一致する場合は、インデックス値を返します。 xがarr[]のどの要素とも一致しない場合は、-1を返すか、要素が見つかりません。 次に、特定のアプローチの視覚的表現を見てみましょう- 例 def linearsearch(arr, x): for i in range(len(arr)): &nbs