例題(2)
[ edit ]
Contents
概要
*
ポイント
この課題で使うPythonの機能 (学習のヒント)
[ edit ]
- この例題のポイント ...
- 関数定義のヘッダ:
defキーワードに続けて,「関数名」,「パラメータ(仮引数)並び」,:
- 関数定義の本体:
- (原則としては)次の行以降に,字下げして記述してください
- 関数定義のヘッダ:
- パラメータで関数抽象化ができます
- 関数が呼び出し(function invocation)
- 指定されたパラメータ(実引数)で仮引数を置き換えた,定義本体と置き換えられます
return文で値を返すことができます.
この例題における解法 (問題解決のヒント)
[ edit ]
(MathJax対応のブラウザでしたら,下記,数式がきれいに表示されます) $$ 2^n − 1 $$
実行例
*
本質的な部分 (授業中に順次公開します)
*
高度な話題 (授業中,もしくは授業後に順次公開します)
[ edit ]
⇒ 高度な話題へのリンク: 授業の流れを阻害しないように別ページにします.
- (後日の回の授業内容にはなる可能性がありますが,この回の授業内容には含めません).
- λ式(ラムダ式)に関するものです.
配布コード (授業中に順次公開します)
[ edit ]
- 例題ファイルとしては,コメントを付け加えた,下記を配布します.
- コメントはもう少し増えるかもしれません.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# ==============================================================================
# * Copyright (c) 2018 IIJIMA, Tadashi
# * (IIJIMA Laboratory, Dept. of Science and Technology, Keio University).
# ==============================================================================
# ソフトウェア工学[02] 例題[02]-(002a) Ex_02_002a_mersenne_number.py
# Ex(Example) 02-002a: 【関数定義】 メルセンヌ数を求める関数を定義する.
# n番目のメルセンヌ数は,2の冪よりも 1 小さい自然数,すなわち 2^n − 1.
# 2018-10-03 飯島 正 (iijima@ae.keio.ac.jp)
# ==============================================================================
# ===== 【関数定義】 n番目のメルセンヌ数 =====
# ※n番目のメルセンヌ数は,2のn乗-1
def mersenne_number( n ):
return( 2 ** n - 1 )
# ==============================================================================
# ===== 【メイン・プログラム】 =====
# ----- オープニングメッセージ -----
print( "メルセンヌ数を求めます: " )
# ----- パラメータの入力 -----
n = int( input( "正の整数を入力してください>>> " ) );
# ----- 結果の表示 ----
print( " ", n, "番目のメルセンヌ数は ", mersenne_number( n ) )
print()
print( "1~", n, "までのメルセンヌ数列", sep="" )
for i in range( 1, n+1 ):
print( " ", n, "番目のメルセンヌ数は ", mersenne_number( i ) )
# ==============================================================================