2015年11月13日金曜日

【プログラミング】Pythonの勉強 その2

プログラミングを勉強しようと思い最初の本を読み終えたところで、現時点の知識で作れそうなプログラムに挑戦することにしました。
前回は、「3の倍数と3のつく数字のときに特定のメッセージを表示するプログラム」を書いてみました。

今回はこのプログラムを改造して、別の条件を追加してみます。
具体的には「5の倍数と5のつく数字のときに別のメッセージを表示する」というものです。



プログラムの中身はこんな感じ。
    ・1から60まで数える
    ・3の倍数と3のつく数字(条件1) → 「だぴょーん!」と表示
    ・5の倍数と5のつく数字(条件2) → 「なのです!」と表示
    ・条件1と条件2の両方を満たす → 「だぴょーんなのです!」と表示

「条件1と条件2の両方を満たす」というのが、実際検討してみるといろいろなケースがありました。
    ・3と5の公倍数
    ・30台で、5で割り切れる数
    ・50台で、3で割り切れる数
    ・30台で、1の位が5になる数字
    ・50台で、1の位が3になる数字
思っていたより複雑で苦労しました。

プログラムの中身はこんな感じです。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
# coding:shift-jis

for x in range(1,61):
    if x%3 == 0 and x%5 == 0:
        print(str(x) + ' だぴょーん' + 'なのです!')
    elif 30 < x < 40 and x%5 == 0:
        print(str(x) + ' だぴょーん' + 'なのです!')
    elif 50 < x < 60 and x%3 == 0:
        print(str(x) + ' だぴょーん' + 'なのです!')
    elif x == 3 * 10 + 5 or x == 5 * 10 + 3:
        print(str(x) + ' だぴょーん' + 'なのです!')
    elif x%3 == 0 or x%10 == 3 or 30 < x < 40:
        print(str(x) + ' だぴょーん!')
    elif x%5 == 0 or x%10 == 5 or 50 < x < 60:
        print(str(x) + ' なのです!')
    else:
        print(str(x))
syntax2html

こんな感じに表示されます。



プログラミングの目標としては、とりあえずはテキストファイルやCSVを加工する作業を楽にできるようになるといったところです。

その次の目標としては、できるようになるかどうかわかりませんが、キーボードの日本語配列の分析、探索するプログラムを作ってみたいです。
今使っている日本語配列配列は「ミズナラ配列」という配列なのですが、この配列はコンピューターを使った計算からできた配列です。
同じような手法でデータを変えてやってみたら、もっといい配列ができるかもしれないなんて考えているのですが、残念ながら今の私にはとても無理です。
いつの日かできるようになるといいんですけどね。

0 件のコメント:

コメントを投稿