0

我需要打印 num1 和 num2 之间的奇数,到目前为止我想出的代码会打印所有数字。我一直在努力让它只打印奇数。

addi $v0, $zero, 4    
la $a0, str.displaynum    
syscall

add $s0,$zero, $t0 #starting number / loop counter   
loop:

addi $v0, $zero, 1     
add $a0,  $zero, $s0    
syscall


addi $a0,$zero,','     
addi $v0,$zero, 11    
syscall    

addi $s0,$s0,1 #add one to loop count    
ble $s0, $t1, loop #end loop if number is equal to end number    
4

1 回答 1

0

这取决于您使用的是哪种编程语言,我无法从外观上看出,但是您想要什么与 Modulu 一起使用。它在大多数程序中使用 % 符号表示。Num1 % Num2 与返回 num1 除以 num2 的余数相同。例如 5 % 2 是 1,因为 5/2 是 2,余数是 1。所以你会使用 if 语句。

if(number%2==0) then number is even; else number is odd;

你可以让它打印出 else 子句中的奇数。

你也可以做一个循环。

while(number>1) do number=number-2; done;
if(number==0) then number is even; else number is odd;
于 2013-07-28T01:42:34.473 回答