今天在 stackexchange 上看到一篇非常有趣的帖子,是关于如何用各种编程语言实现 2 + 2 = 5 的,2 + 2 怎么会等于 5 呢?我一开始也很不解,不过看了下面各种编程语言实现的方法,我震惊了,让我又一次相信人类真是一种不可思议的生物。
我们提供的服务有:成都网站制作、成都网站建设、微信公众号开发、网站优化、网站认证、灵丘ssl等。为上1000家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的灵丘网站制作公司
1、JAVA
- import java.lang.reflect.Field;
- public class Main {
- public static void main (String[] args) throws Exception {
- Class cache = Integer.class.getDeclaredClasses ()[0];
- Field c = cache.getDeclaredField ("cache");
- c.setAccessible (true);
- Integer[] array = (Integer[]) c.get (cache);
- array[132] = array[133];
- System.out.printf ("%d",2 + 2);
- }
- }
输出:
5
2、C
- int main () {
- char __func_version__[] = “5″; // For source control char b[]=”2″, a=2;
- printf (“%d + %s = %s\n”, a, b, a+b);
- return 0;
- }
3、C (Linux, gcc 4.7.3)
- #include
- int main (void)
- {
- int a=3, b=2;
- printf (“%d + %d = %d”, –a, b, a+b);
- }
4、Haskell
- λ> let 2+2=5 in 2+2 5
5、BBC BASIC
- MODE 6
- VDU 23,52,254,192,252,6,6,198,124,0
- PRINT “2+2=”;2+2
- PRINT “2+3=”;2+3
6、Python
- >>> patch = '\x312\x2D7' >>> import ctypes;ctypes.c_int8.from_address (id (len (patch)) +8) .value=eval (patch)
- >>> 2 + 2 5
7、JavaScript
- g = function () {
- H = 3 return H + H
- }
- f = function () {
- Η = 2 return Η + H
- }
- // 3 + 3 = 6 alert (g())
- // 2 + 2 = 5 alert (f())
8、Bash
9、PHP
- echo ’2 + 2 = ‘ . (2 + 2 === 4 ? 4 : 2 + 2 === 5 ? 5 : ‘dunno’);
10、Perl
- # Generic includes use strict;
- use warnings;
- use 5.010;
- use Acme::NewMath;
- # Ok, time to begin the real program. if (2 + 2 == 5) {
- say 5;
- }
- else {
- say "Dunno...";
- }
11、C#
- static void Main (string[] args)
- {
- var x = 2;
- var y = 2;
- if (1 == 0) ;
- {
- ++x;
- }
- Console.WriteLine (x + y);
- }
12、C++
- #include
- class Int
- {
- public:
- Int (const int& a) : integ (a) {}
- friend std::ostream& operator<<(std::ostream& oss, const Int& rhs)
- {
- return oss << rhs.integ;
- }
- int operator+(Int o)
- {
- if(integ == 2 && o.integ == 2)
- return integ+o.integ+1;
- return integ+o.integ;
- }
- private:
- int integ;
- };
- int main ()
- {
- Int two = 2;
- std::cout << two << " + " << two << " = " << two + two;
- }
各位有什么补充的,发挥你的想象吧,评论中告诉我们。
当前名称:有趣啊!各种编程语言实现2+2=5
路径分享:http://www.shufengxianlan.com/qtweb/news23/62973.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联