Mae向きなブログ

Mae向きな日記のブログ版。ようやくこちらに移行してきました。

Ruby

nを法としたベキ乗

練習問題7.2 問2 アルゴリズム7.2を用いてを計算しなさい。 解答 4 126 0 16 63 1 16 2 31 1 32 4 15 1 1 16 7 1 16 2 3 1 32 4 1 1 1 16 0 0 問4 数式処理システムを用いて次の値を計算しなさい。 解答 応用代数学入門―暗号・符号・バーコードの仕組みが分…

中国剰余定理

練習問題6.2 問2 連立合同式 に、中国剰余定理アルゴリズムを用いて手計算で解きなさい。 解答 よって、 問4 連立合同式 を、数理処理システムを用いて解きなさい。 解答 応用代数学入門―暗号・符号・バーコードの仕組みが分かる作者: ダレル・W.ハーディ,キ…

ブロック暗号

練習問題4.4 問2 ブロック暗号(以下)を用いて暗号文"VX XC ZD HG WC RJ AR"が生成されたと仮定します。このメッセージを復号しなさい。 解答 よって 平文は、doubleohsevenx(007)だったんですね。 応用代数学入門―暗号・符号・バーコードの仕組みが分かる作…

拡張されたユークリッドの互除法

練習問題3.3 問2 と、整数とでとなるものを、後退代入を用いて求めなさい。 解答 とする。このとき、 となるので であり、よって となる。 問4 数式処理システムを用いることにより、整数で となるものを求めなさい。 解答 よって、 となる。 応用代数学入門…

平成28年度 大学入試センター試験 情報関係基礎

平成28年度大学入試センター試験の情報関係基礎を解いてみました。第3問は実際に作ってみるといいと思うのですが、掲載されている指示書(擬似言語)では配列の添字が1から始まっているので注意が必要です。以下では、添字0はダミーとして扱っています。 受験…

Rubyのしくみ -Ruby Under a Microscope-

世の中にはたくさんのプログラミング言語が存在しています。学生時代に初めてPascalに触れてから今まで、何種類かの言語を触ってはあきらめを繰り返してきましたが、自分にとってRubyはなぜか学習し続けたい言語になっています。 本書は、Rubyのしくみを知り…

ウィンターカップ2015 ベスト16と平均身長

ウインターカップ2015も大会4日目。今日で男子がベスト8、女子がベスト4まで出揃う予定のようです。開幕前に出場校を平均身長で並べ替えてみたのですが、ベスト16に入ったチームが分かりやすいように色付けてみました。平均身長で勝ち負けが決まるわけではな…

ウィンターカップ2015出場選手を高い身長で並べ替え

昨日は、ウィンターカップ2015出場校を平均身長で並べ替えましたが、今日は出場選手の中で身長の高い選手をピックアップするスクリプトを作ってみました。 男子は190cm以上の選手、女子は180cm以上の選手です。 winter_cup2015_2.rb 男子 身長(cm) 氏名 210 …

ウィンターカップ2015出場校を平均身長で並べ替え

年末年始は、大きなスポーツイベントが目白押しですが、子供がバスケットボールに熱中しているので、特にウィンターカップは注目しています。そのウィンターカップ2015開幕まであと4日となってきました。「出場校 | JX-ENEOSウインターカップ2015 平成27年度…

NBA選手の年俸視覚化

NBAについて調べていたら、面白いサイトに行き着きました。 Ruby: Visualizing NBA Player Salaries 2013 - 2018 データを視覚化するというのは、データを理解する上で有効な手段だと思います。自分でも同じようなグラフを作ってみました。 nba.rb

なるほどUnixプロセス ― Rubyで学ぶUnixの基礎

はじめてUNIXに触ったのは、もう25年位前(大学生時代)になります。高校を卒業するまでコンピュータというものに触ったことがなかったので、「コンピュータはUNIXで動くもの」、「コンピュータを使う = UNIXを使う」という感覚でした。大学卒業後は仕事でWin…

最長共通部分列問題 (Longest Common Subsequence)

最初、最長共通部分列問題と聞いたときは、部分文字列の最長を求める問題だと思ったのですが、そうではないんですね。参考サイトを見ているうちに、なんとか題意とこの問題の意義のようなものが見えるようになってきました。 理解を深めるために、最長共通部…

行列を使ってフィボナッチ数列

これまで何度となくフィボナッチ数列については話題にしてきましたが、 「フィボナッチ数 - Wikipedia」によると、フィボナッチ数列の漸化式は次のように行列表現できるそうです。 ゆえに ということで、行列を用いてフィボナッチ数列を計算してみることにし…

数学ガールの秘密ノート/微分を追いかけて

今回は微分がテーマでした。位置、速度、加速度、パスカルの三角形、二項定理、複利計算などを通して、楽しく微分について学習(復習)できました。まだ微分を習っていない中高生や微分に苦手意識を持っている方、微分を学び直したい方などにお薦めだと思いま…

最長重複文字列問題

