PythonとAI学習をしに、セブ島 IT×英語留学の『Kredo』さんに来ています。
AIコースはかなりスパルタで有名なコースらしいですが、毎日楽しく学んでいます。
今日は第2週1日目の記録です。
授業内容
今日の授業内容は以下のような感じです。
全てPythonのプログラミングに関する内容です。
- オブジェクト指向=Object-oriented
- カプセル化=Encapsulation
- 抽象化=abstraction
- 継承=inheritance
- ポリモーフィズム=polymorphism
オブジェクト指向は他のプログラミング言語にも通じる概念だそうです。
この辺も予習をしておけば問題なかったです。
しかし、理解するのと書けることにかなり差があるのがプログラミングですね。
いやはや、理解できても書けません(笑)
まぁ、これは経験者の方たちがみなさん口を揃えて
『時間がかかる』
と言っているので、気長にちゃんと「粘り強く考えて書いていく」というのを実践していこうと思います。
授業で解いた問題
電話料金の問題です。
問題
料金が日中と夜中で変わる
日中は6-17時とする
夜中は17-6時とする
プランは2つで、
レギュラープラン
日中の料金は0.75倍
夜中の料金は0.90倍
プレミアムプラン
日中の料金は0.90倍
夜中の料金は1.5倍
使用料金を求めるコードを書け的な問題でした。
ちなみに、解答は日中と夜中の時間にまたがって電話をすることを考慮していません。
まぁ、練習ですからOKです。
解答例
class Type:
def __init__(self, phoneType, dayIn, dayOut, nightIn, nightOut):
self.phoneType = phoneType
self.dayIn = int(dayIn)
self.dayOut = int(dayOut)
self.nightIn = int(nightIn)
self.nightOut = int(nightOut)
def day(self):
dayHours = self.dayOut –self.dayIn
dayMin = 60 * dayHours
if(self.phoneType == “Regular”):
total = dayMin * 0.75
elif(self.phoneType == “Premium”):
total = dayMin * 0.90
return total
def night(self):
nightHours = self.nightOut –self.nightIn
nightMin = 60 * nightHours
if(self.phoneType == “Regular”):
total = nightMin * 0.90
elif(self.phoneType == “Premium”):
total = nightMin * 1.50
return total
def show_result(self):
totalAmount =self.night() + self.day()
return totalAmount
def total_hours(self):
totalHours = (self.dayOut –self.dayIn) + (self.nightOut –self.nightIn)
return totalHours
phoneType = input(“Type: “)
dayIn = input(“Day-in”)
dayOut = input(“Day-out”)
nightIn = input(“Night-in”)
nightOut = input(“Night-out”)
phone = Type(phoneType, dayIn, dayOut, nightIn, nightOut)
print(“Total: {}”.format(phone.show_result()))
print(“Hours: {}”.format(phone.total_hours()))
これは時間があれば解けると思います。
まず最初に考えた方針が合っていました。
だいぶ慣れてきた感があります。
今週の授業内容はもう大丈夫だと思うので、来週のSQLとFlaskの予習を頑張るつもりです。
今日の自習
今日からFlaskとSQLの復習をしておこうと思っています。
Flaskがわかれば3週目も4週目も大丈夫とメンターの方に言われたので、どうにかなりそうです。
5月と6月は、RubyとRuby on Railsを学習する予定なので、そちらのほうが心配ですね。
まぁ、プログラミング自体にはだいぶ慣れてきたので、たぶん乗り越えられるでしょう。
PythonとRubyで好きなほうの技術力を上げて、どこかしらの企業で修行できたらと思います。
英語も大変ですが、プログラミングも学ぶことが多いですね。
大学受験の英語は一に精読、二に精読で、読むことに特化していればいいので、もちろん大変ですが、範囲を絞って勉強できます。
しかし、プログラミングは読むだけではだめで、書けないといけません。
アウトプットを求められるのが大学受験英語と違う感じがします。
もちろん、英語を使おうと思うと、アウトプットもしないといけません。
そうなると、どちらも時間を無限に食うので、いやはや、ゴールを決めないと気付いたら人生が終わっていそうです。
英語もまだまだですが、今年はプログラミングのスキルをできるだけ向上して、
『英語×プログラミング』
で仕事に繋げられたらなと思います。
Kredoの「AIコース」やIT留学について
こちらの記事に全ての記事をまとめています。
37歳からプログラミングをスタートして、転職できるのか実験中です。
英語×プログラミングの力を試してみようと思っています。
ぜひ一度見てみてくださいね(^^)/
https://xn--4gr220a2sk1qvzyi.jp/programming-at-37/
転職先を斡旋して頂ける方からのご連絡もお待ちしております(笑)