Functional-programming-function-types

提供:Dev Guides
移動先:案内検索

関数型プログラミング-関数型

機能は2種類あります-

  • 定義済みの関数
  • ユーザー定義関数

この章では、関数について詳しく説明します。

定義済みの関数

これらは、操作を実行するために言語に組み込まれ、標準機能ライブラリに保存される機能です。

-C の「Strcat」とHaskellの「concat」を使用して2つの文字列を追加し、C の「strlen」とPythonの「len」を使用して文字列の長さを計算します。

C ++で文字列の長さを出力するプログラム

次のプログラムは、C ++を使用して文字列の長さを印刷する方法を示しています-

#include <iostream>
#include <string.h>
#include <stdio.h>
using namespace std;

int main() {
   char str[20] = "Hello World";
   int len;
   len = strlen(str);
   cout<<"String length is: "<<len;
   return 0;
}

それは次の出力を生成します-

String length is: 11

Pythonで文字列の長さを出力するプログラム

次のプログラムは、関数型プログラミング言語であるPythonを使用して文字列の長さを印刷する方法を示しています-

str = "Hello World";
print("String length is: ", len(str))

それは次の出力を生成します-

('String length is: ', 11)

ユーザー定義関数

ユーザー定義関数は、特定のタスクを実行するためにユーザーによって定義されます。 関数を定義する4つの異なるパターンがあります-

  • 引数も戻り値もない関数
  • 引数なしで戻り値を持つ関数
  • 引数はあるが戻り値はない関数
  • 引数と戻り値を持つ関数

引数も戻り値もない関数

次のプログラムは、 C ++ で引数と戻り値のない関数を定義する方法を示しています-

#include <iostream>
using namespace std;

void function1() {
   cout <<"Hello World";
}
int main() {
   function1();
   return 0;
}

それは次の出力を生成します-

Hello World

次のプログラムは、 Python で同様の関数(引数と戻り値なし)を定義する方法を示しています-

def function1():
   print ("Hello World")

function1()

それは次の出力を生成します-

Hello World

引数なしで戻り値を持つ関数

次のプログラムは、 C ++ で引数なしで戻り値を持つ関数を定義する方法を示しています-

#include <iostream>
using namespace std;
string function1() {
   return("Hello World");
}

int main() {
   cout<<function1();
   return 0;
}

それは次の出力を生成します-

Hello World

次のプログラムは、 Python で同様の関数(引数なしで戻り値)を定義する方法を示しています-

def function1():
   return "Hello World"
res = function1()
print(res)

それは次の出力を生成します-

Hello World

引数はあるが戻り値はない関数

次のプログラムは、引数を使用して C ++ に戻り値を持たない関数を定義する方法を示しています-

#include <iostream>
using namespace std;
void function1(int x, int y) {
   int c;
   c = x+y;
   cout<<"Sum is: "<<c;
}

int main() {
   function1(4,5);
   return 0;
}

それは次の出力を生成します-

Sum is: 9

次のプログラムは、 Python で同様の関数を定義する方法を示しています-

def function1(x,y):
   c = x + y
   print("Sum is:",c)
function1(4,5)

それは次の出力を生成します-

('Sum is:', 9)

引数と戻り値を持つ関数

次のプログラムは、引数なしで戻り値を持つC ++で関数を定義する方法を示しています-

#include <iostream>
using namespace std;
int function1(int x, int y) {
   int c;
   c = x + y;
   return c;
}

int main() {
   int res;
   res = function1(4,5);
   cout<<"Sum is: "<<res;
   return 0;
}

それは次の出力を生成します-

Sum is: 9

次のプログラムは、 Python で同様の関数(引数と戻り値付き)を定義する方法を示しています-

def function1(x,y):
   c = x + y
   return c

res = function1(4,5)
print("Sum is ",res)

それは次の出力を生成します-

('Sum is ', 9)