2012年7月24日火曜日

色々な直線

前のmoduleを使用して色々な直線を引いてみました
本当は方程式を解いて直線ぴーん。がいいんですけど(笑)
本当はそうするつもりなんですけど
一般化がよくわかりません(笑)

そんな訳で今後の展開に期待!です

#include "FILE_draw_graph_sub.hsp"
 graph_init
 
; y=x
 color $ff,0,0
 graph_line 300,300,-300,-300
; y=-x
 color $80,0,0
 graph_line -300,300,300,-300
; y=10(%)
 color 0,$ff,0
 graph_line 300,30,-300,30
; x=-10(%)
 color 0,$80,0
 graph_line -30,300,-30,-300
; y=2x
 color 0,0,$ff
 graph_line 150,300,-150,-300
; y=0.5x
 color 0,0,$80
 graph_line 300,150,-300,-150
; y=0.5x+20(%)
 color 0,$ff,$ff
 graph_line 300,150+60,-300,-150+60
; y=0.5(x+20(%))
 color $ff,0,$ff
 graph_line 300,150-30,-300,-150-30
 draw_zahyoujiku
 stop

グラフ描画モジュール

自費出版の書籍には色々とグラフを載せたいと思ってまして
そうなると誰がグラフを書くのかよくわからなく
編集の人に頼むと費用がかさむことが予想され
なので自分でグラフを書いてしまえwと
まずはx軸y軸と目盛を書いてみました
ちなみにグラフは目盛の意味する数値をグラフごとに用意するのがめんどうなので
単位は%です
1とか10とか100とかじゃなく
1%とか10%とか100%として読んでください

ちなみに使用言語は描画なので楽なHSPです。知らない方、ごめんなさい

// FILE_draw_graph_sub.hsp
/*
 graph_init
 
 color $ff,0,0
 graph_line 300,300,-300,-300
 color 0,$ff,0
 graph_line -300,300,300,-300

 draw_zahyoujiku
 stop
//*/
#module m_draw_graph
#deffunc graph_init
 screen 0,600,600
 return
#deffunc graph_line int p_x_A,int p_y_A,int p_x_B,int p_y_B
 tmp_x_A=p_x_A+300
 tmp_x_B=p_x_B+300
 tmp_y_A=600-p_y_A-300
 tmp_y_B=600-p_y_B-300
 line tmp_x_A,tmp_y_A,tmp_x_B,tmp_y_B
; line  tmp_x_A,0,0,600
 return
#deffunc draw_zahyoujiku
 color 0,0,0
// x軸の座標軸描画
 line 299,0,299,600
 line 300,0,300,600
// y軸の座標軸描画
 line 0,299,600,299
 line 0,300,600,300
// x軸の+の目盛描画
 repeat 10,1
 x1=300-5
 x2=300+4
 line x1,(300-(30*cnt)),x2,(300-(30*cnt))
 loop
// x軸の-の目盛描画
 repeat 10,1
 x1=300-5
 x2=300+4
 line x1,(300+(30*cnt)-1),x2,(300+(30*cnt)-1)
 loop
// y軸の+の目盛描画
 repeat 10,1
 y1=300-5
 y2=300+4
 line (300-(30*cnt)),y1,(300-(30*cnt)),y2
 loop
// y軸の-の目盛描画
 repeat 10,1
 y1=300-5
 y2=300+4
 line (300+(30*cnt)-1),y1,(300+(30*cnt)-1),y2
 loop
 font "",10
// y軸の+の目盛(数値)描画
; pos 0,0
; mes "100"
; logmes ""+ginfo_mesx//15
; logmes ""+ginfo_mesy//10
 _4mes_n=100
 repeat 10,0
 pos (300-5-15),(cnt*30)
 mes _4mes_n
 _4mes_n-=10
 loop
// y軸の-の目盛(数値)描画
; pos 0,0
; mes "-100"
; logmes ""+ginfo_mesx//20
; logmes ""+ginfo_mesy//10
 _4mes_n=-100
 repeat 10,0
 pos (300-5-20),(600-cnt*30-10)
 mes _4mes_n
 _4mes_n+=10
 loop
// x軸の-の目盛(数値)描画
; pos 0,0
; mes "-100"
; logmes ""+ginfo_mesx//20
; logmes ""+ginfo_mesy//10 
 _4mes_n=-100
 repeat 10,0
 pos (0+cnt*30),(300-5-10)
 mes _4mes_n
 _4mes_n+=10
 loop
 
