看到一个暴强的翻译,闲的蛋疼,写个c#版的
生活随笔
收集整理的這篇文章主要介紹了
看到一个暴强的翻译,闲的蛋疼,写个c#版的
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在豆瓣上看到一篇關于拿破侖的翻譯,文科生的翻譯有幾段相當傳神,不得不佩服漢語的強大。有好事者還用程序語言實現了一下,現已有java、python和html的版本,我也來寫個渺小的C#版本,運行結果和java版是一致的,但是本文的這個稍作抽象(java版的我不覺得有多好,甚至應該說寫得真爛),更符合C#程序員的閱讀習慣。貼代碼先:
【渺小滴C#版(知道運行結果又如何)】
using?System.Collections.Generic;
public?abstract?class?Person
{
????///?<summary>
????///?name
????///?</summary>
????public?string?Name?{?get;?set;?}
????///?<summary>
????///?Chrysanthemum?Damage?Per?Second
????///?</summary>
????public?int?CDPM?{?get;?set;?}
}
public?class?Enemy?:?Person
{
????public?Enemy(string?name,?int?cdpm)
????{
????????this.Name?=?name;
????????this.CDPM?=?cdpm;
????}
????public?void?Shout()
????{
????????if?(this.CDPM?>?0)
????????{
????????????Console.WriteLine(string.Format("{0}?says:?we?are?invincible!!!",?this.Name));
????????}
????????else
????????{
????????????Console.WriteLine(string.Format("{0}?says:?......",?this.Name));
????????}
????}
????public?bool?IsCanBeatNapoleon(Napoleon?n)
????{
????????if?(n?==?null)
????????{
????????????throw?new?ArgumentNullException("Napoleon?was?not?initialized...");
????????}
????????return?this.CDPM?>?n.CDPM;
????}
}
public?class?Napoleon?:?Person
{
????private?IList<Enemy>?enemies?=?new?List<Enemy>();
????private?Napoleon()
????{
????????this.Name?=?"Napoleon";
????????this.CDPM?=?100000;
????????enemies.Add(new?Enemy("Italy",?100));
????????enemies.Add(new?Enemy("Egypt",?100));
????????enemies.Add(new?Enemy("Russia?",?100));
????}
????private?void?Speak()
????{
????????Console.WriteLine("My?enemy?number:?"?+?enemies.Count);
????????IList<Enemy>?trueEnemies?=?new?List<Enemy>();
????????foreach?(Enemy?item?in?enemies)
????????{
????????????if?(item.CDPM?>?CDPM)
????????????{
????????????????trueEnemies.Add(item);
????????????}
????????}
????????Console.WriteLine("The?number?of?enemies?who?can?beat?me:?"?+?trueEnemies.Count);
????????foreach?(Enemy?item?in?enemies)
????????{
????????????do
????????????{
????????????????item.Shout();
????????????}
????????????while?(item.IsCanBeatNapoleon(this));
????????}
????????Console.WriteLine("I?am?{0},my?cdpm?is?{1}",?this.Name,?this.CDPM);
????????Console.WriteLine("Dispose?enemy?list...");
????????enemies.Clear();
????????Console.WriteLine("Enemy?list?disposed!");
????}
????static?void?Main(string[]?args)
????{
????????(new?Napoleon()).Speak();
????????Console.Read();
????}
}
最后,弱弱問一下,我怎么覺得程序實現的都和翻譯無關呢? 比文科的翻譯遜色不是一點點。
轉載于:https://www.cnblogs.com/jeffwongishandsome/archive/2010/10/11/1848228.html
總結
以上是生活随笔為你收集整理的看到一个暴强的翻译,闲的蛋疼,写个c#版的的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用临时表的GridView分页
- 下一篇: 头像裁剪上传插件php,PHP+ajax