python初心者が素因数分解機を作る

今回はpython素因数分解をしてくれるコードを書いてみました。

全体はこんな感じ。

 

from math import floor

#素因数分解する数を入力
fact_num = int(input('素因数分解する数を入力'))

#割り続ける処理
def divide(dividend, divisor):
    global list_fact
    while True:
        quotient1 = dividend / divisor
        quotient2 = floor(quotient1)
        if quotient1 == quotient2:
            list_fact.append(divisor)
            dividend = dividend / divisor
        else:
            return(dividend)

#素因数分解する数が1の場合はリストに1を入れる
if fact_num == 1:
    list_fact = [1]
else:
    list_fact = []

#2の倍数ならば2で割り続ける
fact_num = divide(fact_num, 2)

#3の倍数ならば3で割り続ける
fact_num = divide(fact_num, 3)

x = 1

#4以降の素数で割り続ける(6の倍数±1の数で割り続ける)
while fact_num != 1:
    fact_num = divide(fact_num, 6 * x - 1)
    fact_num = divide(fact_num, 6 * x + 1)
    x += 1

print(list_fact)

 

現在絶賛プログラミング勉強中ですが、こんなものを作れるようになると成長を実感できますね。いや満足してはいけません。精進して参ります。ちなみに私と同じく勉強中って人は参考にしないほうがいいと思います。じゃあ何の為にブログに載せてるのかね。

 

 

仕組みとしては、input関数で素因数分解したい値を入力し、素数で割り続けていき、素因数をリストに入れていくというのが大まかな流れです。

 

実際には素数で割り続けている訳ではなく、2と3で割り続けた後に6の倍数±1の値で割り続けています。実は2と3を除いて素数は6の倍数の前後にしかありません。知らなかったって人は調べてみてね。

 

ただし6の倍数の前後の数が全て素数であるというわけではないので(例えば25)、このプログラムでは25などの素数でない値(合成数)でも割っていることになります。しかし、このプログラムでは「割られる数に割る数が含まれている時、割る数(素因数)をリストに入れる」という処理をしており、また2で割ったあと3で割る、5で割る、7で割る...といった風に小さい数から順に割っています。つまり、25などの合成数で割ったとしても、割られる数には含まれていない為その数がリストに含まれることはありません。(たぶん)

 

そして素因数分解した結果をリストとして表示しています。

 

 

どうですかねコレ。自分自身全くの初心者ですのでこれが良いコードなのかどうかもさっぱり分かりません。なんか出来ちゃった〜って感じ。有識者の方ぜひともご教授願います。

 

そして余談なんですけど、コレ作った後に知ったんですが、Sympyとかいう便利なパッケージがあるらしい。prime(n)でn番目の素数を返してくれます。なんやそれ。こんな6の倍数がどうたらこうたらせんで良かったやん。

 

ということでまた一つ賢くなれました。

ピクセルリマスターFF5をプレイpart1

今回はピクセルリマスター版FF5についてです。

 

個人的にFF5ファイナルファンタジーで一番の名作だと思ってます。(SFC版はプレイ済み、スマホ版も少し)

FF5ってファイナルファンタジーの中で一番ファンタジーしてません?あの冒険してる感じがめっちゃ好き。初めてプレイしたFFというのもあって、とても思い入れがあります。

ということで、今回はそのピクセルリマスター版をプレイしてきました。やったことはあるんだけど、細かいストーリーとかは忘れてるからほぼ初見プレイだね。(?)

タイトル画面。スーファミにみえてちゃんとピクリマ版。

何気にタイトルからSFC仕様で良き。バリバリの平成中期生まれやけど懐かしさを感じますねー。エモいって言うんかな?よくわからんけど。

そしてオープニング。

風の様子がおかしいため、レナのお父さん、タイクーン王が風のクリスタルの様子を見に行くところから始まります。お父さんは飛竜にのってクリスタルの所へ。やがて風が完全に止まり、クリスタルは粉々に。

場面は変わり、旅の途中で休んでいた主人公バッツの近くに隕石が落下。ガラフじいちゃんの乗ってきた隕石だよね。バッツは落下した隕石の様子を見に行きます。オープニングはこんな感じかな。

 

いよいよ冒険スタート!

 

MODをいれて文字はドット仕様にしてあります。雰囲気でていいね。

ワールドマップは見た目SFC版とほとんど変わりません。右上にマップがあるくらい?

