プログラミング

Google DocsからOutputzに投げる(ちょっと改良)

前のエントリで書いた,Google DocsからOutputzするスクリプトをちょっと修正しました. 保存ボタンを押した時にもOutputz行きになるようになりました.outputz4googledocs.user.jsからダウンロードできます. Google Docsの保存イベントはどうやったら取れ…

vimからOutputzに投げる

ブラウザから投稿した文字数をカウントできるサービスOutputzがAPIを出したってんで(API - Outputz)、Emacsから文字数を投稿できるminor-modeを書いてみました。保存時に文字数が増えていたら、増加分だけOutputzにポストします。 EmacsからOutputzに文字数…

画像処理屋の実力を発揮する時が来た

もろ領域分割、ラべリングじゃないか。あとでやる。 http://ja.doukaku.org/219/

C++/CLIでドラッグ&ドロップ

ドラッグ&ドロップしたファイル名を取得したかったので調べてメモ. if(e ->Data ->GetDataPresent(DataFormats::FileDrop)){ // ファイル名の一覧を取得 array<String^>^ files =static_cast<array<String^>^>(e->Data->GetData(DataFormats::FileDrop, false))); // files にファ</array<string^></string^>…

C++/CLIでコマンドライン引数の取得

コマンドライン引数(実行ファイルにドラッグ&ドロップしたファイル名)の取得方法が分からなかったので調べてメモ.MFCアプリケーションならば, CString args = GetCommandLine(); でいいんですが,C++/CLIの場合は, array<String^>^ args=System::Environment::G</string^>…

Linux,CUI使いの私がWindowsでGUIプログラミングしてみた

とりあえずVisual Studio Express Edition,OpenCVをインストール.OpenCVは画像処理に関する便利なライブラリで,Linuxでもよく使う.奈良先端大の千原研のWikiが参考になる.OpenCVでもある程度GUIは使えるんですが,マルチプラットフォームなやつでしょぼ…

C言語の新しいコメントのしかた

C言語をいじっていて,やばいのを思いついた. 定数や,リテラル,変数は単体で式となる.式は「,」でつなげられる.これをもとに,下のソースコードが生まれた. #include <stdio.h> int main(){ int a,b; 1,2,3,4,5,6,7,8,9,10; "こめんとです。"; a,b,"は、整数型</stdio.h>…

逆ポーランド記法計算機を作ってみた

入力 逆ポーランド記法で書いた四則演算 出力 計算結果 以下にコードを示す #!/usr/bin/ruby # 1行の逆ポーランド記法を突っ込むと # 計算して結果を出力するプログラム # 計算は、四則演算 print "input: " queue = [] stack = [] queue = gets.split(" ").…

VistaでAptanaStudioを使うとき

Vistaでは,一般ユーザにProgram FilesフォルダやAptanaフォルダへの書き込みor変更権限が与えられていない.この権限がないと,Aptanaの機能でアップデートなどを実行しようとしたときに,エラーになってしまう. そこで,権限を与える.まず,Cドライブ中…

GNUなプログラムを

GNUアプリケーション的なプログラムを作りたい.ここでは, ソースコードを取ってきて 展開して ./configure して make して make install する みたいなやつのことを言ってる.これを実現するには, automake と autoconf が必要らしい.ということで,いろ…

作りたい物

はてなダイアリーで,[mixi]タグを付けたエントリだけmixiに投稿するスクリプト. 1日ごとにまとめて投稿するのがいい.以下,処理の流れ 1. はてなダイアリーのからRSSを取得して,エントリのうち今日の分をチェック. 2. 今日のエントリに[mixi]タグがな…

latexのコンパイルが通らないとき

** ERROR ** Could not find encoding file "H" と出るとき.フォントが見つけられないらしい. そんなときは,まったり東京+で書いてあるように, % ln -s /usr/share/ghostscript/8.50/Resource/ /usr/local/teTeX/share/texmf/dvipdfm/ % mktexlsr してや…

できた

記事 http://d.hatena.ne.jp/yasutomo57jp/20080928/1222607683 で書いた「はてなダイアリーで[mixi]タグを付けた記事だけmixiへ投稿」スクリプトができた. 早速使ってみる.

PukiWikiのプラグインを作ってみる

結構簡単.文字列を返す関数を1つ作ればOK. まず,#hoge の形で使いたい場合は, function plugin_hoge_convert() &hoge();の形で使いたい場合は, function plugin_hoge_inline() ?cmd=hogeの形で使いたい場合は, function plugin_hoge_action() という関…

InsertionSort(挿入ソート:基本挿入法)(Ruby編)

InsertionSort(挿入ソート:基本挿入法)のRubyによる実装 def insertionsort(array) ret = [] array.each do | val | inspoint = ret.size ret.each_with_index do | rval, index | if val < rval inspoint=index break end end ret.insert(inspoint,val) …

InsertionSort(挿入ソート:基本挿入法)(C言語編)

InsertionSort(挿入ソート:基本挿入法)のC言語による実装 #include "insertion.h" void insertionsort(int *array,int size){ int i,j,k; int temp; // 挿入対象ごとに繰り返し for(i=0;i

InsertionSort(挿入ソート:基本挿入法)

ソート済みの列に対し,未整列データをひとつずつ挿入していく. 配列は挿入が苦手なため,リスト構造などを用いて実現することが多い. 5 4 3 6 2が入力された場合,先頭の5がソート済み列であるとして, 4 5 3 6 2 # 4を5の前へ挿入,4 5 がソート済み列 3…

BubbleSort(バブルソート:基本交換法)(C言語編)

BubbleSort(バブルソート:基本交換法)のC言語による実装. /** * @file bubble.c * @author yasutomo57jp * */ #include "mylib.h" /** * @brief バブルソート * * @param array ソート対象の配列 * @param size 配列の大きさ */ void bubblesort(int *ar…

BubbleSort(バブルソート:基本交換法)(Ruby編)

BubbleSort(バブルソート:基本交換法)のRubyによる実装. def bubblesort(array) for i in 0...array.length-1 for j in 0...array.length-1-i array[j+1],array[j]=array[j],array[j+1] if array[j] > array[j+1] end end return array end Rubyは多値代…

Sortingのための準備(Ruby編)の修正

ここで書いたコードを次のように修正. test.rbのsortのインタフェースを若干修正 require "mylib.rb" # 配列に読み込む array=load_array # ここでソート # array=bubblesort(array) # 配列を出力 print_array(array)

BubbleSort(バブルソート:基本交換法)

隣り合うものの大小を比較して,交換する. 5 4 3 6 2が入力された場合, 4 5 3 6 2 4 3 5 6 2 4 3 5 6 2 4 3 5 2 6 n(=4)回の処理でこうなる.これで,最大の要素が最後尾にくる. 次に,同じことを,最後から2番目の要素までに対して適用する. 3 4 5 2 6 …

BubbleSort(バブルソート:基本交換法)(C++編)

BubbleSort(バブルソート:基本交換法)のC言語による実装. まずmylib.cppに次を追加. /** * @brief 値を交換する * * @param i 入力値1 * @param j 入力値2 */ void swap(int &i,int &j){ int temp=i; i=j; j=temp; } 次にバブルソート本体. /** * @fil…

Sortingのための準備(Ruby編)

調子に乗ってRubyでも一つ前のエントリと同じのをやってみた. def load_array() array=[] while str=gets array += str.split(" ") end return array end def print_array(array) array.each_with_index do |x,index| printf("%8d",x) print "\n" if index …

Sortingのための準備(C言語編)

まずはC言語で.標準入力から可変個のデータを読み込む関数と,それを出力する関数を作ってみた.mylib.cとして保存しておく. #include "mylib.h" /** * @brief 配列にデータを標準入力から読み込む * * @param size 配列の大きさ * * @return 配列 */ int …

Sortingを鍛えるぞ〜

というわけで,昔作ったWebページを見返す.Webのアカウント名がhimaって・・・.相当暇人だったんだろうか.しかもデザインが・・・(笑) http://www5e.biglobe.ne.jp/~hima/sorting/ しかもスペルミスしてる・・・Merge Sortが〜. この際,いろんな言語でいろんな…

Sortingのための準備(C++編)

まだやってるよこの人・・・と言うわけで、C++でも書いてみた. まずはヘッダファイルmylib.hから. /** * @file mylib.h * @autor yasutomo57jp * */ #include <vector> #include <string> #include <iostream> #include <iomanip> #include <cstdlib> std::vector<int> load_array(); void print_array(const</int></cstdlib></iomanip></iostream></string></vector>…

まだ続くプログラミング

おとなり日記すとりんぐらいぶらりを見てて気づいたことを書いてみる. char cppstr::operator [](int i) こうだと, cppstr str="abc"; char c=str[2]; はできるけど cppstr str="abc"; str[2]='d'; ができなくて, char& cppstr::operator [](int i) こう…

さらにJavaScript

JavaScriptはすごいな〜. とりあえず,初JavaScriptのコードを晒してみる.(ホントは10年ほど前にちょっとだけかじったことがあるけど.) ほとんど無意味なコードですが. #!/usr/bin/js print("hello world!"); function Test(x,y){ this.x=x; this.y=y;…

Fedora 9 で JavaScript

スクリプト言語としてJavaScriptを使いたかったので,とりあえずインタプリタを入れようと思い,Mozilla Foundationが作っているSpiderMonkeyをインストール. yum -y install spidermonkey してみたけどNo package. で,ダメ元で yum -y install js してみ…

C++/CLIに触れてみる

C++/CLIはC++とは全然違う. とりあえずハンドルの使い方. クラス宣言の時にrefを付けて ref class Hoge{ 中略 }; としたクラスは,ガベージコレクションなどが有効になる. で,ハンドルというのを使って Hoge^ h = gcnew Hoge(); という感じにインスタン…