#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(){
int lot[49], choose[7], min = 1, max = 49, num = 7;
int max_dim = max-min+1, choice, i;
for(i=0; i<max_dim; i++){
lot[i] = i+min;
}
srand((unsigned)time(NULL));
for(i=0; i<num; i++){
choice = rand()%max_dim;
choose[i] = lot[choice];
lot[choice] = lot[max_dim-1];
max_dim--;
}
printf("\n 本期大樂透 電腦選號 號碼如下:\n\n");
for(i=0; i<num-1; i++){
printf(" %d", choose[i]);
}
printf("\n\n 特別號: %d \n\n\n", choose[num-1]);
return 0;
}
lifelong learning and ongoing creation
2017年10月8日 星期日
[C] 大樂透開獎
[C] 綜合所得稅試算
/*
說明
請根據綜合所得稅速算公試表,求出使用者輸入綜合所得淨額後,印出稅率、稅金、累進差額還有今年應納稅額。
Input Format
今年所得
Output Format
所得淨額:
稅額:
稅金:
累進差額:
今年應繳:
Sample Input
1230000
Sample Output
income 1230000
tax rate 21%
tax 258300
discount 105100
taxpay 153200
*/
#include <stdio.h>
int main()
{
int income, discount;
double taxrate;
scanf("%d", &income);
if(income>=0 && income<=370000){
taxrate = 0.06;
discount = 0;
}
else if(income>370000 && income<=990000){
taxrate = 0.13;
discount = 25900;
}
else if(income>990000 && income<=1980000){
taxrate = 0.21;
discount = 105100;
}
else if(income>1980000 && income<=3720000){
taxrate = 0.3;
discount = 283300;
}
else if(income>3720000){
taxrate = 0.4;
discount = 655300;
}
else{
printf("input error\n");
}
printf("income %d\n", income);
printf("tax rate %.0f%%\n", taxrate*100);
printf("tax %.0f\n", income*taxrate);
printf("discount %d\n", discount);
printf("taxpay %.0f\n", income*taxrate-discount);
return 0;
}
[C] 猜數字遊戲
/* 說明 猜數字遊戲 讓系統隨機生成一數字介於1到5之間 使用者輸入一數字猜此數字是什麼 猜對的話輸出”猜對了” 猜錯則反之輸出”猜錯了” Input Format 猜的數字1-5 Output Format 猜對的話輸出”你猜對了 答案正是 x” 猜錯則反之輸出”猜錯了了喔 其實是 x” Sample Input 3 Sample Output bingo answer is 3 Sample Input 3 Sample Output wrong answer, answer is 5 */ #include <stdio.h>#include <stdlib.h> #include <time.h> int main() { int guess, keyin; srand((unsigned)time(NULL)); guess = rand()%5+1; scanf("%d", &keyin); if(guess == keyin) printf("bingo answer is %d\n", guess); else printf("wrong answer, answer is %d\n", guess); return 0; }
2017年9月1日 星期五
Raspberry Pi 設定鏡像站(/etc/apt/sources.list)
更新 /etc/apt/sources.list 的台灣 Mirror
Q: 什麼是 Mirror ?
Raspbian 套件庫的更新來源,中文稱『鏡射站』。RPI成功開啟後,預設的鏡像站在國外,連線速度會受到影響,若不設定我們的 Mirror 來源,系統則自動幫我們依回應速度決定要連線的鏡像站,所以我們必須加入國內的 Mirror 來源,更新套件清單與更新套件、安裝套件等的網路下載速度會較快。
完整 mirror list : https://www.raspbian.org/RaspbianMirrors (請選擇台灣的)
sudo nano /etc/apt/sources.list
deb http://free.nchc.org.tw/raspbian/raspbian stretch main contrib non-free rpi
( dpkg格式套件庫 ) ( 伺服器的位址及使用協定 ) ( 發行版本 ) ( 組別 )
最後更新套件清單即可,指令如下:
sudo apt-get update
如果沒有出 error,那我們就可以使用國內的鏡像站去下載安裝套件了
Raspberry Pi 初始設定
Raspberry Pi 第一次開機的時候,需要做初始化的設定,畫面如下圖:
Expand Filesystem:將SD卡除了開機磁區的剩餘空間作格式化,讓使用者可以運用
Change User Password:變更使用者的密碼,這裡的使用者是RPI的預設使用者 "pi" 不是 root
Enable Boot to Desktop:是否要在開機的時候直接進入 X 視窗模式
Internationalisation Options:這個裡面有三項設定,分別為語系,時區,還有鍵盤的設定
Change Locale > en_GB.Utf-8 拿掉,選擇 en_US.Utf-8
> 中文的部分選擇 zh_TW.UTF-8即可 (不過很少用到)
Change Timezone > Asia > Taipei
Change Keybord Layout > 選擇自己鍵盤的型號(不知道就選Generic 105-key (Intl) PC)
> Other > English (US) > English (US) > NO AltGr key
> No compose key (歐系鍵盤才有)
> 接下來會出現下圖的畫面,看你要不要留下 X 視窗
直接跳出的快捷鍵
Expand Filesystem:將SD卡除了開機磁區的剩餘空間作格式化,讓使用者可以運用
Change User Password:變更使用者的密碼,這裡的使用者是RPI的預設使用者 "pi" 不是 root
Enable Boot to Desktop:是否要在開機的時候直接進入 X 視窗模式
Internationalisation Options:這個裡面有三項設定,分別為語系,時區,還有鍵盤的設定
Change Locale > en_GB.Utf-8 拿掉,選擇 en_US.Utf-8
> 中文的部分選擇 zh_TW.UTF-8即可 (不過很少用到)
Change Timezone > Asia > Taipei
Change Keybord Layout > 選擇自己鍵盤的型號(不知道就選Generic 105-key (Intl) PC)
> Other > English (US) > English (US) > NO AltGr key
> No compose key (歐系鍵盤才有)
> 接下來會出現下圖的畫面,看你要不要留下 X 視窗
直接跳出的快捷鍵
Enable Camera:開啟 Camera 的功能,這個地方等要用再打開就好
Add to Rastrack:加入 Rastrack 的大家族 (看個人喜好)
Overclock:超頻功能( 如果板子的散熱做得好的話可以試看看 )
Advanced Options:進階選項,在這個裡面有幾項比較重要的設定必須做
Hostname > 更改主機名稱,預設都是 raspberry pi 不修改的話難免會跟別人衝到
Memory Split > 分記憶體給硬體加速,如果只使用文字介面的話給最低就好了
> 如果是要在 X 視窗跑軟體,建議給到 128 或 256
SSH > 這個打開之後才能在 Win 使用 putty 連線到 RPI
最後點選 Finish ,然後重開機設定就會生效了,如果之後還需要修改設定的話,請下
sudo raspi-config 就可以進入設定畫面了
Raspberry Pi 修改解析度
由於RPI的螢幕輸出是HDMI的解析度
所以我們使用轉VGA的螢幕通常無法正常顯示
首先將植入系統的SD卡插回電腦,然後開啟唯一可以讀的到"X"槽
裡面會看到一個 config.txt 的檔案,如下圖所示:
接下來使用 Word Pad 將它打開 (使用記事本格式會跳掉)
修改以下內容:
# uncomment to force a specific HDMI mode (this will force VGA)
hdmi_group=2
hdmi_mode=16
# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
hdmi_drive=2
所以我們使用轉VGA的螢幕通常無法正常顯示
首先將植入系統的SD卡插回電腦,然後開啟唯一可以讀的到"X"槽
裡面會看到一個 config.txt 的檔案,如下圖所示:
接下來使用 Word Pad 將它打開 (使用記事本格式會跳掉)
修改以下內容:
# uncomment to force a specific HDMI mode (this will force VGA)
hdmi_group=2
hdmi_mode=16
# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
hdmi_drive=2
參數定義:
hdmi_group:用於指定要使用 CEA 或 DMT 的格式去設定解析度
hdmi_mode:使用 1024x768 且為 60 Hz 的解析度
hdmi_drive:設定要驅動 DVI (1) 或 HDMI (2)
Raspberry Pi 植入 raspbian 系統
首先我們需要準備以下物品:
Raspberry Pi 主板
SD卡(8G/16G/32G皆可)
HDMI轉VGA轉接頭
網路線
USB鍵盤
接下來到下方網站下載我們要植入的映像檔:
https://www.raspberrypi.org/downloads/raspbian/
再來就是要植入映像檔了,這個地方有兩種方式:
1. 如果是Linux的系統請直接參考 Dr lee 's blog ,下方為連結網址:
http://pominglee.blogspot.tw/2013/01/raspberry-pi-sd-card.html
2. 如果要使用Windows植入,請先下載 win32diskimager,下載後安裝即可
下方為連結網址:
https://drive.google.com/open?id=1DCdd5qvzJecZHnILgKbulFcfSZMt1nup
2.1 將SD卡使用讀卡機連接到你的電腦上,這時候要看好跳出來的是哪個槽
2.2 開啟win32diskimager , 開啟畫面如下:
Device 的地方選取我們的SD卡顯示的"X"槽
Image File 則選我們剛剛下載的映像檔
最後只要Write下去等它跑完就OK了
※切記Device的地方要選對,不然選到C或D槽,還Write下去東西就再見了
Raspberry Pi 主板
SD卡(8G/16G/32G皆可)
HDMI轉VGA轉接頭
網路線
USB鍵盤
接下來到下方網站下載我們要植入的映像檔:
https://www.raspberrypi.org/downloads/raspbian/
再來就是要植入映像檔了,這個地方有兩種方式:
1. 如果是Linux的系統請直接參考 Dr lee 's blog ,下方為連結網址:
http://pominglee.blogspot.tw/2013/01/raspberry-pi-sd-card.html
2. 如果要使用Windows植入,請先下載 win32diskimager,下載後安裝即可
下方為連結網址:
https://drive.google.com/open?id=1DCdd5qvzJecZHnILgKbulFcfSZMt1nup
2.1 將SD卡使用讀卡機連接到你的電腦上,這時候要看好跳出來的是哪個槽
2.2 開啟win32diskimager , 開啟畫面如下:
Device 的地方選取我們的SD卡顯示的"X"槽
Image File 則選我們剛剛下載的映像檔
最後只要Write下去等它跑完就OK了
※切記Device的地方要選對,不然選到C或D槽,還Write下去東西就再見了
訂閱:
文章 (Atom)



