ぷらこのきろく

メモとかテストとか備忘録とか

飴ちゃん分配問題

某所で問題出されたので解いてみた。 効率とか出力形式とかはきにしなくていい、というので、まずは思いついたまま 「M個の飴を余りがないようにN人の参加者に分配する。 このとき、飴を1つも貰わない参加者が居てもいい。 参加者名のリストと M, N が与えら…

先輩風を吹かせてみる

先輩風を検知すると風車が回るようなおもちゃがあるとか。 ちょっとそのおもちゃを回してみる。僕が仕事してて、初めて後輩と言える後輩が入った。 彼らへのメッセージ。 知識は仕入れ続けろ たとえば今日一日筋トレをしたとする。明日になって何かが変わる…

C言語ポインタの初級者用課題

あっちの方はちょっと休憩。某所で、プログラムとC言語を勉強し始めた方がおられて、すごくがんばっておられる。 僕も負けてはいられないんだけど、その方向けにちょっとした課題のプレゼント。 その1:値を入れ替える関数を作ってみる こんなプログラム。 #…

ASOOVU USBで遊んでみる(2-1)

その2-1:割り込みを使おうとして失敗する タイマ機能というものがあるらしい。時間をカウントして一定時間経ったら教えてくれたり時間を計ったりできるらしい。 その機能で、時間がたったら割り込みがかかって教えてくれるものがあるっぽい。 というわけで…

ASOOVU USBで遊んでみる(4)

その(4) :コード書いてコンパイル・書き込み・実行 コード確認 コードはこれだけ とりあえずメモ 9行目 ヘッダファイルインクルード。こないだの日記でコンフィグレーションビットの設定を出力したコピーペースト。中でxc.hをインクルードしている。 14~15…

ASOOVU USBで遊んでみる(3)

その(3):データシートを見る とりあえず今回は、LEDを光らせたり消したりすることを考える。 ポートの確認 ASOOVU USBのマニュアルの裏側に回路図が書いてある。(サイトからダウンロードもできる) で、LEDの部分を見てみる。 LED(青)は25番ポートとつながっ…

ASOOVU USBで遊んでみる(2)

その(2) :Configuration bitの設定 よくわからないけど、機械の設定っぽいことをするらしい。 本当はデータシートとか見ないといけないけど、そのうち詳しくなってみたい。とりあえず今回は、マニュアルのサイト、あるいは書き込みソフトをダウンロードした…

ASOOVU USBで遊んでみる(1)