// x軸の+の目盛(数値)描画
; pos 0,0
; mes "100"
; logmes ""+ginfo_mesx//15
; logmes ""+ginfo_mesy//10
 _4mes_n=10
 repeat 10,0
 pos (300+(cnt+1)*30-15-1),(300-5-10)
 mes _4mes_n
 _4mes_n+=10
 loop
 return
#global

物語

出来る人ってそれに対して物語があるとか

プログラミングするとか、読書するとかは
小さい物語なのかな?
プログラム(小さいけどw)を完成させたい。とか
これを読破する!とか
僕はあんまり大きい物語はなくて
まー2個くらいある気もするけど
それもなんか曖昧やし
小さい何個かの物語を並行してこなしてるってのが僕の日常
そー言えば英語も少々勉強してるけど
それも出来る高校生くらい英語が上手くなって
英語サイトを色々巡回したいという物語♪

そしてもちろん自費出版に向けて頑張るのも僕の物語♪
曖昧すぎて全然はかどりませんがw

2012年7月12日木曜日

高階関数

なんでHSPには高階関数無いんだ?Javaにもw

いやHSPで継承もどきしてて
#modfuncが継承したい数必要なんです
自動で命令継承してくれればいいのに
そういう言語が作りたい
って思ったら
高階関数があればいいのか。と
関数もらってオブジェクトに対して実行すればいいのか。と
でもよく考えれば多重継承が出来ればいいのか

例えばStringのオブジェクト
初期化。set getのメソッドを持つのを2個持ってたとして
単継承だと2個継承出来ないし
それ継承すると他継承できないし
継承したい時毎回6つメソッド作るのめんどくさいし

でも多重継承だとなんとかなりそw
Rubyみたいにmix-inでもいいですね
Rubyには高階関数あるけどw
って気付いたw
まぁ。何もせず命令呼ぶだけやから
たいしたことないっちゃーたいしたことないんですけど
めんどくさいけどね

僕は主にモジュールを作成しているので
それを対象とした言語作成とか目指してもいいのかな?

2012年7月11日水曜日

価格と販売量の関係

グラフありますよね
需要と供給と価格のグラフで
価格と販売量はその接点で決まるってグラフ
有名なグラフです
高校でも軽く習ったような
大学でもよく出たような
(僕は経済学部卒です)

で、その需要曲線とか供給曲線を求める仮の数式を考えました
たぶん2、3年前に

現在の供給をX
現在の価格をYとします

その上で例えば
価格が20%下がれば
販売量が2倍になるのです
更に価格が20%下がれば
販売量が更に2倍になるのです

価格が20%上がれば
販売量は半分になるのです
更に価格が20%上がれば
販売量が更に半分になるのです

価格を安くしたい場合
Y2:売りたい価格=(Y1:現在の価格)の0.8のZ乗
なら
X2:売れる数量=(X1:現在売れている数)の2.0のZ乗
になります

価格を高くしたい場合
Y2:売りたい価格=(Y1:現在の価格)の1.2のZ乗
なら
X2:売れる数量=(X1:現在売れている数)の0.5のZ乗
になります

僕が自費出版用の文章に載せるプログラムの終着駅の一つは
この数式を解くプログラムを作成することです
単純だけど難しそうで先は長いです

税金

最近、消費税増税が話題ですね
で、税について考えた

小飼弾氏が相続税の税率100%にすべきと書いていました
それなら財産税という考え方も出来ますよね
個人でも企業でも財産税

例えば相続税が100%じゃなく
毎年、財産の2%を税金で取られるかんじ
現状、相続税の対象もある額以上なので
財産が3000万円ある人はそれ以上の分の2%を税金にもっていかれる。と
企業は資産から負債を除いた分の1%を税金として支払う
ある額以上じゃないので1%。と

これは思いつきのようだけど
前、標準の利子がマイナスだとどうなる。と思考実験したことがあって
なら預金しなきゃいいか。って
そういう結論なんですけど

利子をマイナスにせずに
資産に税金をかけるんです
利子をマイナスにするようなものです

昔、利子が高かった頃
利子は収入のようで収入じゃなかったんです
資産も利子で増えるけど
それ以上に国内総生産が増えるので
相対的に財産の価値が減るんです

ならゼロ金利の利子で財産税を取られても
相対的に財産の価値が減ることは変わりません
財産は増やす能力のある人が維持できて
ない人は維持できない
それでもいいと思います