2017-05-01から1ヶ月間の記事一覧

1Ωの抵抗10個で黄金比の値に近づける(Ruby)

問題: 1Ω の抵抗 10個を使い、合成抵抗が黄金比 1.6180339887..Ωにもっとも近づく場合の値を、少数第10位まで求めよ。 aΩ と bΩ の抵抗をつなげる場合、直列つなぎにすれば合成抵抗はたんに a + b Ω になりますが、並列つなぎの場合はそれらの逆数の和の逆…

ナップサック問題(Ruby)

次のような問題があるとします。 学校でクラブ活動をするのに、選んだクラブの人数の合計が 150人以下になるようにするとします。クラブの想定人数とそれが使う敷地面積は次のように与えられています。 クラブを幾つか適当に選ぶとき、必要な敷地面積の総和…

右折禁止(アルゴリズム・パズル)

アルゴリズム・パズルを Ruby で解いてみました。 class TurnLeft class Position def initialize(x, y) @x, @y = x, y end attr_accessor :x, :y def +(dir) Position.new(@x + dir[0], @y + dir[1]) end end class Field def initialize @yoko = Array.new…

GTK+ で落書き 8(Ruby)

Gem 'oekaki' で落書きです。 oekaki | RubyGems.org | your community gem host GTK+でお絵かきしてみた(Ruby) - Camera Obscura 再帰的な tree を描いてみました。画像では動きはないですが、じつはアニメーションです。 require 'oekaki' Width, Height…

いわゆる「スライドパズル(15パズル)」もどきを Ruby で解いてみる

スライドパズルっていうおもちゃがありますよね。4×4 のマス目に空白がひとつあって(残りはコマ)、コマは空白にスライドさせて動かすしかなく、それを特定のパターンに揃えるというものです。ここではルールを少し改変して、特定のマスを別の特定のマスに…

Ubuntu 17.04 でインターネット接続できない

かなり深刻なバグだと思います。新規インストール、アップグレードの双方で起こるようです。また、派生のフレーバーすべてでも起きるようです(Ubuntu Budgie でも発生しました)。発生した PC は ThinkPad T410i です。特徴は一見ネット接続ができているよ…

RubyPico でクラスのリファレンスを便利に

サンプルコードの class_help.rb を少し変えただけですが、だいぶ使いやすくなったと思います。まずクラスの一覧が出るので、調べたいクラスをタッチすれば詳細が表示されます。[戻る] でループします。 コードは Gist に。 Created by RubyPico at Tue May …

RubyPico でファイルを Gist にアップロードする

GitHub で API用の token を取得して下さい(参照)。それを以下のコードの「***」のところに入れます。あとは実行するだけ。コードの保存用にも使えますね。upload_to_gist.rb def main fname = Popup.input("ファイル名を入力して下さい") return unless fna…

mruby を Linux Mint(Ubuntu)で使ってみる

Linux Mint 18 で確認しました。まずはここの Download から mruby をダウンロードします。自分は「mruby Stable版 v1.2.0 Linux/Mac版」を選択しました。解凍して適当な場所に置き、ディレクトリに入って $ make を実行。gcc と CRuby と Bison が必要です…

PubyPico でじゃんけんゲーム

以前作った Ruby でのオブジェクト指向じゃんけんゲームを、iOS アプリの RubyPico 向けに書き直しました。操作性を iPad 用に変えただけで、あとはほぼもとのままです。iPad で Ruby スクリプト(正確には mruby)が動くとはじつに楽しいですね。RubyPico、…