문제를 해결하기 위해

노트에 숫자들을

기록하여 사용했듯이


프로그램에서는 '변수'

숫자를 저장 하여 

사용할 수 있다.


'변수'

값을 저장할 수 있는 

메모리 공간이다.


각각의 변수에

5, 30, 3, 11, 8, 12 값을

저장하는 코드를 

작성해면

다음과 같다.


 

6번 줄 코드를 읽고 

말하는 방법은

아래와 같다.


1) 인트 퍼스트는 5.


2) 정수형 변수 first를

선언하고 

5로 초기화(저장) 한다.


1)보다는 2)형식으로

생각하고 코드를 작성하고

말하는 것을 권한다.


각각의 변수에

값들을 저장했다.


이제 노트에 적었던

방식대로


앞의 숫자보다  뒤에 있는 숫자가 작으면

또는 앞의 숫자가 뒤에 있는 숫자보다 크면(21)

앞의 숫자를 빈곳에 이동한다(22).

뒤에 있는 숫자를 앞으로 이동한다(23).

빈곳으로 이동했던 앞의 숫자를 뒤로 이동한다(24).



변수 first 값 보다 변수 second 값이 작으면

또는 변수 first 값이 변수 second 값 보다 크면(21)

정수형 변수 temp를 선언하고 변수 first값으로 초기화 한다(22).

변수 first에 변수 second 값을 저장 한다(23).

변수 second에 변수 temp의 값을 저장 한다(24).


이런 방식으로

나머지 부분을

작성해 주면 된다.


* 전체 코드



아래의 그림처럼

Run 메뉴 또는

Run 아이콘을

클릭하거나

Ctrl + F11 입력하여

작성한 코드를 실행해 보자.




* 실행결과


코드가 많아 보이지만,

단지 변수와 비교문으로

힘들지 않게

오름차순으로 정렬했다.


*참고

이클립스를 이용한 코드 작성 동영상이다.




짝수 출력은 다음 시간에~


이전글 - 2020/10/23 - [EDU] - 언어를 본격적으로 배우기 전에! 맛보기 #02 - 정렬 과정을 노트에 그려 보자

다음글 - 2020/11/23 - [EDU] - 언어를 본격적으로 배우기 전에! 맛보기 #04 - 짝수만 출력 하기 그리고 생각해 보기


















반응형
블로그 이미지

두리뭉실2:해피파인더그룹

레고가 좋고~ PBL 매력에 빠졌으며~ 취미로 개발하는 두리둥실

,

언어를 본격적으로 배우기 전

어렵지 않게 시작했으면 

좋겠다는 생각으로

문제를 해결해 보면서 

맛보기 형식으로

글을 작성해 볼까 한다.


문제를 해결하면서 

알 수 있는 것들

1. 생각들을 어떻게 코드로 작성하고,

2. 변수를 이해하고,

3. 반복문을 이해하고,

4. 비교문을 이해하는것이다.

+ 5. @


사용할 언어자바이며

개발 환경툴이클립스 IDE

사용한다.


문제

------------------------------------

5 30 3 11 8 12

<처리>

8 12 30


*


702 301 80 1000 1

<처리>

80 702 1000

------------------------------------


'5 30 3 11 8 12'라는 것을

어떻게 하면

'8 12 30'으로 만들 수 있을까?


잠시 생각해 보자!

.

.

.

.

.

.



6개의 숫자3개의 숫자

줄어 들었다.


자세히 보니 작은 숫자에서

큰 숫자로 되어 있다.

또 보니 숫자가

짝수이다.


주어진 숫자를 

오름차순으로 정렬하여

짝수만 표시하면

되는 것이다.


두번째 예도 마찬가지로

오름차순으로 정렬된

짝수이다.


거꾸로

'짝수만 오름차순으로 정렬한다'

라고 생각해도 맞다.


이 작은 차이는 

코드를 작성하면서

자연스럽게 알게 될 것이다.


계속......


다음글 - 2020/10/23 - [EDU] - 언어를 본격적으로 배우기 전에! 맛보기 #02 - 정렬 과정을 노트에 그려 보자


