2021-06-03

入力が7の自乗 つまり49 である場合に1 7である場合に0 それ以外の数字である場合-1を表示するプログラムを作れ

#!/usr/bin/python
i = input('#')
if i==7*7:
    print 1
elif i==0:
    print 0
else:
    print -1

https://github.com/kokorohamoe/OpenProfile/blob/master/700_sample/python.2/input.py

簡単には こうなんだけど

じゃぁ なにがいじわるって

文字列がきたら?

いきなり改行コードだったら?

全角で49だったらなどなど

想定外の処理というのが追加になる

 

言い方を変えれば 正解のときパターンは1つしかない

しかし、異常な入力をきちんと処理できるか?というパターンは無数にある

これがプログラムの難しさ

 

最低限落ちないから始まって49ではなく49って入力されても 間違っているとはいいずらいよなぁ

  • 次にめんどくさいのが if i==7*7: この判定文 実はインタプリタなどだと 正直にCPUを使って7*7と計算する場合が多い 49とプログラマーが書けば無駄なリソースを食わないのにで...

  • ビジネス的には意味がない重箱の隅をほじくるために株主の金をプログラマーに渡す理由がない

    • まさに無料のランチはない問題だが なけりゃいわんだろw

    • 端的に言えば レジのプログラムで、贋金があっても、処理しちゃいますー いいわけねーだろ エラーだせ というのがあり 現実問題、どんだけエラー処理が入っているかというのが高...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん