日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

文言计算机语言,文言文考试也编程,文言语言!!!(附c/c++自译)

發布時間:2023/12/16 c/c++ 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 文言计算机语言,文言文考试也编程,文言语言!!!(附c/c++自译) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

考試

中考總分120分。其中古代詩歌默寫6分,文言文閱讀11分,古詩鑒賞4分??偣?1分。

古代文學占17.5%

高考總分150分。文言閱讀9分,翻譯10分,古詩詞鑒賞8分,古詩文默寫5分。總共32分。

古代文學占21.3%

可見文言文是十分重要的。

然而。。。你想過用文言文編程嗎???

簡介

這是一款由卡內基梅隆大學一名大四學生(作者名叫 Huang Lingdong)打造的文言文編程語言:文言(wenyan-lang)。

雖然不是最好的語言,但展現了中華民族傳統文化的博大精深。

該語言完全不使用英文字符,只包含繁體中文字符以及繁體的引號「」。

例如:這是他的Hello Word

吾有一數。曰三。名之曰「甲」。

為是「甲」遍。

吾有一言。曰「「問天地好在?!埂?。書之。

云云

編譯為Javascript

var n = 3;

for (var i = 0; i < n; i++) {

console.log("問天地好在。");

}

編譯為Python

a=3

for _rand1 in range(a):

_ans1="問天地好在。"

print(_ans1);

編譯為Ruby

a=3

a.times do |_rand1|

_ans1="問天地好在。"

p([_ans1].join)

end

自譯為c/c++

int n = 3;

for (int i=0;i

printf("問天地好在。");

}

運行:

問天地好在。問天地好在。問天地好在。

wenyan目前可編譯為JavaScript,Python或Ruby,并且將來會支持更多語言(例如C)。

本篇文章的c/c++翻譯,全為作者個人自譯。

基本語法

變量

文言(wenyan)

Javascript

c/c++

吾有一數。曰三。名之曰「甲」。

var a = 3;

int a = 3;

有數五十。名之曰「大衍」。

var dayan = 50;

int dayan = 50;

昔之「甲」者。今「大衍」是矣。

a = dayan;

a = dayan;

吾有一言。曰「「噫吁戲」」。名之曰「乙」。

var b = "alas!";

string b = "alas!";

吾有一爻。曰陰。名之曰「丙」。

var c = false;

bool c = false;

吾有一列。名之曰「丁」。

var d = [];

vector d;

吾有三數。曰一。曰三。曰五。名之曰「甲」曰「乙」曰「丙」。

var a=1,b=3,c=5;

int a=1,b=3,c=5;

順序控制

文言(wenyan)

Javascript

c/c++

若三大於二者。乃得「「想當然耳」」也。

if (3>2)

{ return "of course"; }

if (3>2)

{return"ofcourse";}

若三不大於五者。乃得「「想當然耳」」。若非。乃得「「怪哉」」也。

if(3<=5){return "of course"}else{return "no way"}

if(3<=5){return "of course"}else{return "no way"}

為是百遍。?? 云云。

for (var i = 0; i < 100; i++){ ... }

for (int i = 0; i < 100; i++){ ... }

恆為是。?? 云云。

while (true) { ... }

while (true) { ... }

凡「天地」中之「人」。?? 云云。

for (var human of world){ ... }

for (int human : world){ ... }

乃止。

break;

break;

數學

文言(wenyan)

Javascript

c/c++

加一以二。

1+2

1+2

加一於二。

2+1

2+1

加一以二。乘其以三。

(1+2)*3

(1+2)*3

除十以三。所餘幾何。

10%3

10%3

減七百五十六以四百三十三。名之曰「甲」。

var a = 756-433;

int a = 756-433;

夫「甲」「乙」中有陽乎。

a || b

a || b

夫「甲」「乙」中無陰乎。

a && b

a && b

Objects

文言(wenyan)

Javascript

c/c++

吾有一物。名之曰「甲」。

var a = {};

struct node {} a;

吾有一物。名之曰「甲」。其物如是。物之「「乙」」者。數曰三。物之「「丙」」者。言曰「「丁」」。是謂「甲」之物也。

var a = {b:3, c:"d"}

struct node? {int b=3;char c="d";}a;

函數

文言(wenyan)

Javascript

c/c++

吾有一術。名之曰「吸星大法」。是術曰。??是謂「吸星大法」之術也。

function f(){...}

void xixingdafa () {...}

吾有一術。名之曰「六脈神劍」。欲行是術。必先得六數。曰「甲」。曰「乙」。曰「丙」。曰「丁」。曰「戊」。曰「己」乃行是術曰。??是謂「六脈神劍」之術也。

function f(a,b,c,d,e,f){...}

void liupaishengjian (int a,int b,int c,int d,int e,int f) {...}

吾有一術。名之曰「翻倍」。欲行是術。必先得一數。曰「甲」。乃行是術曰。乘「甲」以二。名之曰「乙」。乃得「乙」。是謂「翻倍」之術也。

function double(a){var b = a * 2; return b;}

viod Double(int a){int b = a * 2; return b;}

施「翻倍」於「大衍」。

double(dayan);

Double(dayan);

吾有一術。名之曰「甲」。欲行是術。必先得一數曰「乙」。二言。曰「丙」。曰「丁」

function a(float b, string c, string d)

void a(int b, string c, string d);

夫「甲」。夫「乙」。夫「丙」。取二以施「丁」。取二以施「戊」。名之曰「己」。

var f = e(a,d(b,c))

int f = e(a,d(b,c))

夫「甲」。夫「乙」。夫「丙」。取二以施「丁」。取二以施「戊」。取一以施「己」。夫「庚」。夫「辛」。取三以施「壬」。名之曰「癸」。

var j = i(f(e(a,d(b,c))),g,h)

int j = i(f(e(a,d(b,c))),g,h)

乃得四十九

return 49;

return 49;

減五十以一。乃得矣

return 50-1;

return 50-1;

乃歸空無

return;

return;

注釋

文言(wenyan)

Javascript

c/c++

批曰。「「文氣淋灕。字句切實」」。

/*文氣淋灕。字句切實*/

/*文氣淋灕。字句切實*/

注曰?!浮肝难詡湟印埂?。

/*文言備矣*/

/*文言備矣*/

疏曰?!浮妇拥谝恢还史Q初。以其陽爻故稱九」」。

/*居第一之位故稱初。以其陽爻故稱九*/

/*居第一之位故稱初。以其陽爻故稱九*/

代碼欣賞

我自己的評價

網上的一些評價也是參差不齊,我認為作者(Huang Lingdong),做這個項目其實只是一個期末作業亦或業余愛好。把這個當一件有趣的事罷了。并不希望成為主流或十分強大的語言。

我認為,作者既然沒說這是一個多么認真、能用于生產環境的正式項目。而從這玩笑中尋找意義和用途,才是沒意義的是。

因為文言語言可以解釋成各種語言。他可做的是還是較多的。(其中洛谷題庫支持文言語言是一個很好的例子。)

這是A+B problem 的文言:

施「require('fs').readFileSync」於「「/dev/stdin」」。名之曰「數據」。

施「(buf => buf.toString().trim())」於「數據」。昔之「數據」者。今其是矣。

施「(s => s.split(' '))」於「數據」。昔之「數據」者。今其是矣。

注曰。「「文言尚菜,無對象之操作,故需 JavaScript 之語法」」。

夫「數據」之一。取一以施「parseInt」。名之曰「甲」。

夫「數據」之二。取一以施「parseInt」。名之曰「乙」。

加「甲」以「乙」。書之。

抱歉,我自己看文言代碼是看不了的。我也不希望上面的一些有識之士把文言語言作為NOI信息競賽或計算機專業的必學語言。(除非想復辟繁體字)

Esolang

Esoteric programming language,簡稱 Esolang,它們的設計被用于測試計算機語言設計的極限,作為一個概念的證明,或僅僅是一個玩笑。Esolang 創作者通常并不打算讓它成為主流編程語言,他們幾乎不會在意語言的可用性,甚至恰恰相反,會故意增加使用難度。(我介紹這個你們自己品)

比如 Brainfuck,它是在 1993 年被創造的編程語言,語法僅包含八種符號,沒有任何單詞,用它打印 Hello world 是這樣的:

++++++++++[>+++++++>++++++++++>+++>+<<<

>++.>+.+++++++..+++.>++.<

>.+++.------.--------.>+.>.

再比如 MarioLANG,它同樣只能使用符號,需要使用形似馬里奧關卡的語法來書寫:

++++: > > +:+:+:+:+:+:+:::::

====+ >^=== """=================

+:-):(:^= = !

========= = #

= ! .+.,:-<

=### ======"

Parenthesis Hell,言如其名,括號地獄,只能使用括號來書寫:

(()()(()()(()()()()((()()(()(()((()((()()()((()((()()()((()((((()()(()(

)()()()()(((()(((()((()((((()(((()()(()()((()((()()()((()()(()()()()(()

()()()(()()()()(()(())))))))))))))))))))))))))))))))))))))))))))))))))

傳送門

在線編輯器:http://wenyan-lang.lingdong.works/ide.html

下載編譯器:https://github.com/LingDong-/wenyan-lang#installation

開源代碼:https://github.com/LingDong-/wenyan-lang

-----------------------------END--------------------------------

總結

以上是生活随笔為你收集整理的文言计算机语言,文言文考试也编程,文言语言!!!(附c/c++自译)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。