Pascal 帕斯卡数的可除性
我想写一个pascal程序,检查特定的数字是否可以被2,3,5,7,9和11整除,以及这些数字的和是偶数还是奇数。最后我想写一句话,比如“这个数字可以被5和9整除”,这些数字的和是偶数/奇数。我该怎么办 使用模量:Pascal 帕斯卡数的可除性,pascal,Pascal,我想写一个pascal程序,检查特定的数字是否可以被2,3,5,7,9和11整除,以及这些数字的和是偶数还是奇数。最后我想写一句话,比如“这个数字可以被5和9整除”,这些数字的和是偶数/奇数。我该怎么办 使用模量: program ModulusTest; begin if 8 mod 2 = 0 then begin write(8); writeln(' is even'); en
program ModulusTest;
begin
if 8 mod 2 = 0 then
begin
write(8);
writeln(' is even');
end;
if 30 mod 5 = 0 then
begin
write(30);
writeln(' is divisible by 5');
end;
if 32 mod 5 <> 0 then
begin
write(32);
writeln(' is not divisible by 5');
end;
end.
程序模块测试;
开始
如果8模2=0,则
开始
写(8);
writeln(‘是偶数’);
结束;
如果30模5=0,则
开始
写(30);
writeln('可被5整除');
结束;
如果32模5 0,则
开始
写(32);
writeln('不能被5'整除);
结束;
结束。
模数是整数除法后剩下的:)这是我的代码,我分为两部分:
program checkNumber;
var number : integer;
divider : string;
digit1, digit2, sum : integer;
begin
//First//
write('Number : '); readln(number);
if (number MOD 2 = 0) then divider := divider+'2, ';
if (number MOD 3 = 0) then divider := divider+'3, ';
if (number MOD 5 = 0) then divider := divider+'5, ';
if (number MOD 7 = 0) then divider := divider+'7, ';
if (number MOD 9 = 0) then divider := divider+'9, ';
if (number MOD 11 = 0) then divider := divider+'11, ';
write('This number is divisible by '); write(divider);
////////////////////////////////////////////////////////
//Second//
digit1 := number DIV 10;
digit2 := number MOD 10;
sum := digit1 + digit2;
write('and the sum of the numbers is ');
if (sum MOD 2 = 0) then write('even') else write('odd');
////////////////////////////////////////////////////////
end.
第一部分
您需要MOD(模数)操作来获取除法器值列表:
write('Number : '); readln(number);
if (number MOD 2 = 0) then divider := divider+'2, ';
if (number MOD 3 = 0) then divider := divider+'3, '; //divider 2 3 5 7 9 11
.
.
然后将除法器作为字符串保存到变量divider,并将其写入监视器
write('This number is divisible by '); write(divider);
第二部分
您需要使用DIV(除法)和MOD(模数)操作将数字分隔为单个变量。在我的代码中,我将输入的数字限制为2位(1到99):
(如果要输入更大的数字,请使用if..then..函数更改代码)
然后使用MOD检查数字是否为偶数或奇数:
if (sum MOD 2 = 0) then write('even') else write('odd');
不,我真的不知道怎么开始。如果余数为零,一个数甚至可以被另一个数整除。使用mod操作员检查该情况。使用奇数函数测试数字是否为奇数。若要对构成数字的数字求和,请将数字的模10加到和中,然后在循环中将数字除以10,直到数字为零。您可以使用mod来检查特定的数字GREAT,谢谢!一个问题:8,30,32意味着什么?或者它们只是随机数,这只是一个例子?它们只是完全虚构的数字:)好的。你能告诉我为什么在上一个例子中你用了而不是=吗?如果一个数等于零,那么这意味着第一个数可以被第二个数整除。简单地说就是不相等——因此,如果被5除后的余数不是零,那么它就不能被5除。是的,它是这样做的!:)
if (sum MOD 2 = 0) then write('even') else write('odd');