程序员的递归情话

CSDN博客举行了“程序员(媛)恋爱/结婚”为主题的征文活动,应邀写了这一篇博客。

前言

我是一个半路出家的伪程序员,今天就写一些自己和老婆之间关于递归的情话。

关于名字的递归情话

老婆名字中,最后一个字的拼音是 MIN。在恋爱的时候,我给她发过两条这样的信息:

MIN = MIN Is Nice
MIN

老婆回复了几个问号,叫我说人话。我只好解释一通:

第一行是 MIN 的定义,MIN = MIN Is Nice
第二行是对 MIN 进行调用:MIN

由于 MIN 的定义中有它自己,所以 MIN 的调用是一个递归,会以以下的方式无止境地进行:

MIN
MIN Is Nice
MIN Is Nice Is Nice
MIN Is Nice Is Nice Is Nice
MIN Is Nice Is Nice Is Nice Is Nice
MIN Is Nice Is Nice Is Nice Is Nice Is Nice

所以,意思是:老婆,您永远 Nice ^ _ ^

泛化

上面的例子中,MIN, Is, Nice 的首字母正好也是 MIN,泛化难度是比较大的。不过,如果不追求这么极致的话,可以通过以下的方式泛化成任何大家需要的句子。

<对象> = <对象> is <形容词>

如:

  1. XiaoMing = XiaoMing is smart

  2. XiaoHua = XiaoHua is beautiful and kawaii

递归副词的赞美

一天,老婆穿了一件的礼服,很漂亮。但我觉得漂亮,很漂亮,非常漂亮都不足以形容,于是,我想起了递归:

VERY = VERY very
You are VERY beautiful!

第一行是对 VERY 的定义,第二行中,有对 VERY 进行调用,由于 VERY 的定义包含了自己,所以会以递归的方式进行:

You are VERY beautiful!
You are VERY very beautiful!
You are VERY very very beautiful!
You are VERY very very very beautiful!
You are VERY very very very very beautiful!

老婆,您非常非常非常非常非常非常非常非常・・・・・・漂亮

泛化

和上面的例子相似,不过,这里是通过副词的递归进行赞美和肯定,当然,如果不怕对方生气的话,也是可以用于负面的,方法是:

<副词> = <副词> 副词
  1. FOREVER = FOREVER forever
    I love you FOREVER!

递归刷屏

和老婆表忠,一句 I love you,好像力度不够,于是,我用递归版本:

julia
R
Bash
common lisp
haskell
python3

泛化

定义一个函数,函数打印一个想说的话,或者 ASCII 表情,ASCII 画之类,在函数的最后返回函数自己。

结语

本文讲述了我与老婆之间关于递归的一些故事,并给出了泛化的方法,希望可以帮到大家。

PS:其实这些例子,我上课的时候也经常拿来用。大家印象会比较深刻嘛 ^ _ ^
PS2:按我老婆的话,嫁给程序员其实还不错的,平时可以修修电脑,搞搞wifi,部署一些家庭应用之类。而且,最重要的是:给他一台电脑,他就会愉快地蹲在电脑前打码,不用担心有外遇。

  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值