2007年11月29日 星期四

用歸納法證明永遠吃不飽

來貼蔡神的簽名檔XD

Proof techniques #1: Proof by Induction.

Q: 試用歸納法證明:飯永遠吃不飽.
1. 吃一粒米顯然不會飽
2. 假設吃了 n 粒米沒有飽
再吃一粒米顯然也不會飽, 就是說吃 n+1 粒米也不會飽
由此可推得米飯永遠吃不飽 !


QED. (QED translates from the Latin as "So what?")

2007年11月24日 星期六

十進位轉二進位

目前為止寫過最簡短的版本
#include<iostream>
#include<climits>
using namespace std;

int main(){
    int x=0;
    unsigned int y = INT_MIN;

    cout << "please enter a Integer:";
    cin >> x;

    while(y!=0){
        (x&y)?(cout << "1"):(cout << "0");
        y=y>>1;
    }

    return 0;
}

概念:
INT_MIN的二進位長這樣 10000000000000000000000000000000
跟x做bit AND,除了最左邊bit,其他bit都會變0。
只有最左邊bit維持原樣,這時就可以單獨判斷該bit要印出0或1。

接下來將INT_MIN 往右shift一個bit。就可以判斷x第二個bit了,依此類推。

第一篇

第一篇