当前位置: 首页 > news >正文

为什么程序员发现不了自己的BUG?

最近在朋友圈流行了这样的一个小学数学题,当然结果是“出乎意料”。看似简单的结果,儿童一般能够做对,而大人却几乎很少有人做对,分析下来,原因无非是惯性思维下的粗心导致的完全错误。今天我们就一起来分析下思考过程。


看图可知,猫=X 猫头=Y 猫爪=Z,即

3X=30

X+Y+Y=20

Y+Z+Z=9

所以 X=10 Y=5 Z=2

故结果 Y+Z+X=5+2+10=17


一般大多数的第一结果可能都是这样!等等,注意最后一个应该是Y+Z×X=?


心中一百只草泥马奔过,再算一遍

Y+Z*X=5+2*10=25


对不起还是错的,因为猫爪从2只

变成了1只


所以应该是Y+Z/2*X=?

心中一千只草泥马奔过,再算一次

Y+Z/2*X=5+2/2*10=15


对不起还是错的,因为最后一只猫少一个爪子,所以应该是Y+Z/2*(X-Z/2)=?


心中一万只草泥马奔过,再算一次

Y+Z/2*(X-Z/2)=5+2/2*(10-2/2)=14


其实大家会发现这个题目非常的“坑爹”,不就是故意折腾人么。但是在很多系统中,开发看到测试提出的Bug也是这样的感觉。作为开发就和大人做这道题一样,看到问题往往会以自己的惯性思维来理解,理所当然地认为就这样就对了,导致真相就被隐藏了。


而儿童一般能够做对这道题的原因,一方面是老师有引导性地提示细心的重要性,另一方面是长期踩雷积累的经验。这也是测试人员和开发人员的区别之一。


精彩回顾  点蓝字即可  


 史上最深(sàng)入(xīn)浅(bìng)出(kuáng)的IT术语解读

 如何假装成为一名好程序员?

 招聘黑话大全,能听懂证明你是历经磨难的老司机

 当流行歌曲遇到程序猿——有没有那么一个bug,会让你突然想起我

 让程序员彻夜难眠,难道你良心不会痛么?

 程序员的思考:一年管理成富翁,三年市场路路通,十年技术一场空


相关文章:

  • 女程序媛与男程序猿的一天
  • 程序员相声:增删改查
  • 如何用修灯泡解读IT行业
  • 如何机智的回复诈骗短信!
  • 【趣图】bug修复,太逼真了
  • 年终了,程序员这样谈加薪就稳了!
  • 揭秘各大平台推荐算法!
  • 最受世界500强青睐的编程语言,竟是他们?2018年Java发布计划;巴塞罗那转投Linux阵营;Element 2.0.11
  • 程序员听到bug后的N种反应…
  • 如何假装成一个IT劳模?
  • 女博士5天被骗85万!如果网络骗子遇到的是程序员……
  • 程序员携机器人求婚被拒:去和机器人过日子
  • 从“产品经理让程序员买包烟”这个需求说起
  • IT界的一些朗朗上口的名言
  • 程序猿如何在跳槽前提升自身竞争力?(内附免费资源+面试技巧)
  • CentOS从零开始部署Nodejs项目
  • github指令
  • JAVA并发编程--1.基础概念
  • JS题目及答案整理
  • laravel with 查询列表限制条数
  • magento2项目上线注意事项
  • Python代码面试必读 - Data Structures and Algorithms in Python
  • 得到一个数组中任意X个元素的所有组合 即C(n,m)
  • 深入浏览器事件循环的本质
  • 使用 Xcode 的 Target 区分开发和生产环境
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • Java性能优化之JVM GC(垃圾回收机制)
  • RDS-Mysql 物理备份恢复到本地数据库上
  • ​2020 年大前端技术趋势解读
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • #define,static,const,三种常量的区别
  • (04)odoo视图操作
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (C语言)fread与fwrite详解
  • (Redis使用系列) Springboot 使用redis实现接口幂等性拦截 十一
  • (二十三)Flask之高频面试点
  • (附源码)小程序儿童艺术培训机构教育管理小程序 毕业设计 201740
  • (七)MySQL是如何将LRU链表的使用性能优化到极致的?
  • (十)c52学习之旅-定时器实验
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (算法二)滑动窗口
  • (学习日记)2024.04.04:UCOSIII第三十二节:计数信号量实验
  • (一)Neo4j下载安装以及初次使用
  • (转贴)用VML开发工作流设计器 UCML.NET工作流管理系统
  • (最简单,详细,直接上手)uniapp/vue中英文多语言切换
  • ******IT公司面试题汇总+优秀技术博客汇总
  • 、写入Shellcode到注册表上线
  • .net core MVC 通过 Filters 过滤器拦截请求及响应内容
  • .NET NPOI导出Excel详解
  • .net 受管制代码
  • .NET 中让 Task 支持带超时的异步等待
  • .NET3.5下用Lambda简化跨线程访问窗体控件,避免繁复的delegate,Invoke(转)