編寫一個程序,要求用戶輸入2個數字。程序然後向屏幕(OUT)顯示將第二數字除以第一數字的餘數(模數)的結果。例如,如果第一輸入的號碼14和第二輸入的號碼5,則程序將顯示4.關於小人電腦除數(模數)分數
14模5 = 14 - (2 * 5)= 14 - 10 = 4
14國防部7 = 14 - (2 * 7)= 14 - 14 = 0
你可以假設輸入的號碼總是正數且大於0
你好,這是我不知道如何的問題開始這個問題/做它?
編寫一個程序,要求用戶輸入2個數字。程序然後向屏幕(OUT)顯示將第二數字除以第一數字的餘數(模數)的結果。例如,如果第一輸入的號碼14和第二輸入的號碼5,則程序將顯示4.關於小人電腦除數(模數)分數
14模5 = 14 - (2 * 5)= 14 - 10 = 4
14國防部7 = 14 - (2 * 7)= 14 - 14 = 0
你可以假設輸入的號碼總是正數且大於0
你好,這是我不知道如何的問題開始這個問題/做它?
這只是簡單的算術題 - 讓x = m MOD n
你可以這樣做:
x = m/n ; integer division (truncates)
x = x * n ; multiply back up to get exact multiple
x = m - x ; subtract to get remainder (modulus)
由於小文不僅具有ADD和SUB運算指令,你需要從基本原理實現乘除運算。
在這裏,我們去你必須解決這個使用減法方法的分裂問題..它的作品恰好你的問題尋找兩個數字劃分提醒...
// PRODEUCED由James卡納爾
INP //詢問用戶
BRZ QUIT //停止執行,如果輸入零
STA股息//存儲在股息可變
INP //輸入分隔符
BRZ QUIT //在輸入零時停止執行
01在除法器可變LDA股息//負載
STA DIVIDOR //存儲到ACC
LOOP STA RESULT //存儲臨時結果
LDA RESULT //加載結果
SUB DIVIDOR //將分隔符減去acc
BRP LOOP //循環如果acc爲正數或零
LDA RESULT //結果加載到ACC
OUT //顯示結果
QUIT HLT //停止如果BRZ
HLT // HLT執行
股息DAT //聲明可變
除數DAT //聲明變量
您可以通過減去第一個第二個數字,直到你解決這個摹等負數。這裏有一個工作版本:
INP
STA R0
INP
STA R1
LDA R0
L0 STA R0
SUB R1
BRP L0
LDA R0
OUT
HLT
R0 DAT
R1 DAT
你可以看到這方面的工作在這裏:Modulo operation on LMC emulator.
嗨,這意味着要小男人計算機上完成與被小個子計算機上使用的操作碼。你知道嗎? – Karan
當然 - 你有算術的ADD和SUB指令,所以應該是你需要實現上面的僞代碼。 –
這實際上是我需要幫助,因爲我不知道什麼操作碼以什麼方式使用,但沒關係生病嘗試它謝謝。 – Karan