猜數字是一個很經典的小遊戲,也是編程開發入門的典型,如下爲基於WiFi IoT套件開發的猜數字小遊戲的具體開發過程和效果。編程
基本規則:
由甲方(玩家)默想一個1-99(包含)內的任意數字(整數),而後由乙方進行猜想,並詢問甲方猜想的數字是大了仍是小了,甲方根據實際狀況進行回覆,則乙方最多問6個問題,就必定可以猜中甲方默想的數字。app
基本原理:
乙方問最多6次,包括最後一次說出猜中的數字,實際上乙方最多有7次猜想的機會。ide
而使用二分進行查找,2^7=128,則99之內的數字,徹底能夠覆蓋,所以乙方絕對能夠猜中。post
實現概述:
以上的基本規則和基本原理明確了,咱們要在WiFi IoT套件上實現,而且甲方須要參與,須要處理如下三個部分:學習
原始代碼修改處理:【代碼基礎爲code-1.0.tar.gz】ui
## BSP Settings # # CONFIG_I2C_SUPPORT is not set CONFIG_I2C_SUPPORT=y # CONFIG_I2S_SUPPORT is not set
#ifdef CONFIG_I2C_SUPPORT /* I2C IO複用也能夠選擇3/4; 9/10,根據產品設計選擇 */ // hi_io_set_func(HI_IO_NAME_GPIO_0, HI_IO_FUNC_GPIO_0_I2C1_SDA); // hi_io_set_func(HI_IO_NAME_GPIO_1, HI_IO_FUNC_GPIO_1_I2C1_SCL); hi_io_set_func(HI_IO_NAME_GPIO_13, HI_IO_FUNC_GPIO_13_I2C0_SDA); hi_io_set_func(HI_IO_NAME_GPIO_14, HI_IO_FUNC_GPIO_14_I2C0_SCL); #endif
主邏輯代碼:guess.cspa
文章後續內容和附件能夠點擊下面的原文連接前往學習
原文連接:https://harmonyos.51cto.com/posts/1986#bkwz
設計
想了解更多內容,請訪問:code