還記得文書處理器嗎?當年5萬元買回家的科技夢。

tw5127 wrote:
哈哈,對喔!批次檔確實還活得好好的。😄
而且那種自己一行一行下指令、看著電腦照自己的邏輯跑起來,真的很有以前 DOS 時代的味道。
現在的工具是方便很多,但偶爾回頭玩玩這種「小程式」,反而會勾起不少回憶。
謝謝補充,改天我真的來試試看,看我這把老骨頭還記得多少。😂


賊怕 有人 說 Basic 賊古,
那 Windows 11 是 MS 賊新的 OS 總不會 有人 扛婆戀.
★★★ "我要留言" 不回, 只回 1 般回文. ★★★
tw5127 wrote:
嚴格說,這確實不是「只有一個指令」,而是很多個 BASIC statement 用冒號串在同一個行號裡。

在 #110 樓裡,我說的是 "一行程式碼"。確實就是只有一行字。

顯然, 這個人間截至目前並不存在哪一種程式語言會有 "一個指令" 就可以弄出九九乘法表的,對吧?
ulimie wrote:
在 #110 樓裡,...(恕刪)


您說得對,我前面『一個指令』這個講法確實不夠精準,應該說是『一行程式碼』或『一行敘述』比較恰當。我的重點是想表達:現在很多語言可以把迴圈、輸出等邏輯濃縮在同一行完成,不是說真的存在一個神奇指令,按一下就吐出九九乘法表。謝謝您幫我把這個地方校正得更精確。👍
ulimie wrote:
在 #110 樓裡,我說的是 "一行程式碼"。確實就是只有一行字。
顯然, 這個人間截至目前並不存在哪一種程式語言會有 "一個指令" 就可以弄出九九乘法表的,對吧?


由於 電腦 程式語言 主要是 歪國人 發明的,
但 歪國人 不懂 99 乘法表,
若 哪天 99 乘法表 變成 地球人 剛需必學,
歪國人 的 電腦 程式語言 搞成個 內建函數 就真真真的 只需 1 行,
如
Print 9x9Table();
或
Print 9x9Table(18,9); // 18x9 乘法表
★★★ "我要留言" 不回, 只回 1 般回文. ★★★
Angel9999
ChatGPT 給的真的只有一行print('n'.join(f'{i}×{j}={i*j}' for i in range(1,10) for j in range(1,10)))
Angel9999
那個年代的程式不知道可不可以把99乘法表.png的圖片叫出來,不然真的就是一個指令了
IQuit wrote:
由於 電腦 程式語言...(恕刪)


其實這個討論最有趣的地方,是「一行程式碼」究竟如何定義。

如果事先寫好函式,任何複雜工作都可以用一行指令呼叫,但那不代表整個功能只需要一行程式碼完成。

真正值得討論的,是不依賴事先寫好的專用函式,能否在一行程式中完成運算與輸出。

程式設計的精髓,不只是字數少,而是邏輯清楚、功能完整,而且能夠實際執行。

大家交流技術,能把問題越辯越清楚,比爭輸贏更有意思。😊
tw5127 wrote:
其實這個討論最有趣的地方,是「一行程式碼」究竟如何定義。
如果事先寫好函式,任何複雜工作都可以用一行指令呼叫,但那不代表整個功能只需要一行程式碼完成。
真正值得討論的,是不依賴事先寫好的專用函式,能否在一行程式中完成運算與輸出。
程式設計的精髓,不只是字數少,而是邏輯清楚、功能完整,而且能夠實際執行。
大家交流技術,能把問題越辯越清楚,比爭輸贏更有意思。😊


勉強勉強勉強 說 1 行 程式碼,
只有 內建函數 才叫 1 行 程式碼,
自建函數 絕無可能.

絕對的絕對的絕對的 1 行 程式碼,
只有 組合語言.

