File tree Expand file tree Collapse file tree 17 files changed +329
-3
lines changed Expand file tree Collapse file tree 17 files changed +329
-3
lines changed Original file line number Diff line number Diff line change 1
- # 문제 32: 문자열 만들기
1
+ # 문제 33: 거꾸로 출력하기
2
2
3
- 취업 준비생인 혜림이는 자기소개서를 쓰고 있습니다. 열심히 자기소개서를 작성하던 도중 혜림이는 자기가 지금까지 단어를 얼마나 적었는지 궁금하게 됩니다 .
3
+ 한 줄에 여러개의 숫자가 입력되면, 역순으로 그 숫자들을 하나씩 출력하는 프로그램을 작성하시오 .
4
4
5
- 혜림이를 위해 ** 문자열을 입력받으면 단어의 갯수를 출력하는 프로그램** 을 작성해 주세요.
5
+ 입력 : 1 2 3 4 5
6
+ 출력 : 5 4 3 2 1
Original file line number Diff line number Diff line change
1
+ # 문제 34: sort 구현하기
2
+
3
+ 민주는 체육부장으로 체육시간이 되면 반 친구들이 제대로 키 순서대로 모였는지를 확인해야 한다. 그ㅜ런데 요즘 민주는 그것이 너무 번거롭게 느껴져 한 번에 확이한고 싶어한다.
4
+
5
+ 민주를 위해 ** 키가 주어지면 순서대로 제대로 섰는지 확인하는 프로그램** 을 작성해보자.
6
+ (키는 공백으로 구분하여 입력됩니다.)
7
+
8
+ 입력 : 176 156 155 165 166 169
9
+ 출력 : NO
10
+
11
+ 입력 : 155 156 165 166 169 176
12
+ 출력 : YES
Original file line number Diff line number Diff line change
1
+ /*
2
+ # 문제 34: sort 구현하기
3
+
4
+ 민주는 체육부장으로 체육시간이 되면 반 친구들이 제대로 키 순서대로 모였는지를 확인해야 한다. 그ㅜ런데 요즘 민주는 그것이 너무 번거롭게 느껴져 한 번에 확이한고 싶어한다.
5
+
6
+ 민주를 위해 **키가 주어지면 순서대로 제대로 섰는지 확인하는 프로그램**을 작성해보자.
7
+ (키는 공백으로 구분하여 입력됩니다.)
8
+
9
+ 입력 : 176 156 155 165 166 169
10
+ 출력 : NO
11
+
12
+ 입력 : 155 156 165 166 169 176
13
+ 출력 : YES
14
+ */
15
+
16
+ function sort ( ) {
17
+ let input = prompt ( '키를 순서대로 입력해주세요' ) . split ( ' ' ) ;
18
+ let error = false ;
19
+ for ( let i = 0 ; i < input . length - 1 ; i ++ ) {
20
+ if ( input [ i ] > input [ i + 1 ] ) {
21
+ error = ! error
22
+ console . log ( 'NO' )
23
+ break ;
24
+ }
25
+ }
26
+
27
+ if ( ! error ) {
28
+ console . log ( 'YES' )
29
+ }
30
+ }
31
+
32
+ sort ( ) ;
Original file line number Diff line number Diff line change
1
+ # 문제 35: Factory 함수 사용하기
2
+
3
+ 2제곱 3제곱 4제곱을 할 수 있는 Factory 함수를 만들려고 합니다.
4
+
5
+ <pass >에 코드를 작성하여 two함수를 완성하세요.
6
+
7
+ ``` Javascript
8
+ function one (n ){
9
+ function two (){
10
+ // pass
11
+ }
12
+ return two;
13
+ }
14
+
15
+ const a = one (2 );
16
+ const b = one (3 );
17
+ const c = one (4 );
18
+
19
+ console .log (a (10 ))
20
+ console .log (b (10 ))
21
+ console .log (c (10 ))
22
+ ```
Original file line number Diff line number Diff line change
1
+ /*
2
+ # 문제 35: Factory 함수 사용하기
3
+
4
+ 2제곱 3제곱 4제곱을 할 수 있는 Factory 함수를 만들려고 합니다.
5
+
6
+ <pass>에 코드를 작성하여 two함수를 완성하세요.
7
+
8
+ ```Javascript
9
+ function one(n){
10
+ function two(){
11
+ //pass
12
+ }
13
+ return two;
14
+ }
15
+
16
+ const a = one(2);
17
+ const b = one(3);
18
+ const c = one(4);
19
+
20
+ console.log(a(10))
21
+ console.log(b(10))
22
+ console.log(c(10))
23
+ ```
24
+ */
25
+
26
+ function one ( n ) {
27
+ function two ( m ) {
28
+ return Math . pow ( m , n ) ;
29
+ }
30
+ return two ;
31
+ }
32
+
33
+ const a = one ( 2 ) ;
34
+ const b = one ( 3 ) ;
35
+ const c = one ( 4 ) ;
36
+
37
+ console . log ( a ( 10 ) )
38
+ console . log ( b ( 10 ) )
39
+ console . log ( c ( 10 ) )
Original file line number Diff line number Diff line change
1
+ # 문제 36: 구구단 출력하기
2
+
3
+ 1~ 9까지의 숫자 중 하나를 입력하면 그 단의 구구단 결과를 한 줄에 출력하는 프로그램을 작성하세요.
4
+
5
+ 입력 : 2
6
+ 출력 : 2 4 6 8 10 12 14 16 18
Original file line number Diff line number Diff line change
1
+ /*
2
+ # 문제 36: 구구단 출력하기
3
+
4
+ 1~9까지의 숫자 중 하나를 입력하면 그 단의 구구단 결과를 한 줄에 출력하는 프로그램을 작성하세요.
5
+
6
+ 입력 : 2
7
+ 출력 : 2 4 6 8 10 12 14 16 18
8
+ */
9
+
10
+ function multipletable ( ) {
11
+ let input = prompt ( '숫자를 입력하세요' )
12
+ let result = '' ;
13
+ for ( let i = 1 ; i < 10 ; i ++ ) {
14
+ result += input * i + ' ' ;
15
+ }
16
+ console . log ( result )
17
+ }
18
+
19
+ multipletable ( )
Original file line number Diff line number Diff line change
1
+ # 문제 37: 반장 선거
2
+
3
+ 새 학기를 맞아 호준이네 반은 반장 선거를 하기로 했습니다. 그런데 표를 하나씩 개표하는 과정이 너무 번거롭게 느껴진 당신은 ** 학생들이 뽑은 후보들을 입력받으면 뽑힌 학생의 이름과 받은 표 수를 출력하는 프로그램** 을 작성하기로 하였습니다.
4
+
5
+ 입력 : 원범 원범 혜원 혜원 혜원 혜원 유진 유진
6
+ 출력 : 혜원(이)가 총 4표로 반장이 되었습니다.
Original file line number Diff line number Diff line change
1
+ /*
2
+ # 문제 37: 반장 선거
3
+
4
+ 새 학기를 맞아 호준이네 반은 반장 선거를 하기로 했습니다. 그런데 표를 하나씩 개표하는 과정이 너무 번거롭게 느껴진 당신은 **학생들이 뽑은 후보들을 입력받으면 뽑힌 학생의 이름과 받은 표 수를 출력하는 프로그램**을 작성하기로 하였습니다.
5
+
6
+ 입력 : 원범 원범 혜원 혜원 혜원 혜원 유진 유진
7
+ 출력 : 혜원(이)가 총 4표로 반장이 되었습니다.
8
+ */
9
+
10
+ function countVotes ( ) {
11
+ let input = prompt ( '후보들을 입력하세요' ) . split ( ' ' ) . sort ( ) ;
12
+ let result = [ ] ;
13
+ for ( let i = 0 ; i < input . length - 1 ; i ++ ) {
14
+ if ( input [ i ] != input [ i + 1 ] ) {
15
+ result . push ( i + 1 ) ;
16
+ }
17
+ }
18
+ result . push ( input . length ) ;
19
+ let count = [ result [ 0 ] ] ;
20
+ for ( let i = 0 ; i < result . length - 1 ; i ++ ) {
21
+ count . push ( result [ i + 1 ] - result [ i ] ) ;
22
+ }
23
+ let maxValue = Math . max . apply ( null , count ) ;
24
+ let position = count . indexOf ( maxValue ) ;
25
+ let pre = 0 ;
26
+ for ( let i = 0 ; i < position ; i ++ ) {
27
+ pre += count [ i ] ;
28
+ }
29
+ console . log ( `${ input [ pre ] } (이)가 총 ${ maxValue } 표로 반장이 되었습니다.` )
30
+ }
31
+
32
+ countVotes ( )
Original file line number Diff line number Diff line change
1
+ # 문제 38 : 호준이의 아르바이트
2
+
3
+ 호준이는 아르바이트로 영어 학원에서 단어 시험지를 채점하는 일을 하고 있다. 호준이가 일하는 학원은 매번 1위부터 3위까지의 학생에게 상으로 사탕을 준다. 그런데 오늘은 마침 사탕이 다 떨어져서 호준이가 채점을 하고 점수를 보내면, 당신이 아이들의 숫자만큼 사탕을 사러 가기로 했다.
4
+
5
+ 1위 ~ 3위 학생은 여러명일 수 있고 1~ 3위 학생 중 중복되는 학생까지 포함하여 사탕을 사기로 한다. ** 학생들의 점수를 공백으로 구분하여 입력을 받고 사탕을 받을 학생의 수를 출력하세요.**
6
+
7
+ 입력 : 98 68 75 66 55 97 85 97 97 95
8
+ 출력 : 6
Original file line number Diff line number Diff line change
1
+ /*
2
+ # 문제 38 : 호준이의 아르바이트
3
+
4
+ 호준이는 아르바이트로 영어 학원에서 단어 시험지를 채점하는 일을 하고 있다. 호준이가 일하는 학원은 매번 1위부터 3위까지의 학생에게 상으로 사탕을 준다. 그런데 오늘은 마침 사탕이 다 떨어져서 호준이가 채점을 하고 점수를 보내면, 당신이 아이들의 숫자만큼 사탕을 사러 가기로 했다.
5
+
6
+ 1위 ~ 3위 학생은 여러명일 수 있고 1~3위 학생 중 중복되는 학생까지 포함하여 사탕을 사기로 한다. **학생들의 점수를 공백으로 구분하여 입력을 받고 사탕을 받을 학생의 수를 출력하세요.**
7
+
8
+ 입력 : 97 68 75 66 55 97 85 97 97 95
9
+ 출력 : 6
10
+ */
11
+
12
+ function countCandy ( ) {
13
+ let input = prompt ( '점수를 입력하세요' ) . split ( ' ' ) . sort ( ) . reverse ( ) ;
14
+ let count = 0 ;
15
+ let result = 0 ;
16
+ for ( let i = 0 ; i < input . length - 1 ; i ++ ) {
17
+ if ( input [ i ] > input [ i + 1 ] ) {
18
+ count ++
19
+ }
20
+ if ( count === 3 ) {
21
+ result = i + 1 ;
22
+ break ;
23
+ }
24
+ }
25
+ return result
26
+ }
27
+
28
+ countCandy ( )
Original file line number Diff line number Diff line change
1
+ # 문제 39 : 오타 수정하기
2
+
3
+ 혜원이는 평소 영타가 빠르고 정확한 것을 친구들에게 자랑하고 다녔습니다. 반 친구들이 혜원이의 타자 속도가 빠르다는 것을 모두 알게 되자 혜원이는 모두의 앞에서 타자 실력을 보여주게 됩니다.
4
+
5
+ 그런데 막상 보여주려니 긴장이 되서 문장의 모든 e를 q로 잘못 친 것을 발견했습니다. 혜원이는 프로그램을 돌려 재빠르게 모든 q를 e로 바꾸는 프로그램을 작성하려고 합니다.
6
+
7
+ ** 문장이 입력되면 모든 q를 e로 바꾸는 프로그램을 작성해주세요.**
8
+
9
+ 입력 : querty
10
+ 출력 : euerty
11
+
12
+ 입력 : hqllo my namq is hyqwon
13
+ 출력 : hello my name is hyewon
Original file line number Diff line number Diff line change
1
+ /*
2
+ # 문제 39 : 오타 수정하기
3
+
4
+ 혜원이는 평소 영타가 빠르고 정확한 것을 친구들에게 자랑하고 다녔습니다. 반 친구들이 혜원이의 타자 속도가 빠르다는 것을 모두 알게 되자 혜원이는 모두의 앞에서 타자 실력을 보여주게 됩니다.
5
+
6
+ 그런데 막상 보여주려니 긴장이 되서 문장의 모든 e를 q로 잘못 친 것을 발견했습니다. 혜원이는 프로그램을 돌려 재빠르게 모든 q를 e로 바꾸는 프로그램을 작성하려고 합니다.
7
+
8
+ **문장이 입력되면 모든 q를 e로 바꾸는 프로그램을 작성해주세요.**
9
+
10
+ 입력 : querty
11
+ 출력 : euerty
12
+
13
+ 입력 : hqllo my namq is hyqwon
14
+ 출력 : hello my name is hyewon
15
+ */
16
+
17
+ function modificateError ( ) {
18
+ let input = prompt ( '문장을 입력하세요' ) ;
19
+ return input . replaceAll ( 'q' , 'e' ) ;
20
+ }
21
+
22
+ modificateError ( )
Original file line number Diff line number Diff line change
1
+ # 문제 40 : 놀이동산에 가자
2
+
3
+ 테마파크에 온 원범이와 친구들은 놀이기구를 타려고 합니다. 모든 놀이기구는 한 번에 타는 인원수에는 제한이 없지만 제한 무게를 넘으면 무조건 다음 기구를 타야 합니다.
4
+
5
+ ** 원범이와 친구들이 총 몇 명 탈 수 있는지 알 수 있는 프로그램을 작성해 주세요.**
6
+
7
+ 첫번째 입력으로 제한 무게가 주어지고 두번째 입력으로는 함께한 친구들의 수 n이 주어집니다. 그 다음 차례대로 탑승할 친구들의 몸무게가 주어집니다. 몸무게는 무작위로 주어집니다.
8
+
9
+ 입력: 50
10
+ 5
11
+ 20
12
+ 20
13
+ 20
14
+ 20
15
+ 20
16
+ 출력 : 2
Original file line number Diff line number Diff line change
1
+ /*
2
+ # 문제 40 : 놀이동산에 가자
3
+
4
+ 테마파크에 온 원범이와 친구들은 놀이기구를 타려고 합니다. 모든 놀이기구는 한 번에 타는 인원수에는 제한이 없지만 제한 무게를 넘으면 무조건 다음 기구를 타야 합니다.
5
+
6
+ **원범이와 친구들이 총 몇 명 탈 수 있는지 알 수 있는 프로그램을 작성해 주세요.**
7
+
8
+ 첫번째 입력으로 제한 무게가 주어지고 두번째 입력으로는 함께한 친구들의 수 n이 주어집니다. 그 다음 차례대로 탑승할 친구들의 몸무게가 주어집니다. 몸무게는 무작위로 주어집니다.
9
+
10
+ 입력: 50
11
+ 5
12
+ 20
13
+ 20
14
+ 20
15
+ 20
16
+ 20
17
+ 출력 : 2
18
+ */
19
+
20
+ function countPeople ( ) {
21
+ let limit = prompt ( '제한 무게를 입력하세요' ) ;
22
+ let number = prompt ( '친구들이 몇 명인지 입력하세요' ) ;
23
+ let weight = [ ] ;
24
+ for ( let i = 0 ; i < number ; i ++ ) {
25
+ weight . push ( prompt ( '몸무게를 입력하세요' ) ) ;
26
+ }
27
+ weight . sort ( ) ;
28
+ let sum = 0 ;
29
+ let result = 0 ;
30
+ for ( let i = 0 ; i < number ; i ++ ) {
31
+ sum += parseInt ( weight [ i ] )
32
+ if ( sum > limit ) {
33
+ result = i ;
34
+ break ;
35
+ }
36
+ }
37
+ if ( result === 0 ) {
38
+ return number ;
39
+ } else {
40
+ return result ;
41
+ }
42
+ }
43
+
44
+ countPeople ( )
Original file line number Diff line number Diff line change
1
+ # 문제 41 : 소수판별
2
+
3
+ 숫자가 주어지면 ** 소수인지 아닌지 판별하는 프로그램** 을 작성해주세요.
4
+ 소수이면 YES로, 소수가 아니면 NO로 출력해주세요.
5
+ (소수 : 1과 자기 자신만으로 나누어 떨어지는 1보다 큰 양의 정수)
6
+
Original file line number Diff line number Diff line change
1
+ /*
2
+ # 문제 41 : 소수판별
3
+
4
+ 숫자가 주어지면 **소수인지 아닌지 판별하는 프로그램**을 작성해주세요.
5
+ 소수이면 YES로, 소수가 아니면 NO로 출력해주세요.
6
+ (소수 : 1과 자기 자신만으로 나누어 떨어지는 1보다 큰 양의 정수)
7
+ */
8
+
9
+ function primeNumber ( ) {
10
+ let number = prompt ( '숫자를 입력하세요' ) ;
11
+ let result = 'YES' ;
12
+ for ( let i = 2 ; i < number / 2 ; i ++ ) {
13
+ if ( number % i === 0 ) {
14
+ result = 'NO'
15
+ }
16
+ }
17
+ return result
18
+ }
19
+
20
+ primeNumber ( )
You can’t perform that action at this time.
0 commit comments