iT邦幫忙

2021 iThome 鐵人賽

DAY 25
0
自我挑戰組

CPE題目練習系列 第 25

[Day25]Primary Arithmetic

  • 分享至 

  • xImage
  •  

上一篇介紹了Funny Encryption Method,這題介紹了當1個數字是十進位以及十六進位時,他們轉為二進為時有多少個1,使用Integer.parseInt以及Integer.bitCount就可以很輕鬆地寫出來了,還不知道這兩個是做什麼用的人可以去看看上一篇喔。

今天講解的題目是Primary Arithmetic
先附上程式碼:

import java.util.;
import static java.lang.System.
;
public class main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNextInt()) {
int A = sc.nextInt();
int a = sc.nextInt();
if (A == 0 && a == 0)
break;
int B = 0;
int b = 0;
while (A != 0 || a != 0) {
int sum = b + A % 10 + a % 10;
if (sum >= 10)
++B;
b = sum / 10;
A /= 10;
a /= 10;
}
if (B == 0)
System.out.println("No carry operation.");
else if (B == 1)
System.out.println("1 carry operation.");
else
System.out.println(B + " carry operations.");
}
}
};

這題題目要問我們任兩個數字,不易定要同位數,加起來之後總共進位幾次,%就是mod,使用這個就可以取餘數11%10=1,這樣不管多少,都可以取個位數的來相加,大於10的話次數記得加起來,之後再/10,如果不足10的話就會歸0,最後在依照判斷來輸出,因為1跟1以上的最後有一個s,所以要分開判斷,這邊要注意一下,這題不難,基本上就是文章翻譯可能會出現問題,畢竟進位的英文不常看到,題目的Arithmetic就是算術的意思。
今天的講解就到這裡。
明天也是新的題目,會介紹Jolly Jumpers ,繼續加油!


上一篇
[Day24]Funny Encryption Method
下一篇
[Day26]Jolly Jumpers
系列文
CPE題目練習30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
vivian00724
iT邦新手 5 級 ‧ 2022-02-15 10:46:22

請問 A a B b分別代表什麼?

我要留言

立即登入留言