728x90

 

문제 : 1330번: 두 수 비교하기 (acmicpc.net)

 

1330번: 두 수 비교하기

두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오.

www.acmicpc.net

 

brain Storming
if문 사용
한 줄에 두 수 받기 뭐가 있을까
한 줄에 공백으로 두개 받고 구분자로 나누기? StringTokenizer
방법1 : Scanner + split()
방법2 : BufferedReader + StringTokenizer

 

풀이

일단 스캐너로 숫자1 공백 숫자2 이런식으로 입력을 받고

공백을 기준으로 split을 이용하여 나눠서 배열에 넣는다(split이 배열로 반환하기에 배열로 받아줘야함)

이후 배열의 인덱스번호로 두 수를 지정하고 int로 형변환 해주면서 각각 변수에 넣어주고 if문으로 조건을 주어서 출력했다

 

정답

Scanner + String Class split() 방법

import java.util.*;

public class Main {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        String num = sc.nextLine();

        String[] nums = num.split(" "); // String Class인 split()은 배열로 반환하므로, 배열로 받아야함


        // 배열로 받은 것을 인덱스 번호로 수 2개로 나눔
        int num1 =  Integer.parseInt(nums[0]);
        int num2 =  Integer.parseInt(nums[1]);

        if(num1 < num2){
            System.out.println("<");
        }else if(num1 > num2){
            System.out.println(">");
        }else {
            System.out.println("==");
        }

    }
}

 

 

728x90
반응형
728x90

 

전역변수 지역변수

    지역변수 : 함수 내부에서 'var 변수명;'
    전역변수 : 함수 내부에서 '변수명;'
    전역변수 : 함수 밖에서 '변수명;' 혹은 'var 변수명;'
 

자료형

typeof연산자 : 값의 자료형을 확인하는 연산자
        }
문자열과 숫자의 +연산
문자열과 숫자가 연산하면 str화된다

 

데이터 형변환

Number(), parseInt(), parseFloat()

for in문

<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">

<title>02_BasicGrammar_prac</title>

</head>
<body>

    <h2>변수 선언</h2>
    <script>
        // 함수 외부
        str1 = '전역변수';      // var 안붙은건 죄다 전역변수
        var str2 = '전역변수';  // var 붙었는데 함수 밖이면 전역변수

        window.onload = function(){
            // 함수 내부
            var str1 = "지역변수1"; // 함수 내부라 var변수명이라도 지역변수
            var str3 = "지역변수2";

            console.log('str1 :' + str1);       // 지역변수
            console.log('this.str1 :' + this.str1);   // 전역변수 : 함수 내부에서는 전역변수를 this.나 window.을 찍어서 구분해줘야한다
            console.log('window.str1 : '+ window.str1); // // 전역변수 : 함수 내부에서는 전역변수를 this.나 window.을 찍어서 구분해줘야한다
            
            what = '난 뭘까?';  // 전역변수
            showWhat(); 

        }
        function showWhat(){    
            console.log(typeof what);          //                
            console.log(typeof this.what);     // 
            console.log(window.what);   // 
        }

    </script>
        

    <h3>자료형</h3>
    <p>자바스크립트에서는 자료형 별로 변수 타입이 지정되지 않고 리터럴에 의해서 자료형 결정</p>
    <button onclick="typeTest();">자료형 테스트ㄱㄱ</button>     
    <script>
        function typeTest(){
            var name = "강건강";                         // 문자열
            var age = 20;                           // 숫자
            var check = true;                       // 논리값        
            var hobby = ['축구', '야구', '농구'];    // 배열
            var user = {                            // 객체   
                name: '강건강',
                age: 20,
                id: 'user01'              
            };
            var testFunction = function(num1, num2){
                var sum = num1 + num2;
                alert(sum);
            };
                        // 콘솔창에서 '값' 확인
                        console.log(name);
            console.log(age);
            console.log(check);
            console.log(hobby);
            console.log(user);
            console.log(testFunction);


            // 콘솔창에서 '타입' 확인
            console.log(typeof(name));
            console.log(typeof(age));
            console.log(typeof(check));
            console.log(typeof(hobby));
            console.log(typeof(user));
            console.log(typeof(testFunction));    
        }


    </script>



    <h2>데이터 형변환</h2>
    <h3>문자열과 숫자의 +연산</h3>
    <!-- 문자열과 숫자가 연산하면 str화된다 -->
    <p>문자열과 숫자가 연산하면 str화된다</p>
    <button onclick="testPlus();">문자열과 숫자의 +연산</button>
    <script>
        function testPlus(){
            var test1 = 7 + 7;          // 14
            var test2 = 7 + '7';        // 77
            var test3 = '7' + 7;        // 77
            var test4 = '7' + '7';      // 77
            var test5 = 7 + 7 + '7';    // 147
            var test6 = 7 + '7' + 7;    // 777
            var test7 = '7' + 7 + 7;    // 777

            console.log(test1);
            console.log(test2);
            console.log(test3);
            console.log(test4);
            console.log(test5);
            console.log(test6);
            console.log(test7);

            // console.log(test2 + 1);
            // console.log(test3+1);
            console.log(Number(test3)+1);       
            console.log(parseFloat(test3)+2); // 79
            console.log(parseInt(test7)+3); 780

        }
        </script>        

        
    <h4>for in문</h4>
    <button onclick="forInTest();">for in문</button>
    <!-- 자바 foreach랑 비슷함 -->
    <script>
        function forInTest(){
           var rst = "";
           var arr = ['a','b','c','d'];
            
            for(var i in arr){
                console.log(i)      // 0123
                // rst = arr[i] + " "; // 값 자체는 0~3까지 다 들어감. 마지막 들어간게 3이라 덮어씌워지면서 3의 자료인 d가 출력
                rst += arr[i] + " "; // += 변경해야 추가됨
           }
           alert(rst);
        }
    </script>


</body>
</html>
728x90
반응형

+ Recent posts