이제는 Chapter3 : Jailbreak 가 열렸네요. 오늘도 문제를 다 뿌수도록 하겠습니다.

 

 

들어와보니 익숙한 느낌의 사과가 반겨주네요.

 

 

Pattern : Max

 

 

첫번째 문제의 패턴은 Max 최대값을 찾는 문제입니다.

 

배열안에 두개의 원소가 들어있고 둘 중 누가 더 큰 수인지 판별하는 간단한 패턴입니다.

 

그럼 코드로 작성해보겠습니다. 얍!

 

 

위의 코드는 간단합니다.

 

배열안에 두개의 원소밖에 없기 때문에 두개의 원소를 직접 비교해주고 큰 수를 돌려주는 간단한 문제입니다.

 

참 쉽죠?

 

 

깔끔히 성공했습니다. 다음에 두번째 문제로 돌아오겠습니다.

 

이상 Chapter3 : Jailbreak(1) 풀이 였습니다.

'Coding > hacked' 카테고리의 다른 글

3.hacked : Jailbreak (3)  (0) 2017.08.03
3.hacked : Jailbreak (2)  (0) 2017.08.03
2.hacked : High School Hack (4)  (0) 2017.08.02
2.hacked : High School Hack (3)  (0) 2017.08.02
2.hacked : High School Hack (2)  (0) 2017.08.02


 

Chapter 2 : High School Hack 네번째문제입니다.

 

바로 패턴부터 살펴보겠습니다.

 

 

이번 패턴도 어렵지 않습니다.

 

입력값으로 배열의 길이를 주면 그 길이에 맞춰 배열 안에 0부터 시작하는 양의 정수를 채워 넣으면 됩니다.

 

그럼 코드를 작성해보겠습니다. 얍!

 

 

배열을 돌려줘야 하기 때문에 배열을 먼저 선언해 줬습니다.

 

그리고 while문을 이용하여 배열안에 0부터 1씩 증가하는 값을 차례대로 채워 넣었습니다.

 

그리고 while의 반복횟수는 입력값보다 작게 반복하면 됩니다. 배열은 1부터 시작하는게 아니라 0부터 시작하기 때문입니다.

 

 

 

High School Hack (4) 의 문제풀이를 마쳤는데요 Chapter2는 네번째 문제가 마지막 문제였네요.

 

다음에는 Chapter3으로 돌아오겠습니다.

'Coding > hacked' 카테고리의 다른 글

3.hacked : Jailbreak (2)  (0) 2017.08.03
3.hacked : Jailbreak (1)  (0) 2017.08.03
2.hacked : High School Hack (3)  (0) 2017.08.02
2.hacked : High School Hack (2)  (0) 2017.08.02
2.hacked : High School Hack (1)  (0) 2017.08.02


 

Chapter 2 : High School Hack 세번째문제입니다.

 

바로 패턴부터 살펴보겠습니다.

 

 

이번 패턴도 간단해 보입니다. 

 

살펴보니 배열을 입력값으로 주면 배열의 길이를 확인해서 알려주면 될 것 같습니다.

 

그럼 코드로 작성해보겠습니다. 얍!

 

 

이번에 foreach 가 새로 생겨서 foreach를 이용해서 만들었습니다. 먼저 foreach가 어떤건지 예를 들어 보겠습니다.

처음 봤다면 당황하지 마세요. 전혀 어렵지 않습니다.

 

var_a;     //변수 선언

var_b = [1,2,3,];    //배열 초기화

 

위처럼 배열과 변수가 있을 때 간단한 코드를 써 보겠습니다.

 

