Pythonで7セグメントディスプレイに表示されている場合、数値の鏡像が同じかどうかを確認します
数nがあるとします。番号の鏡像が7セグメントディスプレイに表示されているときに、指定された番号と同じであるかどうかを確認する必要があります。
したがって、入力がn =818のような場合、出力はTrueになります。
鏡像は同じです。
これを解決するには、次の手順に従います-
- num_str:=n as string
- 範囲0からnum_str-1のサイズのiの場合、do
- num_str[i]が['0'、 '1'、 '8']に該当しない場合は、
- Falseを返す
- num_str[i]が['0'、 '1'、 '8']に該当しない場合は、
- 左:=0
- right:=num_strのサイズ-1
- 左<右、実行
- num_str[left]がnum_str[right]と同じでない場合、
- Falseを返す
- 左:=左+ 1
- right:=right-1
- num_str[left]がnum_str[right]と同じでない場合、
- Trueを返す
例
理解を深めるために、次の実装を見てみましょう-
def solve(n): num_str = str(n) for i in range(len(num_str)): if num_str[i] not in ['0', '1', '8']: return False left = 0 right = len(num_str) - 1 while left < right: if num_str[left] != num_str[right]: return False left += 1 right -= 1 return True n = 818 print(solve(n))>
入力
818
出力
True
-
素数をチェックするPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −数が与えられているので、与えられた数が素数であるかどうかを確認する必要があります。 1より大きい特定の正の数で、1以外の要素はなく、その数自体は素数と呼ばれます。 2、3、5、7などは他の要素がないため素数です。 以下のこのプログラムでは、素数または非素数の性質について番号がチェックされます。 1以下の数は素数とは言えません。したがって、数値が1より大きい場合にのみ反復します。 ここで、その数が2から(num-1 // 2)の範囲の任意の数で正確に割り切れるかどうかを確認します。指定された範囲内に何ら
-
アームストロング数をチェックするPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 整数nが与えられた場合、与えられた整数がアームストロング数であることを確認する必要があります。 正の整数は、次の場合、n次のアームストロング数と呼ばれます abcd... = a^n + b^n + c^n + d^n + … ここでは、3桁のアームストロング数、つまり3桁のブルートフォースアプローチについて説明します。 オーダーnのアームストロング番号を確認するには、3を行番号7の対応するオーダー値に置き換える必要があります。 それでは、実装を見てみましょう- 例