『珠玉のプログラミング―本質を見抜いたアルゴリズムとデータ構造』の15章2節で紹介されている「最長重複文字列問題」をRubyを使って解いてみました。 「最長重複文字列問題」とは、文字列の中からもっとも長い重複する文字列を見つけるという問題で、 "miss…

myipcalcコマンドの作成

「ネットワーク管理の基本Tips:「192.168.0.100/24」のネットワークアドレスを即答するには? ipcalcコマンド - @IT 」で初めてipcalcコマンドを知りました。最近、ネットワーク業務に疎遠になっているので、復習を兼ねて自作コマンドを作ってみました。 m…

つくって学ぶプログラミング言語 RubyによるScheme処理系の実装

「ハッカーになろう (How To Become A Hacker)」の中で、 LISP は、それをモノにしたときのすばらしい悟り体験のために勉強しましょう。この体験は、その後の人生でよりよいプログラマーとなる手助けとなるはずです。たとえ、実際には LISP そのものをあま…

Interactive Programming in Cの簡易化

「Interactive Programming in C « null program」では、実行中のプログラムを止めることなく、読み込んだ共有ライブラリに変更があったとき、ロードし直す方法が、ライフゲームを題材にして説明してあります。実際、やってみましたが、ライフゲームの実行中…

2014年、読んだ本のリスト

読書した本は、その都度、このHatena::Diaryにまとめるようにしているのですが、2014年も残り少なくなり、果たして自分が1年間でどれくらい本を読んだのか調べてみたくなりました。実は昨日の記事(ISBN-10とISBN-13の相互変換)は、これを調べるために必要だ…

ISBN-10とISBN-13の相互変換

コマンドライン上で、手軽にISBNから本の名前を調べたいというところから始まったのですが、「ISBN - Wikipedia」を見ると、ISBN-13とISBN-10は相互変換できるんですね。簡単そうなので、実際、やってみました。 ISBN-13 => ISBN-10への変換例 9784480064707…

Googleカレンダーに予定をRubyで登録する

Googleカレンダー、非常に便利で、仕事やプライベートの予定を入力して、自宅のMac、職場のWindows PC、iPhone、iPadで便利に活用しています。 いつもは仕事の予定を1つずつWebから入力していたのですが、google-api-clientというgemを使うとRubyから登録で…

mrubyのインストール

せっかくのRaspberry Piが埃をかぶっているので、久しぶりにssh経由でログインして、mrubyをインストールしてみました。 Arch Linuxを使っているので、参考サイトのapt-getではなく、pacmanで依存するパッケージをインストールしていきます。 手順 $ sudo pa…

マンガでわかる統計学

マンガで統計学の勉強ができるなんてすばらしいと思います。最初から難しい本を読むのとでは理解力に差が出るのではないでしょうか。 第6章の「2変数の関連を調べよう!」で単相関係数の話が出てきます。早速,何か調べてみたいと思ったので, 「宅習ノート…

プロのためのLinuxシステム・10年効く技術

最近、Linuxを使うことは減ってきたのですが、 どんどん新しい技術が生まれるこの世界で10年効く技術とは何だろうと思ったこと、 そしてそれを身に付けてみたいと思い 読んでみました。 読みながら試してみたことを以下にまとめておきます。 bigram.plをRuby…

動画ファイル名の変更

おととい、昨日にハンディカムで撮影した動画をいつものようにPCに取り込んだつもりが、なぜか以下のようにファイル名が3桁の連番で保存されてしまいました。 これだと、ファイル名が重なる可能性大なので、日時をベースとしたファイル名に変更しました。Rub…

組込Ruby「mruby」のすべて

いつかmrubyに取り組むときのために読んでみました。まつもとゆきひろ直伝 組込Ruby「mruby」のすべて 総集編作者: まつもとゆきひろ出版社/メーカー: 日経BP社発売日: 2014/01/31メディア: Kindle版この商品を含むブログを見る

Enumerable#lazyメソッドを試してみました

「yieldのお勉強 Lv.1」解説(Ruby編) #CodeIQ - 名古屋で数学するプログラマ(仮) を読みながら復習をしていたのですが、Ruby 2.0で導入されたEnumerable#lazyを試してみたくなったので少し脱線してみました。 fibonacci.rb # -*- coding: utf-8 -*- class …

数学ガールの秘密ノート/丸い三角関数

「数学ガールの秘密ノート」シリーズの3作目です。数学というと、なんとなく堅苦しいイメージがあったりしますが、本書は、全くその堅苦しさを感じさせません。 数学を楽しむ感覚、知らなかったことを知る喜び、学ぶことの面白さを実感できる本だと思います…

Ruby on Rails チュートリアル

『Ruby on Rails チュートリアル 実例を使ってRailsを学ぼう』を実際にやってみました。 このチュートリアルはよくできた教材だと思います。第1章からコツコツと取り組んでいくことで、まるでDeAGOSTINIのように、twitterに似たWebアプリケーションを作成す…

順列を求める

『世界で闘うプログラミング力を鍛える150問 トップIT企業のプログラマになるための本』を少しずつ解いています。第9章の問題9.5は、 ある文字列の、すべての順列を求めるメソッドを書いてください。 という問題です。 Project Eulerでも順列を扱う問題には…