【发布时间】:2016-05-31 11:34:35
【问题描述】:
我必须在学校编写一个程序,允许用户输入GTIN-8 条形码的 7 位数字并计算校验位。为了计算校验位,七个输入数字乘以 3、1、3、1 等。
for (i = 0; i < 7; i++)
{
//Convert String to Character
ch = gtinNum[i];
//Convert Character to Integer
number = Convert.ToInt32(ch);
product = number * weights[i];
total = total + product;
}//end for loop
之后,总数从最近的前十位中取走。例如,如果总数是 43,那么它将是 50-43。 如何以最简单的方式四舍五入到前十位?
【问题讨论】:
-
如何使用模数将值降低到 0 到 10 之间,然后简单地从 10 中减去?
10 - (total % 10)? -
您实际上可以查看从下一个最高的十倍数中减去的实际意味着。然后看看是否有内置的操作符可以做同样的事情。
-
使用纯
int数学是total / 10 * 10 + 10。
标签: c#