その(1) :MPLAB X IDE プロジェクト作成 MPLAB X IDEを起動する。 File→New Project Microchip EmbeddedからStandalone Projectを選択してNext 今回使うICはPIC18F2550というものらしい。(マニュアルに書いてある) というわけで、Advanced 8-bit MXUs (PIC1…

ASOOVU USBで遊んでみる(0)

その(0) :準備編 数か月前に買ったASOOVU USBというものをせっかくだからちょっとだけ起動してみようかと思ってやってみた。 ASOOVUシリーズ | Bit Trade One, LTDまず、マニュアルに書いてあるサイトから書き込みソフトをダウンロードした・・・ のだが、…

算数の問題

ちゃんと書ける日記がここしかないのでここで。 せっかくだからてふとか使ってみよう。ツイッターみてたらこんな問題が流れてきた。 https://twitter.com/nekonyannyan821/status/915572712596168704で、仕事帰りの電車の中で解こうとがんばってた。。てなこ…

備忘録:Java9いれてeclipse使えるようにするまで(4)

前回までで目的は達した。今回はもはやおまけ。 その(4):Hello world書いてみる。 世の中開発言語とか環境とか与えられると、とりあえずやりたくなるのがHello world *1 プロジェクトを作る File→New→Java Project (画像は前回のつかいまわし) Project名に…

備忘録:Java9いれてeclipse使えるようにするまで(3)

前回の続き その(3):eclipse設定 前回の設定のままではeclipseが動かなかった。https://wiki.eclipse.org/Java9 僕はここを参考にした。英語で書いてあるのに僕は英語読むの苦手だけど とりあえずかいつまんで読んでみたところ Java9いれろ eclipse設定ファ…

備忘録:Java9いれてeclipse使えるようにするまで(2)

前回の続き その(2):eclipseインストール eclipseインストーラのダウンロード 次はここから https://www.eclipse.org/downloads/Get Eclipse OXYGEN を選択。この日記書いてる時点ではこれが最新バージョンなのでそのうち名前は変わるかもだけど。 DOWNLOAD…

備忘録:Java9いれてeclipse使えるようにするまで(1)

ふと思い立って、eclipseを入れてみようと思った。 厳密には数年前に入れてたらしいが、この際ちゃんと使えるようにしてみようと、クリーンインストールに挑戦。 その顛末を記録しておく。 その(1):Javaをインストールするまで Javaインストーラのダウンロ…

qsortを再帰を使わずに書く

そういうお題が某所で提供されたので、せっかくだから解いてみる。 ちなみに出題者の方は僕より数日早く自分で解かれたようだった。。。 #include <stdio.h> #include <stdlib.h> #include <string.h> #define ARR_SIZE (20) #define SHUFFLE_NUM (1000) typedef struct jobs { struct job</string.h></stdlib.h></stdio.h>…

walk NewBitmapFromImage()

今日遊んだコードはこれ package main import ( "github.com/lxn/walk" . "github.com/lxn/walk/declarative" ) import ( _ "go.image/bmp" ) import ( "fmt" "image" "image/color" "os" "log" ) func imgfromfilename(filename string) (img image.Image, …

walk ImageView

今日遊んだコードはこんな感じ。 package main import ( "github.com/lxn/walk" . "github.com/lxn/walk/declarative" ) func main() { var iv *walk.ImageView img, _ := walk.NewImageFromFile("./tombo_big.bmp") imgsize := img.Size() MainWindow{ Titl…

構造体とポインタの話

まあ、あたりまえっちゃあたりまえなんだろうけど、一応確かめておこうと思ったこと。 package main import "fmt" type hoge struct { a int b float64 s string } 構造体を適当に宣言しておく。 func main() { var h *hoge h = new(hoge) h.a = 5 h.b = 3.1…

walk PushButton

今日遊んだコードはこんな感じ package main import ( "github.com/lxn/walk" . "github.com/lxn/walk/declarative" ) import ( "strings" ) func main() { var te1 *walk.TextEdit MainWindow{ Title: "hello", Size: Size{320, 480}, Layout: VBox{}, Chil…

構造体

golangの構造体の中に、他の構造体の宣言を入れられるみたい。 うまいこと説明できないけど type hogebase struct { j int } とりあえず先に(後でもいいけど)取り込む構造体を宣言してみる。 type hoge struct { hogebase i int str string } で、こんな感じ…

walk Layout

今回遊んだコードはこれがベース。昨日(だったけ)作ったコードから少しだけ変えた。 package main import ( "github.com/lxn/walk" . "github.com/lxn/walk/declarative" ) func main() { var te1, te2 *walk.TextEdit MainWindow{ Title: "hello", Size: Si…

walk初め

walkを使おうとぐうぐる先生に聞いてみたが、 こことここしか見つからなかった。 それらの書いてあることはきっと初歩的なことなんだろうけど、今の僕にはまだむずかしい。 僕はまずhello worldが書きたい。というわけで、よくわからんまま package main imp…

skkのインストール

やっぱりskkは入れないとね、と、入れてみた。ここからskk本体をダウンロードして解凍。なんかddskk-20130915.tar.gzという、昨日の日付のがあったのでそれを入れてみた。毎日開発されてる開発バージョンなのかな? ここからSKK-JISYO.L をダウンロードして…

エディタあれこれ

プログラムを書こうとすると、何かしらエディタが必要なわけで。。メモ帳ではちょっとしんどい。 eclipse とーごーかいはつかんきょうっていうものらしい。 まず、ここからダウンロード。僕の環境はWindows 64bitなのでそれを。 で、javaをダウンロード。普…

クロージャ

なんかよくわからないものがあるんだけど、まあ関数そのものが変数に代入できて それで動かすと中身がC言語でいうstatic変数みたいなんになってるんかなと。。 まあよくわからないけどそんなレベルで考えてる。で、こんなコードを書いてみた。 package main …

WALKのインストール

windowsのguiでgoを使うには、と、適当に調べてみたらこのへんが見つかった。 で、よろこんで go get github.com/lxn/walk とやってみたら、うまくいかない。 なんか$GOPATHが設定されていないらしい。 どこに作るかよくわからないので、C:\Users\prizeout …

goルーチンテスト

func hoge(ch chan int) { v := <- ch v++ fmt.Println(v) ch <- v return } func main() { ch := make(chan int, 1) ch <- 0 for i:=0; i<10; i++{ go hoge(ch) } return } こんなコードを書いてみた。期待した結果は 1 2 3 4 5 6 7 8 9 10 だったんだが、…

Walk()つづき

再帰使わずにがんばる方法、寝ようと思ったらなんか思いついたので書いてみた。 type node struct { self *tree.Tree left bool //true: 行ったことあるよー right bool prev *node } func Walk(t *tree.Tree, ch chan int) { now := new(node) now.self = t…

golang練習

先日、goという言語を見つけて、プログラムのリハビリがてらチュートリアルを遊んでいる。 http://go-tour-jp.appspot.com/んで、がんばって最後の方までいくと、二分木というものがでてきて、それをたどれと。。 情報系の人だったら学校の授業で出てきただ…