foreach var_a in var_b {

var_c++ ;

retrun var_c;

 

이렇게 되면 처음 foreach 문을 들어오게 되었을 때 var_a 에 var_b의 첫번째 인수인 1이 들어가게됩니다.

그리고 중괄호 안의 내용을 실행하게 되는데요 var_c의 값이 1증가합니다.

 

var_b에 아직 배열에 원소가 남아있으므로 다시 var_a에 var_b의 두번째 인수가 들어갑니다. 그리고 중괄호 안의 코드가 실행됩니다.

이렇게 배열의 마지막 인수까지 실행이 된 후 foreach가 끝나게 됩니다.

 

그럼 var_b에는 3개의 인수가 들어있으므로 var_c의 값은 1씩 3번 증가했으니 var_c의 값은 3이 됩니다.

 

이렇게 foreach문을 이용해서 배열의 길이를 알 수 있었습니다. 참 쉽죠?

 

 

High School Hack (3) 의 문제풀이를 마치겠습니다.

'Coding > hacked' 카테고리의 다른 글

3.hacked : Jailbreak (1)  (0) 2017.08.03
2.hacked : High School Hack (4)  (0) 2017.08.02
2.hacked : High School Hack (2)  (0) 2017.08.02
2.hacked : High School Hack (1)  (0) 2017.08.02
1.hacked : The Hackpad (4)  (0) 2017.08.01


 

Chapter 2 : High School Hack 두번째문제입니다.

 

바로 패턴부터 살펴보겠습니다.

 

 

첫번째 문제와 같은 패턴이네요. 입력값의 제곱수를 돌려주면 되는 간단한 패턴이네요.

 

바로 코드로 작성해보겠습니다. 얍!

 

 

저번 문제를 풀고 새롭게 생긴 pow라는 함수를 이용해서 한줄로 만들었습니다.

 

pow(a,b); 라는 함수는 a를 b의 크기만큼 제곱하는 함수입니다.

 

간단한 예를 들어보면은   pow(3,5); 라면 3의 5승이 되는 겁니다. 즉 3*3*3*3*3 이 되는거죠. 참 쉽죠?

 

 

High School Hack (2) 의 문제풀이를 마치겠습니다.


 

'Coding > hacked' 카테고리의 다른 글

2.hacked : High School Hack (4)  (0) 2017.08.02
2.hacked : High School Hack (3)  (0) 2017.08.02
2.hacked : High School Hack (1)  (0) 2017.08.02
1.hacked : The Hackpad (4)  (0) 2017.08.01
1.hacked : The Hackpad (3)  (0) 2017.08.01

번에는 도커를 설치했으니 도커를 이용한 컨테이너를 실행해 보겠습니다.

 

컨테이너를 간단히 설명하자면 도커에서 이미지를 이용하여 컨테이너를 찍어냅니다.

 

이미지는 컨테이너를 만들기 위한 틀이라고 생각해도 됩니다. 이 틀을 이용해서 우리가 사용할 컨테이너를 찍어내서 사용한다고 생각하면 됩니다.

 

일단 한번 실행 예제를 들어보면 터미널창을 관리자권한으로 열어줍니다.

 

예제)

 

docker run ubuntu:16.04            이렇게 입력을 해줍니다.

 

그럼 run 명령에 의해 사용학자 하는 ubuntu16.04 버전의 이미지가 있는지 확인을 하는데 없다면 이미지를 다운로드하고 컨테이너가 실행됩니다.

 

컨테이너가 정상적으로 실행이 됐지만 무엇을 하라고 명령을 전달하지 않았기 때문에 컨테이너가 생성되자마자 종료됩니다.

 

컨테이너는 프로세스이기 때문에 실행중인 프로세스가 없으면 컨테이너가 종료됩니다.

 

그럼 이번에는 /bin/bash 명령어를 이용해서 컨테이너를 실행해 보겠습니다.

 

docker run --rm -it ubuntu:16.04 /bin/bash        컨테이너 내부에 들어가기 위해 bash쉘을 실행하고 키보드 입력을 위한 -it옵션과

 

프로세스가 종료되면 자동으로 컨테이너가 삭제되도록 --rm 옵션도 추가했습니다.

 

이번에는 바로 전에 이미지를 다운받았기 때문에 이미지 다운하는 화면없이 명령이 바로 실행됩니다.

 

cat /etc/issue        

 

ls

 

위 두 명령을 실행해보면 ubuntu 리눅스 인걸 확인 할 수 있습니다.

 

exit        종료 명령을 내리면 컨테이너도 같이 종료됩니다.

 

이상 도커 실습 1 이었습니다.

'Ubuntu' 카테고리의 다른 글

우분투 초간단 원격접속방법  (0) 2017.08.04
초간단 도커(docker) 설치편  (0) 2017.07.24

안녕하세요. 백자깝니다.

 

오늘은 우분투16.04 환경에서 도커를 설치하는 방법에 대해서 알아보도록 하겠습니다. 어렵지 않아요!

 

(터미널환경은 관리자권한인 상태에서 진행하였습니다.)

 

우분투에 도커(doker)를 설치하는 방법은 간단합니다. 우선 터미널을 관리자권한으로 열어 줍니다.

 

다음 curl을 사용할 수 있는 환경을 만들어 줍니다.  ( 이미 되어 있다면 '도커 설치 명령!' 부분부터 보시면 됩니다. )

 

# apt install curl   이렇게 명령어를 입력해 줍니다. ( #은 입력하지 않아도 되요 )

 

이제 부터 도커 설치를 위한 명령을 실행해 보겠습니다.

 

도커 설치 명령!

 

 # curl -s https://get.docker.com/ | sudo sh  이렇게 입력하고 조금만 기다리시면 자동으로 설치가 완료됩니다.

 

그럼 설치가 잘되었는지 확인 해볼까요?

 

도커 설치 확인!

 

# sudo docker version

 

