U E D R , A S I H C RSS

JTD Study/첫번째과제/상욱

~cpp code
import javax.swing.JOptionPane;

public class NumberBaseBallGame {
	private String resultNumber;
	private String userNumber;
	public static void main(String[] args) {
		NumberBaseBallGame game = new NumberBaseBallGame();
		game.excute();
	}

	public void excute() {
		// make a result number
		createResultNumber();
		do {
			// input number from user
			inputNumber();
			// show score
			JOptionPane.showMessageDialog(null, checkScore());
		} while(checkScore() != "You are correct!");
	}
	public String inputNumber() {
		return userNumber = JOptionPane.showInputDialog(null, "Enter number what you think");
	}
	public void createResultNumber() {
		String fstNum, secNum, trdNum;
		do {
			fstNum = "" + (Math.random()*10);
			secNum = "" + (Math.random()*10);
			trdNum = "" + (Math.random()*10);
		}while(fstNum.equals(secNum) || secNum.equals(trdNum) || fstNum.equals(trdNum));
		resultNumber = fstNum + secNum + trdNum;
	}
	public String checkScore() {
		int numOfStrike = 0;
		int numOfBall = 0;
		for (int i = 0 ; i < 3 ; i++) {
			for (int j = 0 ; j < 3 ; j++) {
				if (resultNumber.charAt(i) == userNumber.charAt(j)) {
					if (i == j) {
						numOfStrike++;
					} else {
						numOfBall++;
					}
				}
			}
		}
		if (numOfStrike == 3)
			return "You are correct!";
		else
			return "" + numOfStrike + " Strike, " + numOfBall + " Ball";
	}
	///////////////////////////////////////////////////////////////
	public void setResultNumber(String resultNumber) {
		this.resultNumber = resultNumber;		
	}
	public String getUserNumber() {
		return userNumber;
	}
	public String getResultNumber() {
		return resultNumber;
	}
}

~cpp code
import junit.framework.TestCase;


public class NumberBaseBallGameTest extends TestCase {
	
	public NumberBaseBallGame object;

	protected void setUp() throws Exception {
		object = new NumberBaseBallGame();
	}

	protected void tearDown() throws Exception {
	}
	public void testInputNumber() {
		String testString = object.inputNumber();
		if (testString.charAt(0) == '1' &&
			testString.charAt(1) == '2' &&
			testString.charAt(2) == '3')
			assertTrue(true);
		else
			assertTrue(false);
	}
	public void testCreateResultNumber() {
		object.createResultNumber();
		assertNotSame(object.getResultNumber().charAt(0), object.getResultNumber().charAt(1));
		assertNotSame(object.getResultNumber().charAt(1), object.getResultNumber().charAt(2));
		assertNotSame(object.getResultNumber().charAt(0), object.getResultNumber().charAt(2));
	}
	public void testCheckScore() {
		object.inputNumber();
		object.setResultNumber("132");
		assertEquals("1 Strike, 2 Ball", object.checkScore());
	}
}

  • TDD ^^; 한 테 팍팍;;; 하 ~ -
  • . import junit.framework.TestCase ? -_-;; -
    • 해. JUnit . -
  • . 테

JUnit 4.1
~java
package test;

import java.util.Arrays;

import org.junit.Test;
import static org.junit.Assert.*;

public class JUnit41Test {
	@Test
	public void name() {
		String[] actual = { "1", "2", "3" }, expect = { "1", "2", "3" };
		Integer[] actual2 = { 1, 2, 3 }, expect2 = { 1, 2, 3 };
		assertEquals(Arrays.asList(actual), Arrays.asList(expect));
		assertEquals(actual, expect);
		assertEquals(actual2, expect2);
	}
}

JUnit 3.8 ( 패)
~java

import java.util.Arrays;

import junit.framework.TestCase;

public class JUnit38Test extends TestCase {
	public void name() {
		String[] actual = { "1", "2", "3" }, expect = { "1", "2", "3" };
		Integer[] actual2 = { 1, 2, 3 }, expect2 = { 1, 2, 3 };
		assertEquals(Arrays.asList(actual), Arrays.asList(expect));
		assertEquals(actual, expect);
		assertEquals(actual2, expect2);
	}
}
  • 확하 . . . . . --NeoCoin

~python
# -*- coding: cp949 -*-
LENGTH,START,END,TURN_LIMIT=3,100,999,8
def Answer():
    from random import randint
    while True:
        answer = str(randint(START,END))
        if len(set(answer)) == LENGTH: return answer

def Question():
    while True:
        try:
            question=raw_input(' . : ')
            if len(question) == LENGTH and len(set(question)) == LENGTH:
                return question
            else: raise ValueError
        except ValueError:
            print '--0  ,    %d  .--'%LENGTH

def Compare(answer,question):
    strike,ball,out=0,0,0
    for idx,i in enumerate(question):
        if question[idx] == answer[idx]:strike += 1
        elif i in answer:               ball +=1
        else:                           out+=1
    return [strike,ball,out]

def Show(sbo,count, end=True):
    if isEnd:print '%d 회 !' % count
    else:    print '%d 회 %d 크 %d  %d ' % tuple([count]+sbo)

answer=Answer()
print answer
for count in xrange(1,TURN_LIMIT+1):
    sbo = Compare(answer,Question())
    isEnd = sbo[0] == LENGTH
    Show(sbo,count,isEnd)
    if isEnd:break
else:print '%d회  패하.' %count
  • ㅋ... Python... ^^ -
  • Python Good~! .. ㅋ - (namsnag)
----
JTDStudy/
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:29
Processing time 0.0164 sec