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


Problem

1/10

サブルーチン関数

Theory Click to read/hide

関数とは、結果(数値、文字列など)を返すサブルーチンです

オンライン ストアで商品を注文したとします。プログラミングの観点からは、特定のサブルーチンを呼び出しました。プロシージャとは異なり、このサブルーチンは結果を返す必要があります。つまり、注文した製品を配達します。これらのサブルーチンは関数と呼ばれます。
関数はプロシージャとほぼ同じ方法でフォーマットされます。 <プレ> function <関数名> (<変数名>:<その型> セミコロンで区切られたパラメータのリスト): <戻り値の型>; 始める <関数本体> 終了;
関数とプロシージャの違いは、関数は値を返さなければならないことです。これを行うには、関数名を変数または特殊変数として使用する必要があります。 結果: <プレ> 関数 Sum(a, b:integer): 整数; 始める 合計:= a + b; 終了; また <プレ> 関数 Sum(a, b:integer): 整数; 始める 結果:= a + b; 終了;
2 つの整数の算術平均を返す関数は次のようになります。 <プレ> 関数 Average(a, b: 整数): 実数; 始める  平均:= (a + b) / 2; 終わり; メインプログラムでこの関数を呼び出す方法を理解する必要があります:
プロシージャを呼び出すのと同じ方法で関数を呼び出さないでください: <プレ> 平均 (10, 5); 関数によって返された値は失われます。オンラインストアの商品が誰にも渡されずに捨てられたようなものです。お客様に気に入ってもらえる可能性は低いです。

結果を変数に保存 (または 画面に出力) する方が正しいです: <プレ> a := 平均(10, 5);

または

<プレ> writeln(average(10, 5));

Problem

自然数の桁の合計を計算する関数を作成
します。 この関数を使って、入力された 5 つの自然数の中から桁数の合計が最大になる数を求めるプログラムを作成してください。そのような数が複数ある場合は、大きい方の数を出力してください
 
<頭> <本体>
# 入力 出力
1 15
234
11
9
111112
234
Write the program below
var n, i, max, nmax: integer;
// функция, которая вычисляет сумму цифр числа    
// основная программа   
begin
    max := 0;
    nmax := 0; 
    for i := 0 to 4 do
    begin 
    end;
    writeln(nmax);
end. 

     

Program check result

To check the solution of the problem, you need to register or log in!