Programmers/Level 1

[Javascript] 프로그래머스 : 시저 암호

emayom 2021. 8. 17. 00:42

 [Javascript] 프로그래머스 Level 1 _ 시저 암호

 

👇🏻

Link_Click

 

 

👇🏻

시행착오
( + 코드를 작성하면서든 생각들.)


1.

 

레전드,,,,

내가 봐도 너무 복잡하게 코드를 작성한 것 같다 ㅎㅎㅎㅎㅎㅎ

 

function solution(s, n) {
    let result = [];
    
    const UPPER_A = 65;
    const LOWER_a = 97;

    
    for(let i=0; i < s.length; i++){
        
        if(s[i] == " "){
            result.push(s[i]);   
        } else {
        
            let code = s.charCodeAt(i);
            
            if(code > 64 && code < 91){   
                code = (code + n) - UPPER_A;
                code %= 26;
                code += UPPER_A;
                
            } else if(code > 96){
                code = (code + n) - LOWER_a;
                code %= 26;
                code += LOWER_a;
            }
            result.push(String.fromCharCode(code));  
        }
    }
    
    return result.join('');
}

 

2.

 

근데 아무리 생각해도 이 이상은 답이 생각나지 않아 

코드를 조금 정리하고 마무리해야겠다,,, ㅎ 

 

다른 사람들의 풀이도 대환장 파티가 많길래 위안을 삼아야겠다,,,,ㅎㅎㅎㅎㅎㅎ

function solution(s, n) {
    let result = [];

    for(let i=0; i < s.length; i++){
        
        if(s[i] == " "){
            result.push(s[i]);   
        } else {
            let code = s.charCodeAt(i);
            let START;
            
            (code>64 && code<91)? START = 65 : START = 97;

            code = (code + n) - START;
            code %= 26;
            code += START;
            
            result.push(String.fromCharCode(code));  
        }
    }
    
    return result.join('');
}

 


⚠️ 아래 내용은 모두 개인적인 참고 / 기록을 위한 용도입니다. 참고해주시고 편안하게 봐주세요 :)  ⚠️
***    혹시라도 잘못된 정보가 있다면  언제든지 알려주시면 감사하겠습니다  !    ***