ホームページ >バックエンド開発 >PHPチュートリアル >PHP と Python は Project Euler の質問 1 と 2 を実装します。
最近Pythonを勉強し始めたので、Project Eulerを使って練習しました
問題1
3または5の倍数で10以下の自然数をすべて列挙すると、3、5、6、9が得られます。これらの倍数の合計は 23 です。
1000 未満の 3 または 5 の倍数の合計を求めます。
実行結果: 233168
PHP バージョン:
/** * @desc Project Euler 1 * @Author tina * @Date 2015-08-27 */ $sum = 0; for($i=0; $i<1000; $i++){ if(($i%3 == 0) || ($i%5 == 0)){ $sum += $i; } } echo $sum;python バージョン:
sum = 0 for i in range(1000): if((i%3 == 0) or (i%5 == 0)): sum += i print sum
フィボナッチ数列の新しい各項は、前の 2 つの項を加算することによって生成されます。1 と 2 から始めると、最初の 10 項は次のようになります:
1、2、3、5、8、13、21、34、55。 , 89, ...値が 400 万を超えないフィボナッチ数列の項を考慮して、偶数値の項の合計を求めます。実行結果: 4613732/** * @desc : Project Euler 2 * @Author : tina * @Date : 2015-08-27 */ $fab1 = 1; $fab2 = 1; $sum = 0; do{ $fab = $fab1+$fab2; $fab1 = $fab2; $fab2 = $fab; if($fab%2 == 0){ $sum += $fab; } }while($fab < 4000000); echo $sum;
Python バージョン:
fab1 = 1 fab2 = 1 sum = 0 while True : fab = fab1+fab2 fab1 = fab2 fab2 = fab if(fab%2 == 0): sum += fab if(fab > 4000000) : break print sum
実際、それは一般的に同じように感じます...しかし、いくつかの Python 入門を読んだ後、リスト、辞書、およびセットのデータ型が実際に複素数を処理できることが非常に強力であると感じます。 ! !楽しみにしています! (追記:Pythonを発明した偉人は数学出身だそうです、それも不思議ではありません、ルオさん!)