Programming 板


LINE

我之前用递回的方式去写 不过速度实在是不够快 後来就把脑筋动到乘法除法上面 想法是:假设要从X之中取Y个数(ex:从五之中挑三个数) 我就先检查是否 3*2 -1 < 5 因为不是 我就把它换乘从五之中取 (5-3) = 2个数 然後用阵列把X 到 X-Y+1的数(这题是5,4)存进去 接下来依序把阵列中的X值读出来看是否可以被Y整除 可以就把除过的商存回阵列 拿Y-1去重新再 进行一次 一直做到Y=2也结束之後 把阵列中的所有X值全部相乘 以下是写出来的code: .data X: .word, 0 Y: .word, 0 str: .asciiz "please type two integers, and each with the enter key\n" str2: .asciiz " is the combination results.\n" strt: .asciiz "got a problen\n" Calc: .space 64 .text .globl main main: #print string li $v0, 4 la $a0, str syscall #read X Y li $v0, 5 syscall sw $v0, X li $v0, 5 syscall sw $v0, Y #start to calc lw $s0,X #s0 = x lw $s1,Y la $s2,Calc step1: #test if x<y slt $t0,$s0,$s1 bne $t0,$zero,change j step2 step2: #test if y*2-1 is bigger than x or not add $t1,$s1,$s1 addi $t1,$t1,-1 slt $t0,$t1,$s0 beq $t0,$zero,minus add $t2,$s0,$zero #X add $t3,$s1,$zero #Y add $t4,$s2,$zero #arrayadress add $s3,$zero,$zero #arraysize step3: #create an array to store sw $t2,0($t4) addi $t2,$t2,-1 addi $t3,$t3,-1 addi $t4,$t4,4 addi $s3,$s3,1 syscall add $t4,$s2,$zero add $t3,$s1,$zero step4: #start to divide lw $t2,0($t4) rem $t0,$t2,$t3 #calc t0 = t2$t3 beq $t0,$zero,divide addi $t4,$t4,4 j step4 step5: #get ready to calc addi $s3,$zero,1 step6: #calc lw $t2,0($s2) mul $s3,$s3,$t2 addi $s2,$s2,4 addi $s3,$s3,-1 bne $s3,$zero,step6 step7: #output li $v0,1 move $a0,$s3 syscall li $v0,4 la $a0,str2 syscall li $v0,10 syscall change: #X,Y中较大的 为从中选择的 add $t5,$s0,$zero add $s0,$s1,$zero add $s1,$t5,$zero j step2 minus: #如果是C7取4这种 换成C7取3 addi $s3,$zero,1 beq $s0,$s1,step7 #if X=Y answer would be 1 sub $t5,$s0,$s1 add $s1,$t5,$zero j step3 divide: #得到商数 存回阵列 检查Y=2是否已经做完 addi $t1,$zero,1 div $t0,$t2,$t3 sw $t0,0($t4) addi $t3,$t3,-1 beq $t3,1,step5 add $t4,$s2,$zero j step4 可是连一开始都会有问题 可以告诉我是哪里写错吗 感谢 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.106.60







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP