(Python) サブルーチン: プロシージャと関数 - 2


サブルーチン関数

関数は、結果(数値、文字列など)を返すサブルーチンです。< /部門>
オンライン ストアで商品を注文したとします。プログラミングの観点からは、何らかのサブルーチンを呼び出し、プロシージャとは異なり、このサブルーチンは結果を返す必要があります。つまり、注文した製品を配達します。これらのサブルーチンは関数と呼ばれます。
関数は、プロシージャとまったく同じようにフォーマットされます。プロシージャとの唯一の違いは、特別な演算子 return,  が存在することです。その後、メイン プログラムに返される値が記述されます。

2 つの整数の算術平均を返す関数は次のようになります。 <プレ> デフォルト平均(a、b): 平均 = (a + b) / 2 平均リターン メインプログラムでこの関数を呼び出す方法を理解する必要があります:
プロシージャと同じ方法で関数を呼び出すべきではありません。 <プレ> 平均(10, 5)
関数によって返された値は失われます。オンラインストアの商品が誰にも渡されずに捨てられたようなものです。お客様に気に入ってもらえる可能性は低いです。

結果を変数に保存 (または 画面に出力) する方が正しいです: <プレ> a = 平均(10, 5) <プレ> print(平均(10, 5))
覚えておく必要があります!
<オール>
  • 関数サブルーチンは、プロシージャと同じようにフォーマットされます。
  • 関数は、プログラム内で値を配置する場所で呼び出されます。たとえば、print() ステートメントのパラメータとして、または算術式で使用します。 
  • Euclid のアルゴリズム

    Euclid のアルゴリズム —効率的な BC" title="アルゴリズム">アルゴリズム 検索最大公約数  2 整数 (または 一般 測定 2 ライン)。このアルゴリズムの名前は、ギリシャ語 数学 ユークリッド (紀元前 3 世紀 )、VII<スパン スタイルで最初に記述しました。 ="font-size:10.8333px"> および X 書籍 «始まり"。これは、現在使用されている最も古い数値アルゴリズムの 1 つです。

    計算を思い出してください。

    2 つの自然数の最大公約数 (gcd) は次のとおりです。割り切れる最大の自然数。

    たとえば、数字 12 と 18 の公約数は 2、3、6 です。最大公約数は 6 です。これは次のように記述されます: gcd(12, 18) = 6

    プログラミングでは、Euclid アルゴリズムの実装がいくつかあります。ここではそのうちの 1 つをブロック図の形式で説明します


    このアルゴリズムを実装してみてください。

    論理関数

    多くの場合、プログラマはブール値「true」を返すブール関数を使用します。または「偽」 (または)
    このような関数は、  に役立ちます。いくつかの物件をチェックして
    ください。 数値が偶数かどうかをチェックする論理関数を作成する 2 つの例を考えてみましょう。
      <頭> <本体>
    関数とプロシージャの操作に関する最後の注意: プログラム内の関数とプロシージャの数には制限がありません。さらに、1 つのサブルーチンは別のサブルーチンやそれ自体を呼び出すこともできます。
     

    説明 サブルーチンの例
    1) より良い方法: 式 n % 2 == 0 の結果は true (True) または false (False) になります。 <プレ> def isEven(n): return (n % 2 == 0)
    2) このように書くこともできますが、いずれにせよ、これ以上長い記録は行わない方が良いでしょう。 <プレ> デフォルトはEven(n): n % 2 == 0の場合: true を返します。 それ以外: False を返す<​​/span>