Day02 - jeremy0405/Codesquad_CS GitHub Wiki
MagicNumber
MagicNumberλ μμ€ μ½λ μμ μμ±λ ꡬ체μ μΈ μ«μκ°μ μλ―Ένλ€. λμΌν κΈ°λ₯μ νλ λ§€μ§ λλ²μ κ°μκ° λ§λ€λ©΄ λμ€μ μμ€μ½λλ₯Ό λ³κ²½ν΄μΌ ν λ λμΌν κΈ°λ₯μ νλ λ§€μ§ λλ²λ₯Ό λͺ¨λ κ°μ κ°μΌλ‘ λ³κ²½ν΄μΌ νλ€λ λ¨μ μ΄ μλ€. λν ꡬ체μ μΈ μ«μκ°μ΄ 무μμ μλ―Ένλμ§ μκΈ° νλ κ²½μ°κ° λ§λ€. μ΄λ΄ λ μ¬λ³Όλ¦ μ μλ₯Ό μ΄μ©νμ¬ λμΌν κΈ°λ₯μ νλ λ§€μ§ λλ²λ₯Ό λͺ¨λ μ¬λ³Όλ¦ μ μλ‘ μΉννμ¬ μ½λλ₯Ό μμ±νλ©΄ κ°λ μ±μ΄ μ’μμ§κ³ μ½λ λ³κ²½μλ μ μ°νκ² λμ²ν μ μκ² λλ€.
λ―Έμ μ μ§ν μ€ carryμ sumμ κΈΈμ΄κ° 2μΈ λ°°μ΄ μΈλ±μ€μ 0λ²μ§Έλ carry, 1λ²μ§Έλ sumμ μ μ₯νκ³ μ§μμ μΌλ‘ κΊΌλ΄μ μ¬μ©νκ² λμλ€.
μ΄μ μ μ½λλ‘λ κ³μ μλμ κ°μ΄ μμ±νμμ§λ§ λ§€μ§ λλ²λ₯Ό ν΅ν΄ 보기μ μ’λλ‘, λ μ€μκ° λ°μνμ§ μλλ‘ λ¦¬ν©ν λ§μ μ§ννλ€.
public boolean[] halfadder(boolean bitA, boolean bitB) {
boolean[] answer = new boolean[2];
answer[0] = //κ³μ°ν carry κ°
answer[1] = //κ³μ°ν sum κ°
return answer;
}
boolean tmpCarry = halfadder(bitA, bitB)[0];
boolean tmpSum = halfadder(bitA, bitB)[1];
static final int CARRY = 0;
static final int SUM = 1;
public boolean[] halfadder(boolean bitA, boolean bitB) {
boolean[] answer = new boolean[2];
answer[CARRY] = //κ³μ°ν carry κ°
answer[SUM] = //κ³μ°ν sum κ°
return answer;
}
boolean tmpCarry = halfadder(bitA, bitB)[CARRY];
boolean tmpSum = halfadder(bitA, bitB)[SUM];
λ³κ²½ κ²°κ³Ό μ½λμ κ°λ μ±μ΄ μ’μμ‘λ€. μμΌλ‘λ λ§€μ§ λλ²λ₯Ό λ¨λ°νλ μ½λλ μ§μν΄μΌκ² λ€.