コンテンツにスキップ

サブルーチン

出典: フリー百科事典『ウィキペディア(Wikipedia)』

: subroutine: subprogram[1]: routine: function: procedure

[]




使

[]




PascalCALGOL

 (IPA) 使[1]PascalALGOLPascal使[2]

使2[3]





使

Pascal



使 (CPU) [4][5]x64ARM[6][7]

PODABIC (DLL)  (so) PascalMicrosoft ExcelC/C++PascalVisual Basic使DLLVisual Basic for Applications (VBA) [8][9]

[]


 (function) 








[]


CSimulaC++

JavaC#C++Swift

[]


EDSAC The Preparation of Programs for an Electronic Digital Computer1951 part one, chapter 2 

[]



FORTRAN[]


FortranfunctionsubroutineFortran 90PURE

LISP[]


LISPCommon LispScheme使Lisp

BASIC[]


BASICGOSUB  GOSUB GOSUB () RETURN GOSUB RETURN  GOTO使DEFFN 

Pascal[]


Pascalfunctionprocedure使[ 1]

C[]


CK&RCPascal[10]C(function) 

[10]
<戻り値の型> <関数名>( <引数> )
{ 
  関数内の処理の記述
}

Cvoidvoid[ 2]

[10][10]

K&RCANSI CC89C2023ISO/IEC 9899

Perl[]


Perlreturn[ 3]使

Visual Basic[]


Visual Basic (VB)Visual Basic for Applications (VBA)Visual Basic .NET (VB.NET) FunctionSubProperty[11][12]

[]


Microsoft ExcelSUMAVERAGEIF100VBAVBAIIf[13]IFVBAVBA

[]


ffrecursive function call[14][1]使[15]使[1]使[16]使[ 4][17][18][19][20]

MiB

脚注[編集]

注釈[編集]

  1. ^ C言語と違い、中身の記述すなわち定義まで含むものもPascalでは「宣言」と言う。
  2. ^ 標準化以前(K&R初版時代のC)は、省略した場合のデフォルトとしてintを返すと解釈される仕様だったという経緯があり、互換性を保つためにそれが標準とされたため、値を返さない場合にはvoidを書いて明示しなければならない、という仕様になっている。
  3. ^ http://perldoc.perl.org/perlsub.html には return statement とあるが、return 自体の解説は http://perldoc.perl.org/functions/return.html のように関数扱いになっている。
  4. ^ オセロゲームの盤面先読みのコードは、以前、基本情報技術者試験に出題されたことがあり教科書や問題集などでも掲載されるようになっていた。

出典[編集]

  1. ^ a b c d 大滝みや子『2020年版 基本情報技術者 標準教科書』オーム社、2019年。pp.95-96「手続きと関数」「再帰呼び出し」の章
  2. ^ 電子情報通信学会『知識の森』 - 6 群「基礎理論とハードウェア」 - 3 編「アルゴリズムとデータ構造」 - 1 章「アルゴリズムとアルゴリズム解析」
  3. ^ 問49 変数を引数として渡しても、サブルーチンの実行後に変数の値が変更されないことが保証されているものはどれか。 | 日経クロステック(xTECH)
  4. ^ Calling Conventions | Microsoft Learn
  5. ^ Argument Passing and Naming Conventions | Microsoft Learn
  6. ^ x64 calling convention | Microsoft Learn
  7. ^ Overview of ARM ABI Conventions | Microsoft Learn
  8. ^ Working with DLLs | Microsoft Learn
  9. ^ Developing DLLs | Microsoft Learn
  10. ^ a b c d Brian W. Kernighan / Dennis M. Ritchie "The C Programming Language, Second Edition", 1988. ISBN 0-13-110362-8, pp.24-27 "Functions".
  11. ^ Writing a property procedure (VBA) | Microsoft Learn
  12. ^ Property プロシージャ - Visual Basic | Microsoft Learn
  13. ^ IIf function (Visual Basic for Applications) | Microsoft Docs
  14. ^ 自分から自分を呼ぶ? Pythonで「再帰呼び出し」の不思議を体験 | 日経クロステック(xTECH)
  15. ^ 『令和04年 栢木先生の基本情報技術者教室』技術評論社、2021年、p.209「再帰的な関数の例」
  16. ^ .NET TIPS [ASP.NET]データベースからツリー・メニューを生成するには? - C# VB.NET Webフォーム - @IT
  17. ^ Chess programming
  18. ^ 将棋ソフト作成入門
  19. ^ 再帰呼び出し
  20. ^ 囲碁プログラムの作り方(基本編)

関連項目[編集]