Typehinting merge #50

已合并
belliash 2019-04-17 11:27:52 +02:00 将 298 次代码提交从 typehinting合并至 master
修改 2 个文件,包含 50 行新增0 行删除
仅显示提交 dc44ee31b8 的更改 - 显示所有提交

44
tests/luhn_verify.aer 普通文件
查看文件

@@ -0,0 +1,44 @@
class Luhn {
private string $number;
string getNumber() {
return $this->number;
}
void setNumber(string $number) {
$this->number = $number;
}
bool validate() {
string $sum;
string $revNumber;
int $len;
$revNumber = strrev($this->number);
$len = strlen($this->number);
for(int $i = 0; $i < $len; $i++) {
$sum += $i & 1 ? $revNumber[$i] * 2 : $revNumber[$i];
}
return array_sum(str_split($sum)) % 10 === 0;
}
}
class Program {
private const NUMBERS = {'3788803280', '6487308345', '5443489710530865', '5539266155200609', '4024007151066296', '4345234978'};
void main() {
int $i, $nums = sizeof($this->NUMBERS);
object $luhn = new Luhn();
while($i < $nums) {
$luhn->setNumber($this->NUMBERS[$i]);
if($luhn->validate()) {
print('The number ' + $luhn->getNumber() + ' has passed the Luhn validation.' + "\n");
} else {
print('The number ' + $luhn->getNumber() + ' has NOT passed the Luhn validation.' + "\n");
}
$i++;
}
}
}

6
tests/luhn_verify.exp 普通文件
查看文件

@@ -0,0 +1,6 @@
The number 3788803280 has passed the Luhn validation.
The number 6487308345 has passed the Luhn validation.
The number 5443489710530865 has passed the Luhn validation.
The number 5539266155200609 has passed the Luhn validation.
The number 4024007151066296 has passed the Luhn validation.
The number 4345234978 has NOT passed the Luhn validation.