任何的 中/高階 程式語言,
即使是 最簡單的
Print "1"
最後 編譯為 EXE
Print "1"
展開後 的 組合語言 也不會是 只有 1 行 程式碼.

★★★ "我要留言" 不回, 只回 1 般回文. ★★★
IQuit wrote:
勉強勉強勉強 說 1...(恕刪)


感謝補充說明。😊

看來我們對「一行程式碼」的定義確實不同。

如果討論的是「完全不使用自建函數、不依賴預先定義的程式碼,單靠一行指令完成指定功能」,那當然可以作為一種挑戰規則。

但這是額外設定的限制條件,並不代表程式語言在技術上只能如此定義。

另外,組合語言是低階語言,與中、高階語言的抽象程度及執行方式不同,不能直接用展開後的機器指令數量,判斷原始程式碼究竟有幾行。

至於程式編譯成 EXE 後有多少機器指令,那是另一個層次的問題。

所以我認為,與其爭論誰的定義才是絕對正確,不如先把挑戰條件講清楚。

技術討論最有價值的地方,不是誰說服誰,而是讓觀念越辯越清楚。😊
tw5127 wrote:
感謝補充說明。😊
看來我們對「一行程式碼」的定義確實不同。
如果討論的是「完全不使用自建函數、不依賴預先定義的程式碼,單靠一行指令完成指定功能」,那當然可以作為一種挑戰規則。
但這是額外設定的限制條件,並不代表程式語言在技術上只能如此定義。
另外,組合語言是低階語言,與中、高階語言的抽象程度及執行方式不同,不能直接用展開後的機器指令數量,判斷原始程式碼究竟有幾行。
至於程式編譯成 EXE 後有多少機器指令,那是另一個層次的問題。
所以我認為,與其爭論誰的定義才是絕對正確,不如先把挑戰條件講清楚。
技術討論最有價值的地方,不是誰說服誰,而是讓觀念越辯越清楚。😊


我 把 我 前 1 樓的 原話 丟給 Google AI.

★★★ "我要留言" 不回, 只回 1 般回文. ★★★
IQuit wrote:
我 把 我 前 1 ...(恕刪)


哈哈,這串討論越來越精彩,連 Assembly、Machine Code 都搬出來了!😄

其實大家講的都有道理,只是「一行程式碼」的定義不同。

不過,一條 CPU 指令、一行組合語言,以及一行高階語言原始碼,畢竟是不同層次的概念。

如果連編譯後的機器指令都算進來,那原本「一行程式碼完成指定功能」的挑戰,恐怕就變成另一個題目了。

技術交流最有趣的地方,就是從不同角度把問題越辯越清楚。

感謝各位高手分享,繼續長知識!😊
tw5127 wrote:
哈哈,這串討論越來越精彩,連 Assembly、Machine Code 都搬出來了!😄
其實大家講的都有道理,只是「一行程式碼」的定義不同。
不過,一條 CPU 指令、一行組合語言,以及一行高階語言原始碼,畢竟是不同層次的概念。
如果連編譯後的機器指令都算進來,那原本「一行程式碼完成指定功能」的挑戰,恐怕就變成另一個題目了。
技術交流最有趣的地方,就是從不同角度把問題越辯越清楚。
感謝各位高手分享,繼續長知識!😊


其實 早在 35 年前 還有個 0 行 程式碼 的 玩意,
Visual Basic 1.0 (初次發表) : 1991 年 5 月,
0 行 程式碼 直接給 標準 Windows 程式.

Delphi 1.0 (初次發表):1995 年 2 月 14 日
號稱 Visual Basic Killer,
所以 我 學了 它.

Windows 11 沒有 Win16 環境,
試 Delphi 2.0

★★★ "我要留言" 不回, 只回 1 般回文. ★★★
關閉廣告
文章分享
評分
評分
複製連結
請輸入您要前往的頁數(1 ~ 15)

今日熱門文章 網友點擊推薦!