2013-07-28 6 views
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  

답변

0

사용중인 프로그래밍 언어에 따라 다르지만 Modulu에서 원하는 것을 무엇을 원하는지에 따라 다릅니다. 대부분의 프로그램에서 % 기호를 사용하여 나타납니다. Num1 % Num2는 num1을 num2로 나눈 나머지를 반환하는 것과 같습니다. 예를 들어 5 % 2는 1이고, 5/2는 2이고 나머지 1은 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; 
+0

저는 MIPS를 사용하고 있습니다. – Aakeeb

+0

여전히 도움이된다면 [도움이 될 것입니다] (http://stackoverflow.com/questions/21695333/how-do-i-correctly-use-the-mod-operator-in-mips). –

관련 문제