반응형
블로그 이미지

두리뭉실2:해피파인더그룹

레고가 좋고~ PBL 매력에 빠졌으며~ 취미로 개발하는 두리둥실

,

변수

컴퓨터 언어에선 '변하는 수' 보다는 '하나의 데이터를 저장 할 수 있는 메모리 공간'이라고 생각 하자. 나중에는 변수를 '데이터가 저장되어 있는 레퍼런스를 담는 메모리 공간'으로 디테일 하게 이해 될 것이다.


1
>>> 철수의나이 = 17
cs
기본적인 변수 사용방법이다. '='를 기준으로 오른쪽의 있는 값왼쪽에 있는 변수에 저장 한다.


1
2
3
4
>>> 철수의나이 = 철수의나이 + 10
>>> 철수의나이
27
>>> 
cs

철수의나이 변수에 저장된 값과 10을 더해서 철수의나이 변수에 저장 한다. '=' 기준으로 어느쪽에 변수가 위치함에 따라 변수에 저장 할지 변수에 저장된 값을 가져 올지 결정 한다.


왜 변수를 사용할까 의문이 든다면, 앞으로 코드를 작성할때 변수를 사용안하고 작성해 보면 몸으로 느낄것이다.


질문

스터디를 하면서 연습문제에 대한 질문이 있었다. 

1) '반지름이 10 인 월의 넓이 = 314.1592' 이렇게 나와야 하는데 왜 '314.0'으로 나오나요? 원하는 만큼 소수부분을 출력하고 싶어요.

1
2
3
4
5
>>> 10 * 10 * 3.14
314.0
>>> 10 * 10 * 3.141592
314.1592
>>> 
cs

우리는 파이를 3.14로만 기억하지 3.141592를 기억하지 않는다. --.--;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


참고 코드

1
2
3
4
5
6
>>> import math
>>> math.pi
3.141592653589793
>>> 10 * 10 * math.pi
314.1592653589793
>>> 
cs


2) (num1 + num2 + num3) / 3으로 평균을 구했는데, 파이썬에서 제공하는 함수가 있나요?

있지만, 아직 초본이기 때문에 설명은 안하고 이렇게 평균을 구할 수 있는것만 알고 있자. 


1


2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
>>> num1 = 30
>>> num2 = 90
>>> num3 = 120
>>> (num1 + num2 + num3) / 3
80.0
>>> import statistics
>>> dir(statistics)
['Decimal''Fraction''StatisticsError''__all__''__builtins__''__cached__''__doc__''__file__'
'__loader__''__name__''__package__''__spec__''_coerce''_convert''_counts''_exact_ratio'
'_fail_neg''_find_lteq''_find_rteq''_isfinite''_ss''_sum''bisect_left''bisect_right''collections'
'groupby''harmonic_mean''math''mean''median''median_grouped''median_high''median_low''mode'
'numbers''pstdev''pvariance''stdev''variance']
>>> help(statistics.mean)
Help on function mean in module statistics:
 
mean(data)
    Return the sample arithmetic mean of data.
    
    >>> mean([12344])
    2.8
    
    >>> from fractions import Fraction as F
    >>> mean([F(37), F(121), F(53), F(13)])
    Fraction(1321)
    
    >>> from decimal import Decimal as D
    >>> mean([D("0.5"), D("0.75"), D("0.625"), D("0.375")])
    Decimal('0.5625')
    
    If ``data`` is empty, StatisticsError will be raised.
 
>>> statistics.mean([num1, num2, num3])
80
>>> 
cs


마무리

변수가 무었인지 어떻게 사용하는지만 이해 했다면 좋다. 나머지는 경험을 통해서 배워가면 된다. 


다음글

이전글 2020/06/04 - [STUDY/파이썬] - [파이썬 스터디] 지인과 함께 하는 파이썬 with 두근두근 파이썬 No. 02 - IDLE와 turtle


반응형
블로그 이미지

두리뭉실2:해피파인더그룹

레고가 좋고~ PBL 매력에 빠졌으며~ 취미로 개발하는 두리둥실

,