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

Pythonプログラムでループを使用せずに数値シリーズを印刷する


この記事では、以下に示す問題ステートメントの解決策について学習します-

問題の説明

2つの数NとKが与えられた場合、問題は、数(N)がゼロ(0)より大きくなるまでNから数Kを引くことです。次に、Nが負またはゼロになると、その数が元になるまでKを加算し始めます。番号(N)。

N = 10
K = 4

出力

10 6 2 -2 2 6 10

アルゴリズム

  • Nがゼロより大きくなるまで関数を何度も呼び出します(すべての関数呼び出しで、NからKを減算します)。

  • 数値が負またはゼロになると、数値が元の数値になるまで、各関数呼び出しでKを追加し始めます。

  • ここでは、加算と減算の目的で単一の関数を使用しましたが、加算関数と減算関数を切り替えるために、ブール型の変数フラグを使用しました。

それでは、Pythonでの実装を見てみましょう

def PrintNumber(N, Original, K, flag):
   #print the number
   print(N, end = " ")
   #if number become negative
   if (N <= 0):
      if(flag==0):
         flag = 1
      else:
         flag = 0
   if (N == Original and (not(flag))):
      return
   # if flag is true
   if (flag == True):
      PrintNumber(N - K, Original, K, flag)
      return
   if (not(flag)):
      PrintNumber(N + K, Original, K, flag);
      return
N = 10
K = 4
PrintNumber(N, N, K, True)

出力

10 6 2 -2 2 6 10

ここでは、下の画像に示すように、すべての変数がグローバル名前空間で宣言されています-

Pythonプログラムでループを使用せずに数値シリーズを印刷する

結論

この記事では、Python3.xでループ構造を使用せずに数列を出力するための用語について学習しました。またはそれ以前。


  1. ループを使用しない印刷番号シリーズのPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 − 2つの数NとKが与えられた場合、問題は、数(N)がゼロ(0)より大きくなるまでNから数Kを引くことです。Nが負またはゼロになると、その数が元の番号(N)。 たとえば、 N = 10 K = 4 Output will be: 10 6 2 -2 2 6 10 アルゴリズム 1. we call the function again and again until N is greater than zero (in every function    call we subtra

  2. Pythonでループを使用せずに、nのm倍を出力します。

    数値nが与えられた場合、ループを使用せずにm個のnの乗算を出力します。ここでは再帰関数を使用します。 例 Input: n = 15 Output: 15 10 5 0 5 10 15 アルゴリズム Step 1: Given n. Step 2: If we are moving back toward the n and we have reached there, then we are done. Step 3: If we are moving toward 0 or negative. Step 4: If m is greater, then 5, recursive fu