2012年5月19日星期六

乘法的交換律

乘法有交換率。這好像很簡單,大家都學過,3乘5等於5乘3嘛,簡單的很。但是有些人應該不是真的知道,只是考卷上知道該怎麼寫。

例如,怎麼從95%濃度的酒精調配出70%的酒精?因為乘法有交換率,所以濃度95%的70cc酒精中,純酒精含量等於濃度70%的95cc酒精。所以只要拿95%的酒精70cc,加25cc的水就好了。

上面的例子是從書上看到的,95%是市售酒精的濃度,據說這是真的在診所裏發生過的事。但是我的解釋方法更好。我連x都不需要使用。

2012年5月14日星期一

累進稅率

累進稅率:原來很多人繳稅繳了幾年,也不知道累進差額是什麼。
所謂的累進稅率,就是所得分成幾個級距,假設某國只有兩級,每年超過兩千萬所得稅率為70%,其他扣30%,意思就是說超過兩千萬的部分才扣70%,低於兩千萬的部分是扣30%。假設賺了三千萬,要繳的稅是兩千萬乘30%,加上一千萬乘70%。但是為了計算方便,稅捐機關提供的公式是三千萬乘70%,再扣掉累進差額。

如果不這麼做,那會造成某個人多賺一塊錢,所得稅就從所得的30%變成70%,這樣徵稅不公平,也很呆。要點是所得vs稅負的曲線是連續的(最理想的狀況是平滑的,平滑是指處處可微分。但是很麻煩,所以實務上不這麼做)

很奇怪的是,這些數學上的考量,很多台灣理工宅不知道。所謂理工宅只有台灣才有。這也難怪有人會被騙上千萬還不知道自己被騙了。

2012年5月7日星期一

博大精深的角換


 (銀將按照箭頭上去之後,有三種選擇:2七銀就是棒銀,3六步就是準備早繰銀,4六步就是準備腰掛銀)
博大精深系列第二彈。

換角之後雙方都面臨了一個危機,就是隨時會被角行打入,不論是直接打入敵陣,或是封鎖飛車頭上一格,或是直接王手飛車,都很有威力。職業棋士長年的實戰演化出來的結果,只剩三種下法
1. 棒銀
2. 早繰銀
3. 腰掛銀

但是這三者互相克制,形成剪刀石頭布的循環,1剋3,3剋2,2剋1

腰掛銀對棒銀的話,飛車頭容易受攻,很快陷入不利

早繰銀對棒銀,則不但飛車頭保護良好,而且還有4五角攻擊對方飛車頭,使棒銀無法得逞,即使用了升田流自陣角對應,也只是一個陷阱招,對方不中招仍然不利。

早操銀對腰掛銀 ,後者可以用雙銀將直接鎖住對方銀將,使對方銀將無法進攻。

那麼到底要怎麼下呢?雙方開局博弈的均衡就是雙方都用了腰掛銀,最後不是雙方先後同形,黑方稍微有利,就是白方轉成全防禦腰掛銀,雙方都很難下。

2012年1月31日星期二

先裝了Linux,再裝windows,結果linux開機程式被覆蓋要怎麼辦


答案很簡單,參考這一篇
簡單敘述相關段落如下

首先用liveCD進入 Linux,在命令行執行grub,進入grub後,找出stage2檔案:
grub> find /boot/grub/stage2
(hd0,0)
這是範例,你得到的結果未必是(hd0,0),端視你當初安裝Linux在哪一顆硬碟的哪一個分割區而定。
stage2檔案包含了開機選單,這時告訴grub你要用哪一個開機選單:
grub> root (hd0,0)
Filesystem type is ext2fs, partition type 0x83
接下來告訴grub要在哪裡放置stage1檔案。這個地方就是你的BIOS所指定的開機碟,通常是第一顆硬碟,所以:
grub> setup (hd0)
之後的訊息就是grub會去檢查stage1, stage2, stage1_5檔案,然後把相關資訊紀錄在開機碟的MBR上面,最後列出...succeeded Done. 的字樣,代表安裝成功。

這是PCLinuxOS的流程,其他版本的話只要是要grub,道理都相同。grub處理開機的方法是電腦會從開機碟的MBR中執行stage1,stage1會指示電腦載入stage1_5,把一個簡單的磁碟系統載入ram當中,再去讀取stage2的選單,依據選單內容載入Linux作業系統,或是把控制權交給另一個開機程式(例如windows的開機程式)。

2011年12月22日星期四

人猿星球和星球崛起

人猿星球(planet of ape),是1968年的經典電影。故事內容是小說改編,具有相當的深度,演員演出也都到位,因為故事結構良好,寓意明確,所以類似的故事經常被其他電影或小說摹仿。
所以沒看過人猿星球的人現在去看,會覺得劇情似曾相識。 至於新的猩球崛起,若真要跟老前輩比是比不過的,不過人物感情上有較細膩的描述,不論是主角父子,主角和猩猩,或是猩猩和猩猩都很有戲。元祖電影的每一部續作都破壞了元祖的設定,猩球崛起也不例外。被破壞的點是在人猿星球原本的設定是人類自己退化掉(戰爭,文化,環境,人口等種種因素。當然電影中一直暗示是核彈,但是為何核彈會丟呢?就是上面那些因素),猩球崛起卻編造了另一個理由,搞得像是偶然一樣,更破壞了元祖的警世意味,是比較可惜的部份

2011年12月20日星期二

編輯程式常用gvim指令

自動完成:Ctrl + p 向上搜尋匹配並自動完成,Ctrl + n 向下
移動至匹配括號:%。跟v結合可以很快選擇依括號內區域
變更部份文字:c + 移動指令
搜尋:/pattern
取代::1,$s/s1/s2/g 將s1取代為s2
顯示(取消)行號: :set number (:set nonumber)
編譯目前的java檔案::!javac %

2011年11月9日星期三

神奇的linux/unix運算程式dc

dc是一個linux/unix指令列工具,完全運用stack做運算

用它可能沒什麼特別的好處(除了可能會很快之外。照理說這種純stack運算的語言可以做到飛快),但是如果想對程式運作有更深的了解,花點時間玩一下會有幫助,因為所有程式的函數呼叫控制都是用stack完成。

寫了一個hanoi tower自娛用,執行dc -f hanoi.dc就可以了
hanoi.dc的內容如下:
#function z : move source to destiny
[[ ]n ls n [ -> ] n ld n [ ]p]sz

#function Q : quit and clear top of stack n,s,d,i
[LnLsLdLi sbsbsbsb q]sQ

#function X(n,s,d,i) : hanoi tower function,
#n: number ; s: source ; d: destiny ; i: intermediate
[
 ln 0=Q
 ln 1- Sn
 li ld Si Sd ls Ss
 lXx
 lzx
 ln 1- Sn
 li ls Si Ss ld Sd
 lXx
 LnLsLdLi sbsbsbsb  #this line clears the top of parameter stacks
]SX

[number of disk:]P?
[start pillar:]P?
[destination pillar:]P?
[intermidiate pillar:]P?
SiSdSsSn
lXx