牛庵

先前武漢肺炎疫情正盛之時,卻傳出惹貍匠拉麵品牌系列第五家分店吞山郎的展店消息。而在疫情疫情逐漸降溫後,貍匠拉麵旋即又決定在同一地址、吞山郎的隔壁開新店喇。 從店名不難猜測,這家店的主打顯然是牛。我點的這碗是咖哩牛骨濃湯拉麵,雖然以往我一向認為咖哩就是只能配飯,對於咖哩炒麵之類的時常興致缺缺,但這碗拉麵實在讓我太過驚豔。首先湯頭並不是典型的日式咖哩,醇厚的牛骨味中富含各式香料,再加上蕨類的點綴及檸檬片進一步提升層次。特別的是不像常見的溏心蛋,我咬破半熟的溫泉蛋之後吸惹一下蛋汁,接著又將其打進湯頭。此外,由牛肉製成的叉燒也十分新奇。 千萬別急著把湯喝盡,免費加點一碗白飯,倒進濃湯後就搖身一變,化成咖哩飯上菜喇。這種一湯兩吃的體驗真的好過...

字串是程式當中相當重要的議題,我們從 hello, world 就接觸到它,但我們始終用一種敷衍的態度點到為止。在變數型別中,提到字串其實就是字元陣列。如今我們學過陣列,終於可以好好的討論一下字串惹。 與陣列相似,C++ 的字喘也有傳統 C 風格與現代 C++ STL 兩種。雖然競賽實務上往往用 C++ STL 方便許多,但傳統 C-style string 的設計有許多巧思,值得了解。 C-style string 既然字串是字元陣列,那就直接宣告來用看看吧: #include <iostream> using namespace std; int main() { char str[] = "hello, world";...

渡山樓

疫情警戒降回二級的第二天,我終於又再次於店內享用拉麵的美味。儘管政府已開放內用,但有不少店家還未準備好。隱身在熱鬧西區中的寧靜小路公正路上的渡山樓,符合實聯制、體溫量測、出入店消毒、梅花坐與隔板等等的防疫措施,因此是少數提供拉麵迷解饞的內用服務。 我點的是雞豚濃厚雞白湯,一端上來真的是開心感動極惹。湯頭的部分就典型的雞白湯,中規中矩的。叉燒的部分有雞有豬,以 \(\$210\) 的價格而言算是給得非常大方,留待免費加麵一次配著吃都還足夠。此外比較特別的是還有附檸檬片,我是等到替玉之後才加,檸檬汁的點綴下雞白湯的層次就更豐富惹。 在此時此刻能有一碗內用拉麵,我覺得真的非常幸運。我們真的要好好感謝所有奮戰的醫護以及其他前線人員、中央與地...

狸匠拉麵

狸匠拉麵的本店離我家也不遠,一直是我想嚐試的店家之一。本來想說畢業之後會有許多時間開發新店,無奈武漢肺炎爆發打亂一切。所幸台灣疫情逐漸降溫受控,在降回二級前夕我訂惹一碗深夜拉麵的外送以慶祝,只是送達時已經降級惹 XD 這碗是激辛豚骨大盛,湯頭十分醇厚順口,最後我直接喝完;不愧是大盛,叉燒不僅大片亦很足夠。此外,溏心蛋的水準也是不錯。總結來說,真是完美的宵夜啊!! 目前四家狸匠體系已經集滿三家,就剩下在太平的激勵軒。希望外來都能自由無慮地在店內享用拉麵。 🏬店名 狸匠拉麵 - 深夜拉麵 🏠地址 402 台灣台中市南區建成路 1053 號 🔗連結 Facebook

C-style array 有時我們會需要紀錄大量同樣型別的變數,比如 GreenJudge c041, 題目輸入 \(N\) 及 \(N\) 個人的現金,那我們要怎麼儲存呢??我們可以使用陣列 (array): #include <iostream> using namespace std; int main() { int n; cin >> n; int arr[n]; // ... return 0; } 第九行的 int arr[n]; 宣告整數型別的陣列,其長度為 n. 之後,我們就能以 arr[0], arr[1], …, arr[n - 1] 陣列中的元素 (element) 來存取陣列中的元素。...

在開始前先看一段程式碼: #include <iostream> using namespace std; int main() { int a = 87, b; b = a; a = 69; cout << "a = " << a << ", b = " << b << '\n'; return 0; } 猜猜看,以上程式碼的輸出為何?? 可能會有人以為是 69 69, 但實際上是 69 87, 原因是我們宣告 a, b 兩個整數變數,他們分別儲存在記憶體的不同位置,而我們強調過: 程式語言中 a = b; 的涵義為將 a 的值設定為 b. 第八行 b = a; 將 b 的值設為 a 當時的值也就是 \(87\), 之後第九行...

學完 if-else, while, for 之後我們已經可以解決許多問題惹。作為程序流程的最後一篇,今天介紹一個幾乎很少使用的語法:goto. 如果妳有寫過 batch 或 bash script 的經驗,應該不會對 goto 感到陌生。我們可以在程式碼當中的任意處加上 label:, 再用 goto label; 跳轉到該label:. 乍看之下很方便,但是在程式碼當中大量濫用 goto 將會肇致許多麻煩,因此被多數人視為洪水猛獸,包括 MISRA 等機構建議不要使用,有些人或許甚至沒學過。 事實上,if-else, while, for 等程序流程在編譯後,於組合語言當中,也都是各式各樣的跳轉指令 (jxx), goto 就是...

我們現在會輸出一行字串,對吧??如果要輸出兩行呢??複製貼上,搞定。可是要是是 \(100, 1000\), 甚至是 \(n\) 次呢??電腦的專長除惹計算,還有做重複的事,這時我們可以運用迴圈。 while while 的語法有點像 if: while (condition) { // ... } 與 if 的不同在於 while 會重複執行大括弧內的陳述,直到 condition 為零。來看個範例吧 這個程式首先模擬丟擲一顆骰子,產生閉區間 \([1, 6]\) 內的偽隨機數為 val, 之後讓使用者輸入 n, 當 n != val 就讓使用者繼續猜。第二、八、九及十行前半是產生亂數的方法,可以先不理它。而第十行後半的 n =...

先前我們的程式很單純,就是順順得執行下去。再來的幾篇文章要介紹的陳述能讓我們的程式多些變化,並解決更多問題。 if-else 條件判斷 還記得1.1 的範例嗎??我們寫惹個程式,允許使用者輸入兩個整數,而我們輸出兩者相除之商與餘數。然而,如果今天有人很 87 輸入87 0, 那麼會發生什麼事?? 動手手試看看,讓電腦除以 0 會怎樣?? 電腦會爆炸嗎??顯然不會。如果你在 VS Code 按下 F5 偵錯,這時程式回停下來告訴你 Exception has occurred. Arithmetic exception. 如果直接在終端機執行,會輸出 floating point exception 之類的。總之,程式不正常得提前結...

其實在正式介紹之前,其實前面我們就有偷偷用過運算子惹,沒錯就是熟悉的 +, -, *, / 喇。接下來趕快來看看還有哪些運算子!! 算術運算子 +, -, *, /, % 屬之,就不多說惹。 指派運算子 這對新手是比較需要注意部分。在多數程式語言中,= 的意義與數學中的等號不同,一個表達式 a = b; 的涵義為將 a 的值設定為 b. 請在心中默念十六遍,開始!! 程式語言中 a = b; 的涵義為將 a 的值設定為 b. 簡單舉個例子: #include <iostream> using namespace std; int main() { int a = 87, b = 69; cout << "a = " << a <<...