そして隕石のもとへゴー。

 

 

ボコ可愛いなー。LINEのアイコンチョコボにしてるくらいには好き。

先に進むとレナがモンスターに襲われています。

そして初戦闘。

 

 

やっぱFFといえばATBやんなー。最初に考えた人は天才やと思う。最新作もATBでいいのに。

戦闘は難なくこなし、レナを助け、記憶喪失したガラフを発見。

 

 

お二人は風の神殿に向かうようです。バッツくんとはここでお別れ。ちなみにこのおじいちゃんはちゃんとすごい人です。いずれストーリーで明かされたはず。

ワールドマップに戻り、今度は北の方へ。

ここでバッツはやっぱり二人が心配だと言い、ボコと共に助けに向かいます。カッコいいね〜。俺もこんな男になりてーぜ。

ここで隕石の影響で地響きが起こる。

 

 

ボコがんばれー。

そして倒れていた二人を救出。

 

 

バッツも共に風の神殿へ向かうことを決めます。世界を旅して見て回れ、というおやじの遺言が理由らしい。ちなみにこのおやじも重要人物。

そしてパーティは3人に。

 

 

また北の方へ向かい、今度は洞窟へ。

 

 

ダンジョン内でもマップが見れるらしい。ちょーっと味気ない気もするけど、これで結構楽に探索できるかも。便利だね〜。

ここで気づいたけど、BackSpace押しながらダッシュできる。(コントローラーやと多分B)わざわざシーフのアビリティつけんでもよくなった。便利だね〜(二回目)

 

 

戦闘しつつ...

 

 

海賊のアジトに到着。今回はこの辺にしようかな。

「ちゅうだん」って機能があるからセーブポイントがなくてもやめられます。便利だね〜(三回目)

 

久々にFF5やったけど、やっぱり王道のRPGって感じで面白い。早くジョブチェンジできるようにならんかな〜

ただの呪術廻戦の個人的感想

記念すべき一回目のネタは、、、呪術廻戦!!!

ゲームオタクを謳っておきながらマンガについて書きます。しゃーないハマっとんやから。

一応ネタバレ注意。

 

 

 

 

 

 

 

 

 

 

 

いやー最近はマジで面白い。恵が宿儺に乗っ取られたわけやけど、宿儺が恵を気に入っとる理由って器として都合がいいからやったんや。てっきり純粋に恵ちゃんが好きなだけやと。

死滅回遊編で一番好きな戦闘といえばやっぱ乙骨の仙台編!!そもそも乙骨というキャラ自体が好きすぎる。0巻の時の1年乙骨くんも好きやけど、自分は2年乙骨さんの方が好きかなー。

 

 

この暗ーい雰囲気がたまらん!!ダークヒーローって感じ?厨二心にブッ刺さるよねー。もっともダークヒーローと呼ぶには性格が優しすぎる。

 

仙台編は見どころが多すぎるんだよねー。

 

領 域 展 開 ! !

 

仙台編の三人同時領域展開はマジで熱かった!!結局Gに邪魔されたけど。流石の生命力っすねGさん。

どうせなら領域展開見たかったなー。乙骨の領域展開ってどんなんやろ?リカちゃん無限増植!みたいな。Gを想起させるから嫌やな。

 

最新話は仙台で姉弟喧嘩してるからもしかするとまた乙骨が見れるかも。今度こそ領域展開してほしい!

 

ほんまにこれからの展開が楽しみすぎる!個人的には釘崎と九十九は死んでて欲しくないなーって思う。九十九さん特級っすよ?あんなので退場はあんまりですよ芥見先生。

 

噂によるとあと一年で完結するとかしないとか。ほんまに?まだ五条先生でてきてないぞ?

呪術終わったらマジで見るもんないなー。ワンピースももうすぐ終わっちゃうらしいし。チェンソーマンくらいかなー。何かおすすめのマンガあったら誰か教えて欲しいです。ダークファンタジーとか好きです。

 

 

今回はこれにて終了。次はRPGについて書こうかなー。見てくださる人がいることを願って。

 

 

ゲームオタクの初投稿

はじめまして、きなこです。

 

春から大学生ということで、興味本位でブログを始めてみました。

ゲーム大好き人間だから、主にゲームのことを書いていこうかな?

RPG好きやけど、周りにはほとんどRPG好きな人がいない。特にFF。だからブログを通してRPG好きと触れ合えたらいいなーと思います。よろしくね。