전시실📖/Wolf🐺
WOLF 첫 시간
최진원
2022. 3. 23. 22:12
안녕하세요! WOLF에 온 것을 환영합니다!
오늘은 Wolfram language 첫시간입니다.
개발환경은 Wolfram Cloud에서 수업을 해봅시다.
0.1 실행조건
Wolfram language는 실행시킬 때 SHIFT+ENTER를 누르면 됩니다.
0.2 Wolfram 언어의 특징
1. Wolfram 언어는 고급언어이다.
컴퓨터보다 사람에 가까운 언어를 고급언어라 하는데 배우기가 쉽다.
2. Wolfram 언어의 함수들은 Camel Case를 따른다.
Camel Case는 프로그래밍에서 파일, 변수, 함수 등 대상의 이름을 띄어쓰기 없이 짓기 위하여 따르는 관례인 네이밍컨벤션(Naming convention)의 하나다.
Camel Case에서는 단어 전체적으로 소문자를 사용하지만, 각 합성어의 첫 글자만 대문자로 표기한다. 합성한 단어의 모양이 쌍봉낙타의 등과 비슷하다는 뜻에서 이름붙었다.
예) RandomInteger (o) Random integer(x) randominteger(x)
1. 오늘 배운 함수 목록
오늘 배운 재밌는 함수들을 한번 알아보자.
1.0 괄호의 의미
<Wolfram language 괄호의 의미> | ||
[ ]: 함수 뒤에 붙는다. | ( ): 연산할 때 사용한다. | { }: 리스트 |
1.1 사칙연산
사칙연산 | 일반형 | 함수형 | 설명 | 예시 코드(일반형) | 예시 코드(함수형) |
더하기 | a+b | Plus[a,b] | a와 b를 더한다. | ![]() |
![]() |
빼기 | a-b | Subtract[a,b] | a와 b를 뺀다. | ![]() |
![]() |
곱하기 | a*b | Times[a,b] | a와 b를 곱한다. | ![]() |
![]() |
나누기 | a/b | Divide[a,b] | a와 b를 나눈다. | ![]() |
![]() |
거듭제곱 | a^b | Power[a,b] | a를 밑으로 b를 지수로 거듭제곱한다. | ![]() |
![]() |
1.2 최대와 최소
함수 | 설명 | 예시 코드 |
Max[a,b,c] | a,b,c 중에서 큰 수를 출력한다. | ![]() |
Min[a,b,c] | a,b,c 중에서 작은 수를 출력한다. | ![]() |
1.3 난수(Random number) 생성
함수 설명 | 설명 | 예시 코드 |
RandomInteger[n] | 0~n까지의 정수중 무작위 수를 출력한다. | ![]() |
1.4 그래프 그리기
함수 | 설명 | 예시 코드 |
Style[,] | 색깔, 크기,폰트, 질감을 조절한다. | ![]() |
ListPlot[{a,b,c,d,e}] | 그래프를 그린다. | ![]() |
ListLinePlot[{a,b,c,d,e}] | 선으로 그래프를 그린다. | ![]() |
BarChart[{a,b,c,d}] | 막대 그래프를 만든다. | ![]() |
BarChart3D[{a,b,c,d}] | 3D로 막대 그래프를 만든다. | ![]() |
PieChart[{a,b,c,d}] | 원형차트를 만든다. | ![]() |
PieChart3D[{a,b,c,d,e}] | 3D 원형차트를 만든다. | ![]() |
{PieChart3D[{a,b,c,d}],PieChart3D[{a,b,c,d}]} | 리스트 안에 그래프를 원소로 쓸 수 있다. | ![]() |
NumberLinePlot[{a,b,c}] | 수직선이 그린다. | ![]() |
1.5 리스트
함수 | 설명 | 예시 코드 |
List[a,b,c,d] | 리스트를 생성한다. | ![]() |
{a,b,c}+d {a,b,c}*{c,d,f} Range[10]^2 |
리스트도 사칙연산이 가능하다. | ![]() |
Range[n] | 1~n까지의 정수로 리스트를 생성한다. | ![]() |
Range[a,b] | a~b까지의 수로 리스트를 생성한다. | ![]() |
Range[a,b,n] | a~b까지의 수를 n만큼 간격으로 리스트를 생성한다. |
![]() |
Reverse[] | 리스트를 역순으로 나열한다. | ![]() |
Join[{a,b,c},{d,e,f}] | 여러 개의 리스트를 결합하여 하나의 리스트로 만든다. | ![]() |
Clear[a] | 변수를 초기화 시킨다. | ![]() |
Sort[{a,b,c,d}] | 숫자를 정렬시킨다. | ![]() |
Length[{a,b,c}] | 리스트의 길이를 출력한다. | ![]() |
Total[{a,b,c,d,e}] | 리스트의 각 값을 모두 더한 값을 출력한다. | ![]() |
Count[{a,b,c,a},a] | 리스트 안에 있는 a의 개수를 출력한다. | ![]() |
First[{a,b,c}] Part[{a,b,c},n] Last[{a,b,c}] |
리스트 안에 첫번째 값을 출력한다. 리스트 안에 n번째 값을 출력한다. 리스트 안에 마지막 값을 출력한다. |
![]() |
IntegerDigits[2022] | 정수 각 자리 수를 값으로 리스트를 만든다. | ![]() |
Take[{1,2,3,4,5,6},3] | 첫번째부터 세번째 자리 수까지 리스트로 출력한다. | ![]() |
Drop[{1,2,3,4,5,6},3] | 첫번째부터 세번째 자리 수까지 버리고 나머지를 리스트로 출력한다. | ![]() |
Bonus! | 이런 것도 만들 수 있다. | ![]() |
2. 수업
오늘 첫 수업은 차장님께서 해주셨습니다.
3. 숙제
수고하셨어요! 오늘 배운 함수들로 아래 문제를 해결해서 2022년 3월 30일 (수)까지 부장님께 보내주세요!