2024-06-21
This commit is contained in:
6
Writerside/c.list
Normal file
6
Writerside/c.list
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE categories
|
||||
SYSTEM "https://resources.jetbrains.com/writerside/1.0/categories.dtd">
|
||||
<categories>
|
||||
<category id="wrs" name="Writerside documentation" order="1"/>
|
||||
</categories>
|
||||
17
Writerside/cfg/buildprofiles.xml
Normal file
17
Writerside/cfg/buildprofiles.xml
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
~ Copyright (c) 2024. Elex. All Rights Reesrved.
|
||||
~ https://www.elex-project.com/
|
||||
-->
|
||||
|
||||
<buildprofiles xsi:noNamespaceSchemaLocation="https://resources.jetbrains.com/writerside/1.0/build-profiles.xsd"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
|
||||
<variables></variables>
|
||||
<build-profile instance="f">
|
||||
<variables>
|
||||
<noindex-content>true</noindex-content>
|
||||
</variables>
|
||||
</build-profile>
|
||||
|
||||
</buildprofiles>
|
||||
22
Writerside/f.tree
Normal file
22
Writerside/f.tree
Normal file
@@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
- Copyright (c) 2024. Elex. All Rights Reesrved.
|
||||
- https://www.elex-project.com/
|
||||
-->
|
||||
|
||||
<!DOCTYPE instance-profile
|
||||
SYSTEM "https://resources.jetbrains.com/writerside/1.0/product-profile.dtd">
|
||||
|
||||
<instance-profile id="f"
|
||||
name="Fortran"
|
||||
start-page="starter-topic.md">
|
||||
|
||||
<toc-element topic="starter-topic.md">
|
||||
<toc-element topic="Hello-world.md"/>
|
||||
<toc-element topic="Variable.md"/>
|
||||
<toc-element topic="IO.md"/>
|
||||
<toc-element topic="Operator.md"/>
|
||||
<toc-element topic="Array.md"/>
|
||||
<toc-element topic="String.md"/>
|
||||
</toc-element>
|
||||
</instance-profile>
|
||||
BIN
Writerside/images/completion_procedure.png
Normal file
BIN
Writerside/images/completion_procedure.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 125 KiB |
BIN
Writerside/images/completion_procedure_dark.png
Normal file
BIN
Writerside/images/completion_procedure_dark.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 67 KiB |
BIN
Writerside/images/convert_table_to_xml.png
Normal file
BIN
Writerside/images/convert_table_to_xml.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 341 KiB |
BIN
Writerside/images/convert_table_to_xml_dark.png
Normal file
BIN
Writerside/images/convert_table_to_xml_dark.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 119 KiB |
BIN
Writerside/images/new_topic_options.png
Normal file
BIN
Writerside/images/new_topic_options.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 306 KiB |
BIN
Writerside/images/new_topic_options_dark.png
Normal file
BIN
Writerside/images/new_topic_options_dark.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 274 KiB |
28
Writerside/topics/Array.md
Normal file
28
Writerside/topics/Array.md
Normal file
@@ -0,0 +1,28 @@
|
||||
# 배열
|
||||
|
||||
포트란에서 배열의 첫 번째 인덱스는 1부터 시작됩니다.
|
||||
|
||||
## 배열의 선언
|
||||
|
||||
배열을 선언하는 방법은 2가지가 있습니다.
|
||||
|
||||
```fortran
|
||||
! dimension 키워드를 이용하는 방식
|
||||
integer, dimension(10) :: array1
|
||||
|
||||
! 변수명 뒤에 배열의 크기를 전달하는 방식
|
||||
integer :: array2(10)
|
||||
```
|
||||
|
||||
### 다차원 배열
|
||||
|
||||
```fortran
|
||||
real, dimension(10, 10) :: array3
|
||||
```
|
||||
|
||||
### 배열의 인덱스를 명시
|
||||
|
||||
```fortran
|
||||
integer :: array4(0:9)
|
||||
integer :: array5(-5:5)
|
||||
```
|
||||
14
Writerside/topics/Hello-world.md
Normal file
14
Writerside/topics/Hello-world.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# Hello, World
|
||||
|
||||
```fortran
|
||||
program hello
|
||||
implicit none
|
||||
! This is a Hello world program.
|
||||
print *, 'Hello, World!'
|
||||
end program hello
|
||||
```
|
||||
|
||||
## 특이사항
|
||||
|
||||
- 대소문자를 구분하지 않습니다.
|
||||
- 배열의 첫 번째 인덱스는 1부터 시작됩니다.
|
||||
28
Writerside/topics/IO.md
Normal file
28
Writerside/topics/IO.md
Normal file
@@ -0,0 +1,28 @@
|
||||
# 표준 입출력
|
||||
|
||||
```fortran
|
||||
program stdio
|
||||
implicit none
|
||||
|
||||
character(len=16) :: name
|
||||
|
||||
read (*,*) name
|
||||
print *, 'Hello, ', name
|
||||
end program stdio
|
||||
```
|
||||
|
||||
## 표준 출력
|
||||
|
||||
화면에 출력할 때에는 `print`를 사용합니다.
|
||||
|
||||
```fortran
|
||||
print *, 'Hello, ', name
|
||||
```
|
||||
|
||||
## 표준 입력
|
||||
|
||||
키보드로부터 입력을 받을 때에는 `read`를 사용합니다.
|
||||
|
||||
```fortran
|
||||
read (*,*) name
|
||||
```
|
||||
9
Writerside/topics/Operator.md
Normal file
9
Writerside/topics/Operator.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# 연산자
|
||||
|
||||
| 연산자 | | |
|
||||
| --- | --- | --- |
|
||||
| + | | |
|
||||
| - | | |
|
||||
| * | | |
|
||||
| / | | |
|
||||
| ** | | |
|
||||
3
Writerside/topics/String.md
Normal file
3
Writerside/topics/String.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# String
|
||||
|
||||
Start typing here...
|
||||
80
Writerside/topics/Variable.md
Normal file
80
Writerside/topics/Variable.md
Normal file
@@ -0,0 +1,80 @@
|
||||
# 변수
|
||||
|
||||
## 자료형
|
||||
|
||||
포트란에는 5 종류의 기본 자료형이 있습니다.
|
||||
|
||||
- integer
|
||||
|
||||
- real
|
||||
|
||||
- complex
|
||||
|
||||
- character
|
||||
|
||||
- logical
|
||||
|
||||
|
||||
### 정수형
|
||||
|
||||
### 실수형
|
||||
|
||||
```fortran
|
||||
program variables
|
||||
implicit none
|
||||
real :: value1
|
||||
end program variables
|
||||
```
|
||||
|
||||
아래와 같은 방식으로 원하는 부동 소수의 정밀도를 지정해서 사용할 수 있습니다.
|
||||
|
||||
```fortran
|
||||
program variables
|
||||
use, intrinsic :: iso_fortran_env, only: sp=>real32, dp=>real64
|
||||
! use, intrinsic :: iso_c_binding, only: sp=>c_float, dp=>c_double
|
||||
implicit none
|
||||
|
||||
real :: val0
|
||||
real(sp) :: val1 ! 단정도
|
||||
real(dp) :: val2 ! 배정도
|
||||
|
||||
val0 = 0.
|
||||
val1 = 0._sp
|
||||
val2 = 0._dp
|
||||
|
||||
print *, 'Max = ', huge(val0)
|
||||
print *, 'Max32 = ', huge(val1)
|
||||
print *, 'Max64 = ', huge(val2)
|
||||
|
||||
end program variables
|
||||
```
|
||||
|
||||
### 복소수형
|
||||
|
||||
복소수는 실수부와 허수부를 콤마로 구분하고 괄호로 묶어 표현합니다.
|
||||
|
||||
### 문자형
|
||||
|
||||
문자는 홑 따옴표 또는 쌍 따옴표로 묶어서 표현합니다.
|
||||
|
||||
### 논리형
|
||||
|
||||
`.true.` 또는 `.false.`값을 가질 수 있습니다.
|
||||
|
||||
## 변수 선언
|
||||
|
||||
변수는 `자료형 :: 변수명` 형식을 사용해서 정의합니다. 포트란은 대소문자를 구분하지 않으며, 이 규칙은 변수명에도 적용됩니다. 변수명의 길이는 최대 31자까지만 지정할 수 있습니다.
|
||||
|
||||
```fortran
|
||||
program variables
|
||||
implicit none
|
||||
|
||||
integer :: count
|
||||
logical :: isOk
|
||||
|
||||
end program variables
|
||||
```
|
||||
|
||||
### implicit none
|
||||
|
||||
기본적으로 포트란에서는, 선언되지 않은 변수를 사용하면 변수명의 첫 번째 문자에 따라 자동으로 변수를 선언합니다. `implicit none`을 선언하면 무조건 변수해야 하도록 지정합니다.
|
||||
19
Writerside/topics/starter-topic.md
Normal file
19
Writerside/topics/starter-topic.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# Fortran
|
||||
|
||||
## 설치
|
||||
|
||||
```bash
|
||||
sudo apt install gfortran
|
||||
```
|
||||
|
||||
## 버전 확인
|
||||
|
||||
```bash
|
||||
gfortran --version
|
||||
```
|
||||
|
||||
## 컴파일
|
||||
|
||||
```bash
|
||||
gfortran hello.f90 -o hello
|
||||
```
|
||||
5
Writerside/v.list
Normal file
5
Writerside/v.list
Normal file
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE vars SYSTEM "https://resources.jetbrains.com/writerside/1.0/vars.dtd">
|
||||
<vars>
|
||||
<var name="product" value="Writerside"/>
|
||||
</vars>
|
||||
13
Writerside/writerside.cfg
Normal file
13
Writerside/writerside.cfg
Normal file
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
- Copyright (c) 2024. Elex. All Rights Reesrved.
|
||||
- https://www.elex-project.com/
|
||||
-->
|
||||
|
||||
<!DOCTYPE ihp SYSTEM "https://resources.jetbrains.com/writerside/1.0/ihp.dtd">
|
||||
|
||||
<ihp version="2.0">
|
||||
<topics dir="topics" web-path="topics"/>
|
||||
<images dir="images" web-path="images"/>
|
||||
<instance src="f.tree"/>
|
||||
</ihp>
|
||||
Reference in New Issue
Block a user