2015年4月29日 星期三

演算法訓練 7 ─ 撲克牌對切洗牌 (Dovetail Shuffle)

http://4rdp.blogspot.com/2015/04/7-dovetail-shuffle.html?m=0

圖片來源 維基百科洗牌條目
中小學時,我喜歡做棋玩棋,專科及大學學生時代,除了玩電腦外,也很喜歡玩橋牌,收藏三十餘本絕版橋書,亦有取得初級橋士證,不過結婚後就沒再玩了,應該退休後才會再重拾這份嗜好吧。

回歸正傳,試寫一程式執行對切洗牌 (Riffle or Dovetail Shuffle)。


2015年4月25日 星期六

ROSA 的動作程式 (Profile)

http://4rdp.blogspot.com/2015/04/rosa-profile.html?m=0


續前文,ROSA 除了可以讓你以指令方式控制之外,也可以將這些控制指令集合成好幾組控制程式,儲存在 EEPROM (Electrically-Erasable Programmable Read-Only Memory) 內,EEPROM 是關閉電源資料也不會消失的小型記憶體,可以位元組獨立存取,不像 FLASH 須以一頁上百個位元組一起清除與儲存。

另外,為了增加程式儲存量,已將輸入的程式指令編碼處理,現在是以 ATmega328 的 Arduino 系列控制板開發 (諸如 Uno、Duemilanove、Nano 等),規劃可儲存七組不同程式組 (Profile),這七組程式碼總和最多不超過 1000 bytes。 

Profile 能做甚麼呢?

2015年4月22日 星期三

訓練數學感 59 - 填數字

http://4rdp.blogspot.com/2015/04/59_22.html?m=0

這題是網友行天下轉傳的,是一題具有多種答案的考題,儘量發揮想像作答吧!

難度 

2015年4月18日 星期六

ROSA 的時間系統

http://4rdp.blogspot.com/2015/04/rosa_18.html?m=0

圖片來源 http://share-smart.blogspot.tw/2011/06/blog-post_29.html
續前文,時間對電子控制器來說是非常重要的,如果無法掌握時間,很多事都會做不好。「定時開啟與關閉」跟時間有關,「分時動作」也跟時間有關,「多組設備同速同步」也跟時間有關,這些都是控制器的基本功能,須在正確的時間執行正確的動作。

為了這些目的,控制系統需要有時間設定,雖然 Arduino 沒有 real time clock (RTC),不過 ROSA 有設計相關指令可以設定與查詢時間,

2015年4月15日 星期三

訓練數學感 58 ─ 2889 = ?

http://4rdp.blogspot.com/2015/04/58-2889.html?m=0

這一題有點來亂的,會不會跟智商沒關係,而是要另類思考。^_^

2015年4月11日 星期六

ROSA 的變速處理

http://4rdp.blogspot.com/2015/04/rosa_11.html?m=0

續前文,ROSA 雖然是一個讓你容易學習的機器人系統,但有些概念可能初學者還需時間咀嚼,個人認為它適合進階的玩家,例如有調速需要的人。

一個機器人依照控制程式動作,一般都是以常速編輯設計動作,如果有人要你調整一下速度讓它快動作快播或慢速運轉,我想大多數的機器人程式必須重調所有的參數,才能讓動作協調一致,如果要動作忽快忽慢動作,我想不是程式設計高手是弄不出來,可是使用 ROSA 可以馬上讓你變高手。

一個理想的機器人控制器,應該只要簡單設定常速時的動作,然後一個指令就可以速度調整,這裡使用

2015年4月8日 星期三

訓練數學感 57 ─ 零錢的組合

http://4rdp.blogspot.com/2015/04/57_8.html?m=0

假設有三種零錢 50 元、20 元、10 元,請問 100 元有多少種組合方式?

2015年4月4日 星期六

ROSA 的指令概述

http://4rdp.blogspot.com/2015/04/rosa_4.html?m=0

圖片引用自維基百科
此文作廢,改版內容請見 ROSA 的指令概述 (2015.8.1)

續前文,接下來介紹 ROSA 的指令系統,因為 Arduino 控制器沒有任何鍵盤及螢幕,因此靠通訊的指令來傳達控制的訊息比較適當,所以採用前文所提的原則,使用簡單易懂的明碼文字指令,所有的英文大小寫字母都接受,為了便於說明 ROSA 相關指令語法,後面的說明解釋以大寫字母表示命令,小寫字母為該指令的參數項目,例如,

CONF pin,type1,type2,.....
CONF 是 configure 的縮寫,這指令用於設定控制器 pin 腳的用途,ROSA 對控制器 pin 代號定義與 Arduino 是一致的,也是以數字來編號,從號碼 0 開始,以 Uno 為例,上排 0 到 13 是數位的 pin,下排 A0 到 A5 是類比的 pin,ROSA 把編號訂在 200 到 205,也可以用 14 到 19,簡單說類比的腳位排在數位腳之後。(mBot 有 A6、A7)

這指令可以一次設定多隻 pin 腳,只要指定第一腳後,其它就接續設定,最多可連續設定 8 隻 pin 腳。type1 是開頭第一腳的型態,type2 就是相鄰第二腳的型態,type 也是以數字表示,型態定義為

2015年4月1日 星期三

訓練數學感 56 ─ 一道數學題,測試你是「邏輯型」或「直覺型」

http://4rdp.blogspot.com/2015/04/56.html?m=0

這是網友行天下轉發的,最近在網路上流傳,號稱能測出一個人是「邏輯型」還是「直覺型」........