TypeCodes

由学生按某规则依次报数的游戏引发的问题

前段时间Q群里有提问如下,编写程序解决一个学生按规则依次报数的体育游戏问题。编程语言不限,Java, C#, Ruby, C++, Js, Python, Scala, objective-C统统可以,小语种也没问题。

学生按某规则依次报数的游戏

1 问题描述:
你是一名体育老师,在某次课距离下课还有五分钟时,你决定搞一个游戏。此时有100名学生在上课。游戏的规则是: 1. 你首先说出三个不同的特殊数,要求必须是个位数,比如3、5、7。 2. 让所有学生拍成一队,然后按顺序报数。 3. 学生报数时,如果所报数字是第一个特殊数(3)的倍数,那么不能说该数字,而要说Fizz;如果所报数字是第二个特殊数(5)的倍数,那么要说Buzz;如果所报数字是第三个特殊数(7)的倍数,那么要说Whizz。 4. 学生报数时,如果所报数字同时是两个特殊数的倍数情况下,也要特殊处理,比如第一个特殊数和第二个特殊数的倍数,那么不能说该数字,而是要说FizzBuzz, 以此类推。如果同时是三个特殊数的倍数,那么要说FizzBuzzWhizz。 5. 学生报数时,如果所报数字包含了第一个特殊数,那么也不能说该数字,而是要说相应的单词,比如本例中第一个特殊数是3,那么要报13的同学应该说Fizz。如果数字中包含了第一个特殊数,那么忽略规则3和规则4,比如要报35的同学只报Fizz,不报BuzzWhizz。 现在,我们需要你完成一个程序来模拟这个游戏,它首先接受3个特殊数,然后输出100名学生应该报数的数或单词。比如, 输入 3,5,7 输出(片段) 1 2 Fizz 4 Buzz Fizz Whizz 8 Fizz Buzz 11 Fizz Fizz Whizz FizzBuzz 16 17 Fizz 19 Buzz … 一直到100

- 阅读剩余部分 -

理解有符号和无符号的字符数和整数的转换

网上关于有符号、无符号字符转换成有符号、无符号整形数据的问题,自己写了一个测试程序,分析了下,挺有意思的。

1 测试说明

用的是自己的win7 64位系统,处理器当然是Intel的,因此是前文提到的小端模式。默认按32位(总线)处理,即一个整型4个字节,长度共 2^32 = 4294967296 字节;有符号字符char类型数据的范围是 -128~127 (对应二进制 11111111~01111111),无符号字符 unsinged char 类型数据范围是 0~255(对应二进制 00000000~11111111)。

C语言有符号和无符号数

- 阅读剩余部分 -

C语言字节序的大小端模式

关于字节序的大小端模式,个人认为CSDN上Hackbuteer1作者的这篇文章《大端模式和小端模式》讲解的很清晰。这里MARK一下自己的学习心得:

C程序内存映射模式

1 原文精华
小端模式[Little-Endian]:内存块低地址存放元素的低位(字节),内存块高地址存放元素的高位(字节); 大端模式[Big-Endian]:内存块低地址存放元素的高位(字节),内存块高地址存放元素的低位(字节)。

采用小端模式的处理器包括:PDP-11、VAX、Intel系列微处理器和一些网络通信设备; 采用大端模式的处理器包括:IBM3700系列、PDP-10、Mortolora微处理器系列和绝大多数的RISC处理器

- 阅读剩余部分 -

C语言将十进制字符串转成十进制整数

通过上一篇文章完成了十六进制字符串转成十进制整数,同理也很容易写出十进制字符串转成十进制整数的函数。考虑到十进制的字符串中可能会出现正负号,即转换后可能出现负整数,同样也增加了对这种情况的处理。例如将十进制的字符串"0621"、"+621"、"6210"、"-1234"转换十进制的整数,即621、621、6210、-1234。下面同样是正向和逆向两种方法的具体代码:

- 阅读剩余部分 -

C语言将十六进制字符串转成十进制整数

C/C++处理十六进制文件中的报文内容时,经常会遇到先读取报文头中的长度(例如"E2"、"1F"、"-eE2"等等),再读取报文体中的内容的情况。那么就需要把报文头中表示长度的十六进制字符串转换成十进制的整形数据。

转换方法有两种,一种是正向从字符串低位到高位依次转换,另一种是逆向从字符串高位到低位依次转换。原理都是利用指针变量依次指向十六进制字符串中的单个字符,然后通过ASCII码表转换成对应的整数。考虑到十进制的字符串中可能会出现正负号,即转换后可能出现负整数,所以增加了对这种情况的处理。下面是两种方法的具体代码:

- 阅读剩余部分 -

决定关闭博客使用SSL证书访问

前几天博客使用了NameCheap的证书,将原来的http访问改成了https访问(详戳这里)。由于下面的原因,现决定不再使用SSL证书,恢复http访问。

使用SSL证书访问博客

1 无法通过https加载站外静态资源文件

主要是因为目前博客所有的静态资源文件,如css样式文件、js脚本文件、图片文件等,都使用了新浪SCS云存储。最初,博客程序中还存在类似于https://cdn.typecodes.com/libs/img/typecodes.png这种http请求,所以浏览器地址栏会出现黄色警告图标。后来将所有的http请求全部改成https,结果浏览器地址栏图标变成正常的绿色图标了。

- 阅读剩余部分 -

阿里云CentOS 6.5系统LNMP环境安装SSL证书

近期参加了github的一项优惠活动,获得了一年免费的SSL证书。下面是具体的安装过程,当然SSL证书的安装跟博客程序(不管是wordpress或者typecho等等)无关,只是跟服务器的类型(比如Nginx、Apache或者IIS等)有关。

----------操作说明---------- 系统: 阿里云CentOS 6.5 环境: LNMP(只需配置Nginx服务器就行) 操作工具: SecureCRT 7.0 博客程序: Typecho 14.10 SSL证书提供商: PositiveSSL from Namecheap

- 阅读剩余部分 -

更新新浪云存储(SCS) for Typecho 插件版本V1.1.1

1 更新说明

感谢 @奇趣铺 的使用反馈,插件版本更新至最新的V1.1.1。更新内容如下:

2增加SCS存储路径参数配置用户能更自由定义SCS存储路径 3取消SCS附件前缀用Unix time stamp格式命名保持原附件名称不变
2 版本升级方法

下面对于 Linux主机 和 Windows主机 的升级方法同样适用于之前没有安装该插件的童鞋,步骤完全一样。

- 阅读剩余部分 -