编程之战 第三十一章 颜色转换
作者:程序小猿的小说      更新:2019-05-23

  坐着核潜艇在水下玩了整整一天。

  杨成拖着疲惫的身体,被系统传送到了某栋写字楼。

  “呃,真要人命,这么晚还得加班”。

  杨成看着窗外都市的夜景,那灯火通明的街道,行色匆匆的路人们,忍不住感叹道。

  不过,好在情况不算太糟糕。

  有一位挨着坐的美工妹子相伴,再寂寞的晚上估计也不会寂寞了。

  “成哥”,美工妹子凑过来,脸上有些哀怨。

  这就把杨成这厮的注意力都吸引过去了。

  “啥事呢”,杨成的脸上却还是专注的表情。

  他一动不动地盯着电脑屏幕,然后不经意间转过头,和妹子来了个对视,脸上略带腼腆地一笑,整个人显得既憨厚又可爱。

  但愿哥的演技不会太差,杨成在心里暗自嘀咕。

  “我有个问题搞不懂啊”,妹子脸上带着一抹红晕。

  “成哥帮帮我啦”。

  “嗯”,杨成用手扶了扶黑边框眼镜,轻轻地应了一声。

  “经理要我写一个函数,它可以把RGB数字值转换为十六进制的形式”。

  “比如说RGB(255,255,255)可以转换为FFFFFF”。

  “能帮帮我嘛?那些编程的东西,我真的什么都不会呢”。

  说着,妹子纤细的小手轻轻地捏了捏杨成的衣袖。

  “没问题”,杨成眼中一片淡定。

  他举手投足间流露出技术高手的风范。

  首先在脑海中回顾了一下颜色方面的相关知识。

  RGB是一种颜色模式。

  R代表Red,红色,G代表Green,绿色,B代表Blue,蓝色。

  电脑屏幕上的所有颜色,都是由这红色,绿色,蓝色三种色光按照不同的比例混合而成的。

  所以,RGB函数会传进来这三种颜色各自所占的比例,这个比例可以从0到255。

  如上面的例子,如果每一种颜色都是255的最高比例,那么就会得到白色。

  这个问题的关键在于将十进制的颜色比例转化为十六进制的字符串。

  关于进制之间的转换,很多编程语言都提供了API,所以这个问题并不复杂。

  但如果要考虑得比较周全,就必须考虑数值越界问题。

  如果传进来的数字比例小于0,或者大于255怎么办?

  这都是异常情况啊!

  杨成对于这个问题的处理方式很简单:

  小于0就置为0,大于255就置为255呗。

  他很快就解决了问题,并在美工妹子的电脑上留下了一段短小精悍的代码。

  “成哥好棒啊!”,妹子高兴地说道。

  杨成舒服地伸了个懒腰,看了看窗外。

  此时夜深人静了,今天的工作也可以告一段落了。

  “我请你去吃点东西,怎么样?”,杨成趁机发出邀请。

  “可以啊”,妹子痛痛快快地答应了。

  办公室的灯光很快统统熄灭了,整层楼融入了黑夜的静谧之中。

  唯有那服务器的机箱还在一闪一闪地工作着。

  “叮!恭喜您完成了颜色转换的相关任务!”

  “当前积分65分,击败了全球29%的玩家,请您再接再厉!”