urnotcarol / postnet

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

任务卡008 TDD - Postnet

任务描述

为了快速对信件进行分类,美国联邦邮政局鼓励信件量大的公司用「条码」来代替邮编。 转换表格如下:

 1	:::||
 2	::|:|
 3	::||:
 4	:|::|
 5	:|:|:
 6	:||::
 7	|:::|
 8	|::|:
 9	|:|::
 0	||:::

示例

示例:	|	|:|::	:|:|:	|:::|	:::||	::||:	:|:|:	|
条码:	Frame	Digit-1	Digit-2	Digit-3	Digit-4	Digit-5	CD	Frame
95713	Bar	(9)	(5)	(7)	(1)	(3)	(5)	Bar

编码后的条码两边分别有一个竖线。 邮编的每一位数字都被编码成对应的「条码」。 所有数字都被编码后,后边会跟着一位「校验码」,它的计算规则如下:

把邮编中的所有数字相加,然后所得的和加上「校验码」必须是 10 的倍数。 举个例子: 邮编 95713 所有数字求和是9 + 5 + 7 + 1 + 3 = 2525 + 5 = 30,30 是 10 的倍数。所以校验码就是 5。

需求

实现如下功能:

  • 输入一个邮编(5 位,9 位,或 10 位:9 位就是 10 位把“-”去掉后的样子),输出转换后的「条码」(记得不要编码那个减号“-”)
  • 输入一个「条码」,程序把它转回邮编,如果是 9 位的,记得加个“-”

About


Languages

Language:JavaScript 100.0%