goo blog サービス終了のお知らせ 

パーソナルブログメモリ

a = [1, 1]
for _ in "*" * 999: a += [sum(a[-2:])]
print(a)

アルゴリズムの高速化

2019-07-14 | プログラムをマスター計画2020
  以前作成したA*アルゴリズムを使った迷路作成と解法   高速化版 これを作るために改良しました。   迷路作成部分の方はどうもいまひとつ遅い。設計上の最大のサイズだと10s以上かかる。   if文でinを条件にするときlist型よりset型の方が全然速そうな記事を見つけて それなら検討していた別のアルゴリズム使えるかもと実装してみる . . . 本文を読む

プログラム作成のパターン(ウラムの螺旋をプチコンで描いてみる)

2019-07-12 | プログラムをマスター計画2020
プログラムの作成のパターンを説明してみます。   これはウラムという人が会議の最中に暇つぶしに書いたもので、 素数に何らかの規則性があるのではないかという図。   ウラムさん最初に数字を順にらせんに書いて その数字の中で素数だけ色をつけたもの。 下が39999までやってみた例です。なぜか縦横斜めに線が現れます。 <プログラムの作成手順> 着手しようとし . . . 本文を読む

ProcessingでJava学習 ポリゴンの箱をまわす(Processingだとまあ簡単)

2019-07-10 | プログラムをマスター計画2020
ブログの記事からだと2年ぶり、時が立つのは速い。 Processingでちょっとやってみたいことがあってversion 3.5.3をダウンロード 解凍してprocessing-3.5.3のフォルダーを端末で開く 端末で ./processing  Enterで起動   これだけで開発環境が完成!   かなり汎用的なプログラムも作れるはずなんんだけど . . . 本文を読む

「一日でpythonをマスターできるような記事をめざして書いてみる」に自己ツッコミ

2019-07-06 | プログラムをマスター計画2020
 以前、何故かこんなタイトルの記事を書いている。 見直してみるとおそらくその1で挫折するのではないかという内容     1日でpythonをマスターできるような記事をめざして書いてみる その1   ほー、いきなりevalとか普通使わない命令を使っています。 eval("命令")でなかの文字列をプログラムとして実行するすごいやつです。 &nbs . . . 本文を読む

Pythonの記事を追加

2019-07-05 | プログラムをマスター計画2020
数年放置していたもう一つのブログに記事を久しぶりに書いてみました。 主にコンピュータ 3つ追加してみました。 Python3 三目並べで☓の勝つ全パターンを数える(想定レベル そんなに育っていないポチ級) ブラウザーのみでPython3プログラムした動画を作成してみる。難易度は入門編(YouTubeの動画) ChromeでPython(FC2の動画) . . . 本文を読む

2020年までにプログラムをマスターさせる計画を1から見直す。

2019-07-03 | プログラムをマスター計画2020
2020年までにプログラムをマスターさせる計画を1から見直してみます。     <問題 中学3年級> 無限多重根号で答えが整数値になりそうなものと、その無限多重根号内で繰り返される数値(2から10000まで範囲)を表示してください。 (ただし根号の繰り返し計算は無限ではなく30回として、その答えが整数値との誤差が0.0001内ならその整数値を答えとみなします) &n . . . 本文を読む

複数点を結ぶ最短距離は交差しない論を唱えてみる

2019-07-02 | プログラムをマスター計画2020
誰かがすでに言っている?それともアルゴリズムの世界ではすでに常識、私自身知っていたが忘れた、かは知らない。 (かなり明快なので誰も気づかないとは思えないけど...)   複数点を結ぶ最短距離は交差しない   100個程度の座標を最短距離で結ぶアルゴリズム 全点の中の数点を選びその入れ替えを全パターン試してもっとも短いものを選択していく これを延々繰り返す。 &n . . . 本文を読む

緯度経度のCSVデータからマッピング

2019-07-01 | プログラムをマスター計画2020
最短経路問題に簡単な鬼ループで迫ってみたい   データを作るのはけっこう面倒 最初に緯度経度のCSVデータを探して、まず表示させることに   <参考資料> 万物はすべて座標値(経緯度数値)を持っている   <プログラムイメージ> CSVデータを読み込みSiroクラスへ 緯度経度のデータから緯度経度の範囲を求める 700x500の表示範囲に収ま . . . 本文を読む

pygameでA* アルゴリズム 実装

2019-06-30 | プログラムをマスター計画2020
前回 pygameでA* アルゴリズム 要件定義、基本設計   (2022 7/1 追記 実はA*ではありませんでした。A*はこんなものだなと想像で 別の似たようなアルゴリズムを開発してしまった記事になります)   動画はこちら   <プログラムの説明> 表示位置の指定 pygameの初期設定 迷路の作成部分 mz33は迷路のひと . . . 本文を読む

Python3 C++ C# Java JavaScript 全部一気にマスター(配列、文字列抽出、数値変換)

2019-06-27 | プログラムをマスター計画2020
またCodinGameの問題Practice Classic puzzle - Easy  Organic Compoundsをいろいろな言語で解いてみます。   問題 文字列の数Nが最初に渡され 以下文字列の炭素結合(たぶん高校の化学で学びます)が正しければVALID間違っていればINVALIDと答える。   各CHnのまわりに(n)があり、その上下左右 . . . 本文を読む

「要件定義の基本」の画像検索から学ぶシステム開発

2019-06-25 | プログラムをマスター計画2020
プログラムを学んで何をするかというとシステム開発が主な仕事 企業から何かを依頼され、それに対応したシステム開発をする。 プロジェクトとしてゲームの開発は経験ないですが、あまり変わらないと思います。   それらに一連に関して今までやってきた開発の話をちょこっと添えて全体像を書いてみます。   この記事にかかれている「〇〇の基本」のキーワードを画像検索して画像をみてくだ . . . 本文を読む

Python3 C++ C# Java JavaScript 全部一気にマスター

2019-06-24 | プログラムをマスター計画2020
言語は1つマスターしてしまえば同じ系列のものに流用できます。 言語特有のものであってもそれが有意義なものなら他の言語にも付随していくことも多いです。   CodinGameの最新のコンテストの参加者が主に使っている言語はPython3、C++、Java、C#、続くのはJavaScript この5つ言語で2160人の参加者の85%占めています。   そこで、Codin . . . 本文を読む