이렇게 입력해보시면 설치된 도커의 버전을 확인해 볼 수 있습니다.

 

이상 초간단 도커 설치였습니다.

'Ubuntu' 카테고리의 다른 글

우분투 초간단 원격접속방법  (0) 2017.08.04
도커(docker) 실습 1  (0) 2017.07.24

자바스크립트에서 스크립트의 위치를 다양하게 배치 시킬 수 있는데요


오늘은 스크립트들이 놓이는 위치들에 대해서 한번 알아보도록 하겠습니다!


스크립트가 놓이는 위치가 3군데 정도 있는데요


첫번째, inline 방식입니다.


inline 말 그대로 코드의 안에 배치시키는 방식인데요 코드로 먼저 볼게요.


1
2
3
4
5
6
<!DOCTYPE html>
<html>
<body>
<input type="button" onclick="alert('Hello world')" value="Hello world" />
</body>
</html>


javascript가 <input> 태그안에 들어있는게 보이시죠? 이렇게 사용하는 방시이 inline 방식인데요 일일이 이렇게 코드를 치려면 힘들겠죠?


두번째, script 태그를 이용하는 방식입니다.


<script>  이곳에 코드가 들어가지요 </script>  이번에도 코드로 먼저 볼까요?


1
2
3
4
5
6
7
8
9
10
11
12
<!DOCTYPE html>
<html>
<body>
<input type="button" id="hw" value="Hello world" />
<script type="text/javascript">
var hw = document.getElementById('hw');
hw.addEventListener('click', function(){
alert('Hello world');
})
</script>
</body>
</html>


<script>


이곳에 코드들이 위치한게 보이죠? script태그안에 이렇게 javascript 코드들을 배치시켜서 사용하시면 됩니다.


</script>


세번째, 외부 파일로 분리!


js라는 확장자로 파일을 별도로 분리할 수 있는데요 장점은 재활용성을 높일 수도 있고, 캐쉬를 통해서 속도가 향상 될 수 있어요


1
2
3
4
5
6
7
<!DOCTYPE html>
<html>
<body>
<input type="button" id="hw" value="Hello world" />
<script type="text/javascript" src="script2.js"></script>
</body>
</html>


script2.js

1
2
3
4
var hw = document.getElementById('hw');
hw.addEventListener('click', function(){
alert('Hello world');
})


<script src="script2.js">  이 부분입니다!  src 를 통해서 외부스크립트 파일에 연결 가능하게 해줍니다.


이렇게 javascript가 위치할 수 있는 부분을 알아봤는데요, 마지막으로 보너스 팁을 드릴까합니다.





마지막 뽀너스 : 헤드태그에 위치한 script파일


script를 head 태그에 위치시킬 수 도 있습니다. 그런데 head태그에 달았을 경우에는 생각해 줘야할 부분이 있어요. 


1
2
3
4
5
6
7
8
9
<!DOCTYPE html>
<html>
<head>
<script src="script2.js"></script>
</head>
<body>
<input type="button" id="hw" value="Hello world" />
</body>
</html>


쪼금 달라진 script2.js

1
2
3
4
5
6
window.onload = function(){
var hw = document.getElementById('hw');
hw.addEventListener('click', function(){
alert('Hello world');
})
}


head 태그에 달았을 경우에는 script에 작성되어 있는 변수들을 찾지 못해 오류가 발생합니다.


코드를 위에서부터 읽기때문에 아직 body태그에 있는 hw라는 변수를 알지 못해서 오류가 발생하게 되는데요 이러한 오류를 막기위해서 


window.onload = function() { 스크립트 코드 } 이렇게 만들어 주는데요 


window.onload = function() 얘가 해주는 역할이 뭐냐면 현재 웹페이지가 다 읽혀서 완성이 되었을 때 window객체의 onload라는 메소드를 호출 되도록


약속되어 있습니다.  그런데 body와 head에 두었을 때를 조금 비교해 보자면 head태그에 두었을 경우가 웹페이지가 더 느립니다. 


head 태그에 두었을 경우 웹페이지가 모두 로드된다음 실행되기 때문에 더 느려요.


그리고 이 코드들의 출처를 알려 드릴게요. 


생활코딩 : https://opentutorials.org/course/1375/6620  여기입니다.


제가 개인적으로 공부하는데 도움을 많이 받는 곳이에요. 필요하신분들은 한번 들어가시는 것도 좋을거에요.


이상 백자까였습니다.

'Language > Javascript' 카테고리의 다른 글

3.javascript 조건문  (0) 2017.09.19
2.Javascript 연산자  (0) 2017.09.19
1.Javascript변수  (0) 2017.08.15
Window 객체  (0) 2017.07.20
오브젝트모델(Object Model)  (0) 2017.07.20

+ Recent posts