python |制御フロー計算書(A)


プログラムの第一フローチャート

グラフィックス、テキストおよびライン一連の処理によって記述されたプログラムの基本的な動作及び制御フローを説明するためのプログラムのフローチャートを参照し、それはプログラムの解析やプロセスに対する最も基本的な方法が記載されています。

7接続点複数のフローチャート互いに接続請求基本要素のフローチャートがあり、フロー図は、いくつかの部分に分割大きなに使用します。


条件式の第2節

2.1定義

また、条件式として知られている「の表現のトリプレット」、長い条件式の値が0でないようとして、虚偽、ヌル、パイソン、pythonのすべての合法的な表現、真と等価であると考えられる条件式として見ることができますスタイル。


2.2フォーマット

2つの条件式の構文があります。

  • フォーマット1:X、Y IFは、他の条件条件のために、yは、戻り値がFalseであると判断し、戻り値は真のXであると判断し
  • フォーマット2:[条件条件のための(x、y)は、戻り値がTrue xが、yが戻り値がFalseであると判断され、判断します
a = eval(input('请输入一个数字'))     # 格式1
1 if a > 0 else 0

b = eval(input('请输入一个数字'))     # 格式2
(0, 1)[b > 0]


演算子2.3

これは、条件式の演算子の様々な使用することができ、かつ事業者は共通しているカスケード接続することができます。

  • 算術演算子:+、 - 、*、/、//、%、**
  • 関係演算子:<、>、<=、> =、== ,! =
  • 、ではないです、ないで、中:テスト演算子
  • 論理演算子:AND、OR、NOT(原則不活性ノート)
  • ビット演算子:〜、&、|、^、 ""
  • 行列の乗算演算子:@

しかし、特別な注意が必要とされ、条件式は、あなたが代入演算子を持つことができません=


第3節で、プログラムの基本的な構造

プログラムの三つの基本的な構造があり、「任意のプログラムを達成するために、これらの三つの基本的な構造の組合せとすることができます」

  • シーケンスストラクチャ
  • 分岐構造
  • ループ構造


3.1シーケンスストラクチャ

構造が線形順序でプログラムを実行すると、順次実行する方法の順序、動作手順を以下に示します。


3.2分岐構造

知られている分岐構造、「選択的構造」前方に特定の分岐構造を実行パスの異なる動作モードを選択し、条件に応じて、判定結果が単一の分岐、ダブルブランチ、マルチブランチおよびネストされたブランチに細分化することができます。


3.2.1単一の分岐


唯一の支店if、いいえelse

  • 範囲:文ブロックは、条件式が、それはまた真呼び出されたときに実行された場合は、「真の範囲」
  • 実行ロジック:条件がTrue、実行された文のブロックに決定された場合、逆が行われていません

# 单分支结构示例
# 任意输入两个数,按从小到大排列
a = eval(input('请输入第一个数'))
b = eval(input('请输入第二个数'))
if a > b:
    a, b = b, a   # 序列解包,交换两个变量的值
print(a, b)


3.2.2デュアル支店

シングル、ダブルのブランチがありifelse

  • 範囲:真の範囲(区間であれば)、偽間隔(他の間隔)
  • 実行ロジック:Trueに判断した場合、真の間隔が行われ、それがFalse、Falseの実行部を判断された場合
  • 省略形:二重分岐構造をと略記することができ、条件elseブロック2あれば文ブロック1(類似したとの三元表現)。条件が真であるかどうかを決定する、文のブロック1を実行し、条件がFalseで、文2

# 双分支结构
# 任意输入两个数,按从小到大排列
a = eval(input('请输入第一个数'))
b = eval(input('请输入第二个数'))
if a > b:
    print(b, a)
else:
    print(a, b)

# 双分支结构简写
# 任意输入两个数,按从小到大排列
a = eval(input('请输入第一个数'))
b = eval(input('请输入第二个数'))
print(b, a) if a > b else print(a, b)


3.2.3多分岐

を複数有する多分岐の形成に二重分岐組成の複数ifelse

  • 範囲:無限の数があり、実際の間隔(インターバル場合)、偽の間隔(他の間隔)
  • 実行ロジック:多分岐がELIF枝の数に制限はありませんが、ELIFを実行し、分岐実行ELIFの終了後、決意の後ろでもないすべての分岐が実行されません
# 多分支结构
# 将成绩从百分制变换到等级制
socre = eval(input('请输入你的成绩'))
if socre > 100:
    print('成绩必须小于100分,请重新输入')
elif socre >= 90:
    print('A')
elif socre >= 80:
    print('B')
elif socre >= 70:
    print('C')
elif socre >= 60:
    print('D')
elif socre >= 0:
    print('E')
else:
    print('成绩必须大于0分,请重新输入')


3.2.4ネストされたブランチ

また、通常、形成された分岐構造の異なる複数種類のをネストすることにより、分岐構造と呼ばれるネストされたネストされたブランチ。上記に示したように、それは典型的なネストされたブランチ、一緒に入れ子になった三つの層、単分岐、二つのブランチ、多分岐の合計です。

  • 区间:可以有多个真区间(if区间),多个假区间(else区间)

  • 执行逻辑:从外到内,自上而下依次判断执行

# 将成绩从百分制变换到等级制
socre = eval(input('请输入你的成绩'))
if socre > 100 or socre < 0:
    print('输入不正确,请重新输入')
else:
    if socre >= 90:
        print('A')
    elif socre >= 80:
        print('B')
    elif socre >= 70:
        print('C')
    elif socre >= 60:
        print('D')
    else:
        print('E')

おすすめ

転載: www.cnblogs.com/1k-yang/p/12090334.html