레이블이 #tryhelloworld인 게시물을 표시합니다. 모든 게시물 표시
레이블이 #tryhelloworld인 게시물을 표시합니다. 모든 게시물 표시

2.19.2017

2017.02.19. - 문자열 다루기 기본

tryhelloworld level 1 algorithm questions - 문자열 다루기 기본

<JAVASCRIPT>
Question(출처 : http://tryhelloworld.co.kr)
alpha_string46함수는 문자열 s를 매개변수로 입력받습니다.
s의 길이가 4혹은 6이고, 숫자로만 구성되있는지 확인해주는 함수를 완성하세요.
예를들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.

My Answer

1. 실패
function alpha_string46(s){
  var result = true
  // 함수를 완성하세요
if (s.length = (4|| 6) && parseInt(s)){
  result = true;
} else {
  result = false;
}
  return result;
}

2. 실패
function alpha_string46(s){
  var result = true
  // 함수를 완성하세요
if (s.length = 4 || s.length = 6 && typeof(s)){
  result = true;
} else {
  result = false;
}
  return result;
}

3.실패
function alpha_string46(s){
  var result = true
  // 함수를 완성하세요
if (s.length == 4 || s.length == 6){
  result = true;
} else if (typeof(s) == number) {
           result = true;
} else if (s.length != 4 || s.length != 6){
  result = false;
} else if (typeof(s) != number) {
           result = false;
  }
  return result;
}

4. 성공
function alpha_string46(s){
  var result = true
  // 함수를 완성하세요
if (s.length == 4 || s.length == 6){
  result = true;
} else if (typeof(s) == Number) {
           result = true;
} else if (s.length != 4 || s.length != 6){
  result = false;
} else if (typeof(s) != Number) {
           result = false;
  }
  return result;
}


// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log( alpha_string46("a234") );
// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log( alpha_string46("a234") );


<Tip>
- parseInt는 정수로 바꿀 때 이용하는 것임
- 숫자로만 구성 되어 있는지 확인하려면 typeof로 판별
- typeof 는 number가 아니라 대문자인 Number라고 써줘야 인식을 함.

2.18.2017

2017.02.17 - 삼각형 출력하기

tryhelloworld level 1 algorithm questions - 삼각형 출력하기
<JAVASCRIPT>
Question(출처 : http://tryhelloworld.co.kr)
printTriangle 메소드는 양의 정수 num을 매개변수로 입력받습니다.
다음을 참고해 *(별)로 높이가 num인 삼각형을 문자열로 리턴하는 printTriangle 메소드를 완성하세요
printTriangle이 return하는 String은 개행문자('\n')로 끝나야 합니다.
높이가 3일때
*
**
***
높이가 5일때
*
**
***
****
*****

My Answer

1.실패
function printTriangle(num) {
  var result = ''
  // 함수를 완성하세요
   for (var i = 0; i <num-(i-1); i++){
     for (var j = 1; j<num+i; j++){    
            result += "*";
    }
          result += "\n";
   }
  return result
}


// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log( printTriangle(3) );

실행결과
**
***

2. 실패
function printTriangle(num) {
  var result = ''
  // 함수를 완성하세요
   for (var i = 0; i <num; i++){
     for (var j = 1; j<num+i; j++){    
            result += "*";
    }
          result += "\n";
   }
  return result
}


// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log( printTriangle(3) );

실행결과
**
***
****

3. 실패
function printTriangle(num) {
  var result = ''
  // 함수를 완성하세요
   for (var i = 0; i <num; i++){    
     for (var j = 2; j<num+i; j++){  
       result += "*";
    }
          result += "\n";
   }
  return result
}


// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log( printTriangle(5) );

실행결과
***
****
*****
******
*******

4. 성공
function printTriangle(num) {
  var result = ''
  // 함수를 완성하세요
   for (var i = 0; i <num; i++){     
     for (var j =0; j<i+1; j++){   
       result += "*";
       }
     result += "\n"
      }
  return result
}


// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log( printTriangle(5) );

실행결과
*
**
***
****
*****

2017.02.17. - 서울에서김서방찾기

tryhelloworld level 1 algorithm questions - 서울에서김서방찾기

<JAVASCRIPT>

Question (출처 : http://tryhelloworld.co.kr)
findKim 함수(메소드)는 String형 배열 seoul을 매개변수로 받습니다.
seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하세요.
seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.

Answer
function findKim(seoul){
  var idx = seoul.indexOf("Kim");
  //함수를 완성하세요

  return "김서방은 " + idx + "에 있다";
}

// 실행을 위한 테스트코드입니다.
console.log( findKim(["Queen", "Tod", "Kim"]));


<TIP>

문자열 검색하기

  • indexOf(str) :
  • lastIndexOf(str) :

2017.02.17 - 스트링을 숫자로 바꾸기

tryhelloworld level 1 algorithm questions - 스트링을 숫자로 바꾸기

<JAVASCRIPT>

Question
strToInt 메소드는 String형 str을 매개변수로 받습니다.
str을 숫자로 변환한 결과를 반환하도록 strToInt를 완성하세요.
예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다.
str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다.


Answer
function strToInt(str){
  var result = 0;
  //함수를 완성하세요
  result = parseInt(str)
  return result;
}


// 아래는 테스트로 출력해 보기 위한 코드입니다.

console.log(strToInt("-1234"));

<TIP>
parseInt 정수로 변환
parseString 글자로 변환

2.17.2017

2017.02.16 - 정수제곱근 판별하기

tryhelloworld level 1 algorithm questions  - 정수제곱근 판별하기

<JAVASCRIPT>

Question(출처 : http://tryhelloworld.co.kr)
nextSqaure함수는 정수 n을 매개변수로 입력받습니다.
n이 임의의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 임의의 정수 x의 제곱이 아니라면 'no'을 리턴하는 함수를 완성하세요.
예를들어 n이 121이라면 이는 정수 11의 제곱이므로 (11+1)의 제곱인 144를 리턴하고, 3이라면 'no'을 리턴하면 됩니다.


1. 실패
 if -> 제곱근 값
   var x=1;
 if (n%x==x) {
  result = "(x+1)*(x+1)";
}
  else if (n%x!=x){
    result = "no";
  }
  return result;
}

=================================================
<정답>
2. while문 사용하기 => 제곱근 값이 음수일 수 도 있으므로!!

 function nextSqaure(n){
  var result = 0;
  //함수를 완성하세요

  var x = 1;
  while(x*x<=n){
    if (n/x==x) {
      result = (x+1)*(x+1);
    }else{
      result = "no";
    }
    x++
  }
  return result;
}

// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log("결과 : " + nextSqaure(121));function nextSqaure(n){
  var result = 0;
  //함수를 완성하세요

  var x = 1;
  while(x*x<=n){
    if (n/x==x) {
      result = (x+1)*(x+1);
    }else{
      result = "no";
    }
    x++
  }
  return result;
}

// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log("결과 : " + nextSqaure(121));

3. 다른 사람의 풀이
function nextSqaure(n){
  var result = 0;
  //함수를 완성하세요

 function nextSqaure(n){
  //함수를 완성하세요
  switch(n % Math.sqrt(n)){
    case 0:
      return Math.pow(Math.sqrt(n) + 1, 2);
    default:
      return "no"
  }
}

// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log("결과 : " + nextSqaure(121));

2017.02.16 - 역삼각형 출력하기

tryhelloworld level 1 algorithm questions - 역삼각형 출력하기

<JAVASCRIPT>
Question

printReversedTriangle 메소드는 양의 정수 num을 매개변수로 입력받습니다.
다음을 참고해 *(별)로 높이가 num인 삼각형을 문자열로 리턴하는 printReversedTriangle 메소드를 완성하세요
높이(num)가 3일때 다음과 같은 문자열을 리턴하면 됩니다.
***
**
*

1. *출력하기
2. for 문 이용하기
 for (var i = 0; i<num.length;i++){}

1.실패
  
  if(num == 3) {
    result = "***\n**\n*"
  }
    else if(num == 2) {
    result = "**\n*"
  }
    else if(num == 1) {
    result = "*"
  }
2. 실패
*
**
*
**
*
**
for (var i = 0; i<num;i++){
  for (var j = 0; j<num-1;j++){
    result += "\n*";
   }
   result += "*";
  }
3. 실패
*
**
**
**
**
**
*
for (var i = 0; i<num;i++){
  for (var j = 0; j<num-1;j++){
    result += "*\n*";
   }
  }
4.실패
***
***
***
for (var i = 0; i<num;i++){
  for (var j = 0; j<num-1;j++){
    result += "*";
   }
    result += "*\n";
  }

5. 성공
***
**
*
function printReversedTriangle(num) {
  var result = ''
  // 함수를 완성하세요

  for (var i = 0; i<num; i++){
   for ( var j=0; j<num-i; j++ ){
      result += "*";
    }
    result += "\n";
  }
  return result
}

// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log("결과 : " +'\n'+ printReversedTriangle(3

2017.02.16 - 짝수와 홀수

tryhelloworld level 1 algorithm questions - 짝수와 홀수
<JAVASCRIPT>
Question
evenOrOdd 메소드는 int형 num을 매개변수로 받습니다.
num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하도록 evenOrOdd에 코드를 작성해 보세요.
num은 0이상의 정수이며, num이 음수인 경우는 없습니다.

Answer

function evenOrOdd(num) {
  var result = ''
  // 함수를 완성하세요
  if(num%2 == 0){
    var result = "Even";
  }
  else if(num%2 != 0){
    var result = "Odd";
  }
  return result;
}

// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log("결과 : " + evenOrOdd(2));

console.log("결과 : " + evenOrOdd(3));

<<내가 헷갈렸던 부분>>
'/' = 나누기
'%' = 나머지

2017.02.16 - 핸드폰번호 가리기

tryhelloworld level 1 algorithm questions - 핸드폰번호 가리기

<JAVASCRIPT>

Question(출처 : http://tryhelloworld.co.kr)
별이는 헬로월드텔레콤에서 고지서를 보내는 일을 하고 있습니다. 개인정보 보호를 위해 고객들의 전화번호는 맨 뒷자리 4자리를 제외한 나머지를 "*"으로 바꿔야 합니다.
전화번호를 문자열 s로 입력받는 hide_numbers함수를 완성해 별이를 도와주세요
예를들어 s가 "01033334444"면 "*******4444"를 리턴하고, "027778888"인 경우는 "*****8888"을 리턴하면 됩니다.

Answer
function hide_numbers(s){
  var result = ""
  //함수를 완성해주세요

if (s.length-4 == 5){
  var d = "*****"}
  else if (s.length-4 == 6){
    var d = "******"}
  else if (s.length-4 == 7){
    var d = "*******"}

  var b = s.substring(s.length-4);
  return d+b;
}
// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log("결과 : " + hide_numbers('01033334444'));

2017.02.16 - 평균구하기

tryhelloworld level 1 algorithm questions  - 평균구하기
<JAVASCRIPT>

Question(출처 : http://tryhelloworld.co.kr)
def average(list):
함수를 완성해서 매개변수 list의 평균값을 return하도록 만들어 보세요.
어떠한 크기의 list가 와도 평균값을 구할 수 있어야 합니다.

=================================================================

My Answer

function average(array){
  //함수를 완성하세요
var sum = 0;
  for (var i = 0; i<array.length; i++){
    sum = sum + array[i];
  }
var result = (sum / array.length);
  return result;
}


// 아래는 테스트로 출력해 보기 위한 코드입니다.
var testArray = [5,3,4] 

console.log("평균값 : " + average(testArray));