알고리즘 프로그래밍 언어알고리즘을 작성, 구현 및 연구하는 데 사용되는 공식 언어입니다. 대부분의 프로그래밍 언어와 달리 알고리즘 언어컴퓨터의 아키텍처와 관련이 없으며 기계 장치와 관련된 세부 정보가 포함되어 있지 않습니다.

알고리즘화의 기초를 연구하기 위해 러시아어 알고리즘 언어(학교 알고리즘 언어), 러시아어로 학생이 이해할 수 있는 단어를 사용합니다.

러시아어 구문을 사용하는 Algol과 유사한 알고리즘 언어는 1980년대 중반 Academician A.P. Ershov에 의해 "기계 없는" 컴퓨터 과학 과정의 기초로 도입되었습니다.

알고리즘 언어의 주요 서비스 단어

알고리즘 설명

  • (연산)
  • 인수(논쟁)
  • 자르다(결과)
  • 일찍(시작) - 알고리즘의 시작
  • 범죄자(끝) - 알고리즘의 끝
  • 주어진- 모든 형태의 초기 데이터
  • 필요한알고리즘의 목적

데이터 유형:

  • 전부의(전부의)
  • 물건(진짜)
  • (캐릭터)
  • 리타스(리터럴) - 문자열
  • 통나무(논리적)
  • (table) - 배열을 지정하기 위해
  • 길이(길이) — 배열 요소의 수

상태 표기

  • 만약에
  • 그렇지 않으면
  • 선택

주기 지정

  • 체크 안함(주기 시작)
  • kts(주기의 끝)
  • 안녕

표현식을 만들기 위한 부울 함수 및 값

입출력

  • 입력
  • 결론

알고리즘의 일반적인 관점

1
2
3
4
5
6

알고리즘 이름(인수 및 결과)
| 주어진알고리즘 적용 조건
| 필요한알고리즘의 목표
일찍중간 값에 대한 설명
| 명령 시퀀스(알고리즘 본문)
범죄자

단어에서 알고리즘의 일부 말씀에 일찍표제라고 하며, 단어 사이에 포함된 부분은 일찍그리고 범죄자- 알고리즘의 본체.

문장에서 알고리즘 이름 뒤에 특성을 괄호( 인수, 자르다) 및 값 유형( 전부의, 물건, , 리타스또는 통나무) 모든 입력(인수) 및 출력(결과) 변수. 배열(테이블)을 설명할 때 서비스 단어가 사용됩니다. , 각 배열 요소 인덱스에 대한 경계 쌍으로 채워집니다.

알고리즘 항목에서 키워드일반적으로 밑줄 또는 굵게 표시됩니다. 들여쓰기는 논리 블록을 강조하는 데 사용되며 블록의 시작과 끝의 쌍 단어는 세로 막대로 연결됩니다.

기본 알고리즘 구조

주요 알고리즘 구조에 대한 자세한 설명은 이 문서에 나와 있습니다. 다음은 이러한 구조를 알고리즘 언어로 컴파일하기 위한 템플릿입니다.
불완전한 포크

| 만약에상태
| | 그 다음에행위
| 모두

풀 포크

1
2
3
4
5

| 만약에상태
| | 그 다음에행동 1
| | 그렇지 않으면액션 2
| 모두

분기

1
2
3
4
5
6
7
8

| 선택매개변수
| | 가치에값 1
| | | 행동 1
| | 가치에값 2
| | | 액션 2
| | 그렇지 않으면
| | | 기본 동작
| 모두

전제 조건이 있는 루프

| 안녕상태
| | 행위
| kts

사후 조건이 있는 루프

알고리즘(정식) 언어로 알고리즘을 작성하는 것을 프로그램이라고 합니다. 때로는 알고리즘의 개념 자체가 표기법으로 식별되어 "알고리즘"과 "프로그램"이라는 단어가 거의 동의어입니다. 약간의 차이점은 알고리즘을 언급할 때 원칙적으로 모든 알고리즘 언어에 공통적인 구성의 주요 아이디어를 의미한다는 사실에 있습니다. 프로그램은 항상 특정 형식 언어로 알고리즘을 작성하는 것과 관련이 있습니다.

예를 들어, 과학 기사에 발표할 때 알고리즘 아이디어를 제시할 때 관련 없는 세부 정보로 프레젠테이션을 어지럽히지 않도록 특정 프로그래밍 언어를 사용하는 것이 항상 권장되는 것은 아닙니다. 그런 경우는 비공식 알고리즘 언어가 사용됨최대한 자연에 가깝다. 이런 종류의 언어를 의사 코드. 전문가가 의사 코드에서 특정 프로그래밍 언어로 프로그램을 다시 작성하는 것은 어렵지 않습니다. 의사 코드로 알고리즘을 작성하는 것이 종종 더 명확하고 더 예시적이므로 가장 일반적인 용어의 설명에서 시작하여 상세한 프레젠테이션으로 끝나는 세부 수준을 자유롭게 선택할 수 있습니다.

의사 코드알고리즘에 대한 반정형화된 설명입니다. 조건부 알고리즘 언어, 프로그래밍 언어 요소와 자연어 구문, 일반적인 수학 표기법 등을 모두 포함합니다.

의사 코드는 알고리즘을 균일하게 작성하도록 설계된 표기법 및 규칙 시스템입니다.

의사 코드는 자연어와 프로그래밍 언어 사이의 중간 위치를 차지합니다. 한편으로는 일반 자연어에 가깝기 때문에 일반 텍스트처럼 알고리즘을 쓰고 읽을 수 있습니다. 다른 한편으로, 일부 형식적 구성과 수학적 기호는 의사 코드에서 사용되어 일반적으로 허용되는 수학적 표기법에 더 가까운 알고리즘 표기법을 제공합니다.

의사 코드에는 일반적으로 프로그래밍 언어에 고유한 일부 구문이 포함되어 있습니다. 이것은 의사 코드로 작성하는 것에서 특정 컴퓨터용 프로그래밍 언어로 알고리즘을 작성하는 것으로의 전환을 용이하게 합니다. 특히 의사 코드와 프로그래밍 언어에는 보조 단어가 있으며 그 의미는 한 번에 결정됩니다. 인쇄된 텍스트에서는 굵게 표시되고 손으로 쓴 텍스트에서는 밑줄이 그어집니다.

알고리즘의 일반적인 관점:

알고리즘 이름(인수 및 결과)

주어진 알고리즘 적용 조건

필요한 알고리즘의 목표

일찍 중간 값에 대한 설명

명령 시퀀스(알고리즘 바디)

단어에서 알고리즘의 일부 말씀에 일찍 표제라고 하며, 단어 사이에 포함된 부분은 일찍 그리고 범죄자 - 알고리즘의 본체.

문장에서 알고리즘 이름 뒤에 괄호 안에 모든 입력(인수) 및 출력(결과) 변수의 특성(arg, res)과 값 유형(integer, real, sim, lit 또는 log)이 표시됩니다. 배열(테이블)을 설명할 때 서비스 단어가 사용됩니다. , 각 배열 요소 인덱스에 대한 경계 쌍으로 채워집니다.

문장 예 :

실린더의 부피와 면적 (arg w R, H, res w V, S)

KvUr 루트( 인수물건, b, c, 자르다항목 x1, x2, res lit t)

요소 제외( 인수정수 N, 인수컷 항목 탭 A)

대각선( 인수정수 N, 인수전체 탭 A, 차단 조명. 답변)

제안 주어진 그리고 필요한 필요하지 않습니다. 알고리즘 실행기의 환경 상태를 설명하는 명령문을 작성하는 것이 좋습니다. 예를 들면 다음과 같습니다.

교체(arg lit Str1, Str2, arg res lit Text)

주어진 | 부분 문자열 Str1과 Str2의 길이가 동일합니다.

필요 | 텍스트 행의 모든 ​​곳에서 하위 문자열 Str1이 Str2로 대체됩니다.

최대값의 수(인수 정수 N, 인수 실수 탭 A, 해상도 정수 K)

주어진 | N>0

필요 | K - 표 A의 최대 요소 수

저항(arg 실수 R1, R2, arg 정수 N, res 실수 R)

주어진 | N>5, R1>0, R2>0

필요 | R - 회로 저항

여기 제안서에서 주어진 그리고 필요한 "|" 기호 뒤에 댓글이 기록됩니다. 주석은 모든 줄의 끝에 위치할 수 있습니다. 번역기에 의해 처리되지는 않지만 알고리즘을 훨씬 더 쉽게 이해할 수 있습니다.

알고리즘 언어의 주요 서비스 단어:

alg(알고리즘) sim(기호)은 yes에 대해 제공됨

arg(인수) lit(리터럴)은 no부터 시작해야 합니다.

res(결과) log(boolean)

시작(시작) 탭(테이블) 다음 값 선택

end (end) nts (cycle start) 그렇지 않으면 Enter

정수(정수) kts(루프 끝) 모두 또는 출력

실제(실제) 길이(길이) 아직 승인되지 않음

기본 명령:

1. 할당 명령.표현식을 평가하고 해당 값을 변수에 할당하는 데 사용됩니다. 일반 양식: A:= B, 기호 ":=" 왼쪽 변수의 이전 값을 오른쪽 표현식의 계산된 값으로 대체하는 명령을 의미합니다.

예: a:= (b+c) * sin(Pi/4); 나:= 나+1.

입력 및 출력 명령.

입력 변수 이름(키보드 입력)

결론 변수 이름, 표현식, 텍스트. (화면에 데이터 출력)

분기 명령.

이러한 명령은 조건(예 또는 아니오) 확인 결과에 따라 알고리즘의 대체 방법 중 하나를 선택할 수 있도록 합니다. 각 경로는 공통 출구로 연결되므로 알고리즘은 선택한 경로에 관계없이 계속됩니다.

분기 구조는 네 가지 주요 변형으로 존재합니다.

1. 만약 - 그렇다면;

만약에 상태

그 다음에 행위

2. 만약 - 그렇다면 - 그렇지 않으면;

만약에상태

그 다음에 행동 1

그렇지 않으면 액션 2

3. 선택;

선택

~에 조건 1: 작업 1

~에 조건 2: 작업 2

. . . . . . . . . . . .

~에 조건 N: 조치 N

4. 선택이 다릅니다.

선택

~에 조건 1: 작업 1

~에 조건 2: 작업 2

. . . . . . . . . . . .

~에 조건 N: 조치 N

그렇지 않으면 N+1 작업

순환 명령.

루프 본문이라고 하는 특정 작업 세트의 반복 실행을 제공합니다.

루핑을 위한 두 가지 명령이 있습니다.

1. 사이클 유형 안녕히 계세요 -단어 뒤에 쓰여진 조건이 충족될 때까지 루프의 본문을 실행하도록 지시합니다. 안녕.

체크 안함안녕상태

루프 바디

(시퀀싱)

kts

2. 사이클 유형 을 위한 -지정된 범위의 일부 변수(루프 매개변수)의 모든 값에 대해 루프 본문을 실행하도록 지시합니다.

체크 안함~을 위한~에서 i1 ~ 전에 i2

루프 바디

(시퀀싱)

kts

프로그래밍 언어들

현재 세계에는 실제로 사용되는 프로그래밍 언어가 수백 개 있습니다. 각각 고유한 적용 영역이 있습니다.

우리가 알고 있는 모든 알고리즘은 일련의 명령이며, 그 후에 유한한 수의 단계로 초기 데이터에서 결과로 전달할 수 있습니다. 처방의 세부 수준에 따라 일반적으로 프로그래밍 언어의 수준이 결정됩니다. 세부 사항이 적을수록 언어 수준이 높아집니다.

프로그래밍 언어(알고리즘 언어) - 프로그램을 구성하는 문자 시퀀스(구문 규칙)와 프로그램이 설명하는 계산(의미 규칙)을 결정하는 일련의 규칙.

프로그래밍 언어에는 다음과 같은 특징이 있습니다.

  • 언어 수준 -이 언어의 도움으로 해결되는 작업의 복잡성이 특징입니다.
  • 언어의 힘 - 작업의 수와 다양성, 이 언어를 사용하여 작성할 수 있는 해결 알고리즘이 특징입니다.
  • 신뢰할 수 있음 - 언어는 프로그램을 작성할 때 최소한의 오류를 제공해야 합니다. 또한 언어는 다음과 같아야 합니다. 잘못된 프로그램쓰기 어려웠습니다.
  • 가독성 b -사람의 프로그램 인식 용이성. 이 특성은 여러 사람이 동일한 프로그램 텍스트로 작업할 때 팀 작업에서 중요합니다.
  • 완전성 - 특정 주제 영역에서 문제의 종류를 설명하는 능력을 특징으로 합니다.
  • 유연성 - 필요한 행동을 쉽게 표현하는 것을 특징으로 합니다.

이 기준에 따라 다음 수준의 프로그래밍 언어를 구별할 수 있습니다.

  • 기계;
  • 기계 지향(어셈블러);
  • 기계 독립적(고급 언어).

기계어와 기계 지향 언어는 데이터 처리 프로세스의 세부 사항을 지정해야 하는 저급 언어입니다. 반면에 고급 언어는 일부 구어 단어와 일반적인 수학 기호를 사용하여 자연어를 모방합니다. 이 언어는 더 인간 친화적입니다.

고급 언어는 다음과 같이 나뉩니다.

  • 절차적(알고리즘)(Basic, Pascal, C 등), 알고리즘에 대한 명확한 설명을 위한 것입니다. 문제를 해결하기 위해 절차적 언어는 문제를 해결하는 절차를 한 형식 또는 다른 형식으로 명시적으로 작성해야 합니다.
  • 두뇌 티저(프롤로그, 리스프 등 ) , 문제를 해결하기 위한 알고리즘의 개발에 초점을 맞추는 것이 아니라 문제에 대한 체계적이고 형식화된 설명에 초점을 맞춰 솔루션이 컴파일된 설명에서 따를 수 있도록 합니다.
  • 객체 지향(오브젝트 파스칼, C++, 자바 등), 우리에 대한 데이터와 행동을 결합하는 객체의 개념을 기반으로 합니다. 특정 문제를 해결하는 객체 지향 언어의 프로그램은 본질적으로 이 문제와 관련된 세계의 일부를 설명합니다. 상호 작용하는 대상 시스템의 형태로 현실에 대한 설명은 상호 작용하는 절차의 형태보다 더 자연스럽습니다.

컴퓨터 프로그램 작성에는 다음 단계가 포함됩니다.

§ 분석;

§ 설계;

§ 프로그래밍;

§ 테스트 및 디버깅

§ 착취.

현재까지 6세대 프로그래밍 언어가 있습니다. 기능적 능력의 각 후속 세대는 이전 세대와 질적으로 다릅니다.

  • 첫 세대: 기계어. XX 세기의 40 년대 중반에 나타났습니다.
  • 2세대: 어셈블러.사실, 이들은 동일한 기계어이지만 더 아름답게 "포장"됩니다. 1950년대 후반 등장
  • 3세대: 절차적 언어. 1960년대 초반 등장. 이 세대에는 모든 영역의 문제를 해결하는 데 사용할 수 있는 범용 고급 언어(예: Algol-60)가 포함됩니다.
  • 4세대: 복잡한 데이터 구조를 지원하는 언어(예: SQL). XX 세기의 60 년대 후반에 나타났습니다.
  • 5세대: 인공 지능 언어(예: 프롤로그). XX 세기의 70 년대 초반에 나타났습니다.
  • 6세대: 신경망 언어(자가 학습 언어). 연구 작업이 분야에서 1980년대 중반에 시작되었습니다.

결론

컴퓨터가 작업을 수행하려면 다음을 수행해야 합니다. 특정 프로그램. 프로그램은 엄격한 규칙에 따라 컴퓨터에서 처리할 수 있는 형식으로 작성되어야 하며 이러한 규칙 집합을 프로그래밍 언어 또는 알고리즘 언어라고 합니다. 앎 일반 원칙컴퓨터에서 프로그램을 작성하고 작성하면 데이터 정보 처리 작업에 필요한 거의 모든 작업을 해결할 수 있습니다.

교육부 러시아 연방페름 주립 기술 대학

학과 정보 기술자동화 시스템

비켄티예바 O.L.

"알고리즘 언어와 프로그래밍" 과정 강의 요약(C++ 언어 기초, I 학기)

소개

첫 학기는 C 언어의 기본 구성과 기본 프로그래밍 기술(구조적 프로그래밍)을 다룬다.

구조적 프로그래밍은 특정 규칙을 따르면 개발 시간과 오류 수를 줄이고 프로그램 수정 가능성을 용이하게 하는 프로그램을 만드는 기술입니다.

1.1. 알고리즘 및 프로그램

알고리즘은 초기 데이터를 변경하는 것에서 최종 결과로 가는 계산 프로세스를 정의하는 정확한 처방입니다. 즉, 어떤 목표를 달성하기 위한 레시피입니다.

알고리즘을 실행에 적합한 형태로 제시하기 위한 일련의 도구 및 규칙 컴퓨터프로그래밍 언어라고 하고, 이 언어로 작성된 알고리즘을 프로그램이라고 합니다.

첫째, 행동 알고리즘은 항상 개발된 다음 프로그래밍 언어 중 하나로 작성됩니다. 프로그램의 텍스트는 번역가라는 특수 서비스 프로그램에 의해 처리됩니다. 프로그래밍 언어는 인공 언어입니다. 그들은 제한된 수의 "단어"와 명령 (연산자) 작성에 대한 매우 엄격한 규칙에서 자연어와 다릅니다. 이러한 요구 사항의 전체는 프로그래밍 언어의 구문을 형성하고 각 구성의 의미는 의미입니다.

1.2 알고리즘의 속성

1. 질량 특성: 알고리즘은 하나의 문제가 아니라 유사한 문제의 전체 클래스에 적용되어야 합니다(이차 방정식을 푸는 알고리즘은 하나의 방정식이 아니라 모든 이차 방정식을 풀어야 함).

2. 효율성: 알고리즘은 특정 단계의 결과를 가져와야 합니다(1을 3으로 나눌 때 주기적 분수 0.3333(3)이 얻어지며 최종 결과를 얻으려면 이 분수를 얻는 정확도를 지정해야 합니다. 예를 들어 소수점 이하 4자리까지).

3. 확정성(결정론) - 알고리즘의 각 동작은 수행자에게 명확해야 합니다(일본어를 할 수 없는 사람을 위한 일본어 가전 제품 지침은 결정론의 속성이 없기 때문에 알고리즘이 아닙니다).

4. 이산성 - 프로세스는 나눌 수 없음을 사용하여 설명해야 합니다.

각 단계에서 수행되는 작업(즉, 단계를 더 작은 단계로 나눌 수 없음).

알고리즘은 다음과 같은 형식으로 나타낼 수 있습니다.

1) 알고리즘에 대한 구두 설명.

2) 알고리즘의 그래픽 설명.

3) 알고리즘 프로그래밍 언어를 사용하여

1.2. 컴파일러와 인터프리터

에서 프로그래밍 언어를 사용하여 이전에 컴파일된 알고리즘을 설명하는 텍스트가 생성됩니다. 작동하는 프로그램을 얻으려면 이 텍스트를 일련의 프로세서 명령어로 번역해야 합니다. 특별 프로그램, 번역가라고 합니다. 번역기에는 컴파일러와 인터프리터의 두 가지 유형이 있습니다. 컴파일러는 하나의 연속적인 프로세스에서 소스 모듈의 텍스트를 객체 모듈이라고 하는 기계어 코드로 변환합니다. 동시에 그는 구문 오류를 찾기 위해 프로그램의 소스 코드를 먼저 봅니다. 인터프리터는 모드 연산자에서 프로그램의 소스 모듈을 연산자에 따라 실행합니다.

각 문장을 기계어로 번역하는 작업 과정.

1.3 프로그래밍 언어

다른 유형의 프로세서에는 다른 명령 세트가 있습니다. 프로그래밍 언어가 특정 유형의 프로세서에 중점을 두고 그 기능을 고려한다면 저수준 프로그래밍 언어라고 합니다. 가장 낮은 수준의 언어는 니모닉이라고 하는 특수 기호의 형태로 각 기계어 명령을 단순히 나타내는 어셈블리 언어입니다. 저수준 언어의 도움으로 개발자가 프로세서의 모든 기능에 액세스할 수 있기 때문에 매우 효율적이고 컴팩트한 프로그램이 생성됩니다. 왜냐하면 명령어 세트 다른 모델프로세서도 다르므로 각 프로세서 모델에는 고유한 어셈블리 언어가 있으며 여기에 작성된 프로그램은 이 환경에서만 사용할 수 있습니다. 이러한 언어는 작은 시스템 응용 프로그램, 장치 드라이버 등을 작성하는 데 사용됩니다.

고급 프로그래밍 언어는 특정 컴퓨터 아키텍처의 특성을 고려하지 않으므로 만든 프로그램적절한 번역기가 만들어지면 소스 수준에서 다른 플랫폼으로 쉽게 전송됩니다. 고급 언어로 프로그램을 개발하는 것은 기계어보다 훨씬 쉽습니다.

고급 언어는 다음과 같습니다.

1. Fortran은 20세기 50년대. 여러 가지 중요한 프로그래밍 개념을 구현했습니다. 이 언어를 위해 만들어졌습니다. 큰 금액통계 제품군에서 위성 관리에 이르기까지 다양한 라이브러리를 제공하므로 많은 조직에서 계속 사용하고 있습니다.

2. COBOL - 경제 계산 및 솔루션을 위한 컴파일된 언어 60년대 초반에 개발된 비즈니스 작업. Cobol은 외부 미디어에 저장된 대량의 데이터 작업을 위한 매우 강력한 도구를 구현했습니다.

3. 파스칼 - 마지막에 생성됨 70년대 스위스 수학자 Niklaus Wirth가 프로그래밍 교육을 위해 특별히 제작했습니다. 알고리즘적 사고를 개발하고 짧고 잘 작성할 수 있습니다. 읽을 수 있는 프로그램, 알고리즘화의 기본 기술을 보여주며 대규모 프로젝트의 구현에도 적합합니다.

4. BASIC - 생성 60년대는 프로그래밍 교육에도 사용됩니다. 컴파일러와 인터프리터가 있으며 가장 인기 있는 프로그래밍 언어 중 하나입니다.

5. C - 70년대에 만들어졌으며 처음에는 대량 프로그래밍 언어로 간주되지 않았습니다. 동일한 효율적이고 짧은 프로그램을 만들 수 있지만 특정 프로세서에 의존하지 않기 위해 어셈블러를 대체할 계획이었습니다. 여러모로 파스칼과 비슷하다. 추가 기능메모리로 작업합니다. 많은 응용 프로그램이 포함되어 있으며 시스템 프로그램, 만큼 잘 운영 체제유닉스.

6. C++는 1980년 Bjarne Stroustrup이 만든 C 언어의 객체 지향 확장입니다.

7. Java는 Sun이 처음에 만든 언어입니다. 90년대 C++ 기반. 저수준 기능을 제거하여 C++에서 응용 프로그램 개발을 단순화하도록 설계되었습니다. 주요 특징언어는 기계 코드로 컴파일되지 않고 플랫폼 독립적인 바이트 코드로 컴파일된다는 것입니다(각 명령은 1바이트를 차지합니다). 이 코드는 인터프리터인 JVM(Java Virtual Machine)을 사용하여 실행할 수 있습니다.

2. C++ 프로그램의 구조

C 프로그램의 구조는 다음과 같습니다. #preprocessor 지시문

. . . . . . . . .

# 전처리기 지시문 function a ()

()의 함수 연산자

연산자

void main() //프로그램 실행이 시작되는 함수 연산자

설명

과제

빈 명령문 기능

합성물

이행

전처리기 지시문 - 컴파일하기 전에 프로그램 텍스트의 변환을 제어합니다. 형식으로 SI에서 준비한 원래 프로그램 텍스트 파일, 처리의 3단계를 거칩니다.

1) 전처리기 텍스트 변환;

2) 편집;

3) 레이아웃(링크 편집 또는 어셈블리).

이 세 단계 후에 프로그램의 실행 코드가 형성됩니다. 예비 작업

cessor - 컴파일 전에 프로그램 텍스트의 변환. 전처리 규칙은 전처리기 지시문을 사용하여 프로그래머가 정의합니다. 지시문은 #으로 시작합니다. 예를 들어,

1) #define - 텍스트의 대체 규칙을 나타냅니다. #제로 0.0을 정의

프로그램에서 ZERO라는 이름을 사용할 때마다 다음으로 대체됨을 의미합니다.

2) #포함< имя заголовочного файла>- 표준 라이브러리와 함께 제공되는 "헤더 파일" 카탈로그의 텍스트를 프로그램 텍스트에 포함하기 위한 것입니다. 각 C 라이브러리 함수에는 헤더 파일 중 하나에 해당 설명이 있습니다. 헤더 파일 목록은 언어 표준에 의해 정의됩니다. include 지시문을 사용하면 해당 표준 턱받이가 포함되지 않습니다.

라이브러리에 포함되지만 지정된 헤더 파일의 설명을 프로그램 텍스트에 삽입할 수만 있습니다. 라이브러리 코드는 링크 단계, 즉 컴파일 후 연결됩니다. 비록 헤더 파일표준 기능에 대한 모든 설명을 포함하며 프로그램에서 사용되는 기능만 프로그램 코드에 포함됩니다.

전처리 후 프로그램 텍스트에 전처리기 지시문이 남아 있지 않습니다.

프로그램은 설명과 정의의 집합이며 기능의 집합으로 구성됩니다. 이 함수들 중에는 항상 main이라는 이름의 함수가 있어야 합니다. 그것 없이는 프로그램을 실행할 수 없습니다. 함수 이름 앞에는 함수에서 반환된 값의 유형(결과 유형)에 대한 정보가 옵니다. 함수가 아무 것도 반환하지 않으면 void 유형이 지정됩니다: void main(). main을 포함한 각 기능에는 매개변수 세트가 있어야 하며 비어 있을 수 있으며 (void)는 대괄호로 표시됩니다.

함수 본문은 함수 헤더를 따릅니다. 함수의 본문은 정의, 선언 및 실행 가능한 명령문으로 묶인 시퀀스입니다. 바지 멜빵. 각 정의, 설명 또는 명령문은 세미콜론으로 끝납니다.

정의 - 프로그램에서 처리되는 데이터를 나타내는 데 필요한 개체(개체는 명명된 메모리 영역이고 개체의 특수한 경우는 변수임)를 소개합니다. 예는

정수 y = 10 ; // 명명된 상수 float x ; //변하기 쉬운

설명 - 프로그램의 다른 부분에 설명된 개체 및 기능의 속성과 이름에 대해 컴파일러에 알립니다.

연산자 - 실행의 각 단계에서 프로그램의 동작을 정의합니다.

예제 C 프로그램:

#포함 //전처리기 지시문

시험 문제

1. C++ 프로그램의 일부는 무엇입니까?

2. 정의는 선언과 어떻게 다릅니까?

3. C++에서 실행 가능한 프로그램을 만드는 단계를 나열하십시오.

4. 전처리기란?

5. 전처리기 지시문이란 무엇입니까? 전처리기 지시어의 예를 제시하십시오.

6. "My first C++ program"이라는 텍스트를 출력하는 프로그램을 작성하세요.

2. C++ 언어의 기본 기능 2.1 언어의 구성

모든 자연어 텍스트에서 기호, 단어, 구 및 문장의 네 가지 주요 요소를 구별할 수 있습니다. 알고리즘 언어에는 이러한 요소도 포함되어 있으며 단어만 어휘(기본 구성), 구 - 표현식, 문장 - 연산자라고 합니다. 토큰은 기호, 어휘 및 기호의 표현식, 표현식 및 어휘 기호의 연산자로 구성됩니다(그림 1.1).

쌀. 1.1. 알고리즘 언어의 구성 따라서 알고리즘 언어의 요소는 다음과 같습니다.

식별자는 C 프로그램 개체의 이름입니다. 식별자에 라틴 문자, 숫자 및 밑줄을 사용할 수 있습니다. 대문자와 소문자가 구별됩니다. 예를 들어 PROG1, prog1 및 Prog1은 세 가지 다른 식별자입니다. 첫 번째 문자는 문자 또는 밑줄(숫자가 아님)이어야 합니다. 식별자의 공백은 허용되지 않습니다.

키워드(예약) 단어는 컴파일러에 특별한 의미가 있는 단어입니다. 식별자로 사용할 수 없습니다.

- 연산 기호는 피연산자에 대한 연산을 정의하는 하나 이상의 기호입니다. 연산은 이 연산에 관련된 피연산자의 수에 따라 단항, 이진 및 삼항으로 나뉩니다.

상수는 변경할 수 없는 값입니다. 정수, 실수, 문자 및 문자열 상수가 있습니다. 컴파일러는 상수를 토큰(기본 구문)으로 구분하고 모양에 따라 유형 중 하나에 할당합니다.

구분 기호 - 대괄호, 점, 쉼표, 공백 문자.

2.1.1. C++의 상수

상수는 고정 숫자, 문자열 또는 문자 값의 표현을 나타내는 토큰입니다.

상수는 5개의 그룹으로 나뉩니다.

전부의;

- 실수(부동 소수점);

열거된;

상징적;

끈.

컴파일러는 어휘를 선택하고 한 그룹이나 다른 그룹에 할당한 다음 내부적으로

프로그램의 텍스트에 쓰는 형식과 숫자 값에 따라 세 그룹을 특정 유형으로 분류합니다.

정수 상수는 10진수, 8진수 및 16진수일 수 있습니다. 10진수 상수는 0이 아닌 한 0에서 시작하지 않는 10진수의 시퀀스로 정의됩니다(예: 8, 0, 192345). 8진수 상수는 항상 0으로 시작하는 상수입니다. 0 뒤에 8진수가 옵니다(예: 016 - 10진수 값 14, 01). 16진수 상수는 0x 또는 0X 문자가 앞에 오는 일련의 16진수입니다(예: 0xA, 0X00F).

정수 상수 컴파일러의 값에 따라다르게 제시

안에 컴퓨터 메모리(즉, 컴파일러는 상수에 적절한 데이터 유형을 지정합니다).

실수 상수는 컴퓨터 메모리에서 다른 형태의 내부 표현을 갖습니다. 컴파일러는 이러한 상수를 형식으로 인식합니다. 실수 상수는 고정 소수점과 부동 소수점의 두 가지 형식으로 나타낼 수 있습니다. 고정 소수점 상수 유형: [자릿수].[자릿수](예: 5.7, .0001, 41.). 부동 소수점 상수 유형: [자릿수][.][자릿수]E|e[+|-][자릿수 ](예: 0.5e5, .11e-5, 5E3). 실수 상수의 표기법에서 정수 또는 소수 부분, 소수점, 또는 지수가 있는 지수의 부호는 생략될 수 있습니다.

열거 상수는 enum 키워드를 사용하여 도입됩니다. 이들은 고유하고 사용하기 쉬운 표기법이 할당된 일반 정수 상수입니다. 예: 열거형 ( 1=1, 2=2, 3=3, 4=4);

열거형(0,1,2,3) - 열거형 상수의 정의에서 기호 = 및 숫자 값을 생략하면 기본적으로 값이 할당됩니다. 이 경우 가장 왼쪽의 식별자는 값 0을 받고 각 후속 식별자는 1씩 증가합니다.

열거형( 10=10, 3=3, 4, 5, 6);

enum (일요일, 월요일, 화요일, 수요일, 목요일, 금요일, 토요일-

문자 상수는 아포스트로피로 묶인 하나 또는 두 개의 문자입니다. 하나의 문자로 구성된 문자 상수는 char 유형이고 메모리에서 1바이트를 차지하며, 두 개의 문자로 구성된 문자 상수는 int 유형이고 2바이트를 차지합니다. \ 기호로 시작하는 시퀀스를 이스케이프 시퀀스라고 하며 다음과 같이 사용됩니다.

- 그래픽 표시가 없는 문자를 나타내려면 다음과 같이 하십시오.

\a - 소리 신호,

\b - 한 단계 반환, \n - 줄 바꿈,

\t - 수평 탭.

- 문자를 나타내려면: \ , ' , ? , "(\\, \' ,\? ,\").

- 16진수 또는 8진수 코드(\073, \0xF5)를 사용하여 문자를 나타냅니다.

문자열 상수는 따옴표로 묶인 일련의 문자입니다.

제어 문자는 문자열 내에서도 사용할 수 있습니다. 예: "\n새 줄",

"\n\"고수준 알고리즘 프로그래밍 언어 ​\"" .

2.2. C++의 데이터 유형

데이터는 프로그램에서 주변 세계를 표시합니다. 프로그램의 목적은 데이터를 처리하는 것입니다. 데이터 다양한 방식다르게 저장되고 처리됩니다. 데이터 유형은 다음을 정의합니다.

1) 컴퓨터 메모리에 있는 데이터의 내부 표현;

2) 이 유형의 값이 취할 수 있는 값 세트;

3) 이 유형의 데이터에 적용할 수 있는 작업 및 기능입니다.

작업의 요구 사항에 따라 프로그래머는 프로그램 개체의 유형을 선택합니다. C++ 유형은 단순 유형과 복합 유형으로 나눌 수 있습니다. 단순 유형은 단일 값을 특징으로 하는 유형입니다. C++는 6가지 간단한 데이터 유형을 정의합니다.

정수(정수)

char (문자)

wchar_t(와이드 문자) bool(부울) float(실수)

double(배정밀도 실수)

내부 표현과 표준 유형의 범위를 지정하는 4가지 유형 지정자가 있습니다.

short (short) long (long) signed (signed)

서명되지 않은

2.2.1. 정수를 입력

이 유형의 값은 정수입니다.

int 유형의 크기는 표준에서 정의되지 않지만 컴퓨터와 컴파일러에 따라 다릅니다. 16비트 프로세서의 경우 2바이트가 할당되고 32비트 프로세서의 경우 4바이트가 할당됩니다.

int 앞에 short 지정자가 있으면 숫자에 2바이트가 할당되고 지정자가 long이면 4바이트가 할당됩니다. 집합은 개체에 할당된 메모리 양에 따라 다릅니다. 허용된 값, 객체가 수락할 수 있는 항목:

short int - 2바이트를 차지하므로 -32768 ..+32767의 범위를 갖습니다.

long int - 4바이트를 차지하므로 범위가 -2 147 483 648..+2 147 483 647입니다.

int 유형은 16비트 PC의 short int 유형 및 32비트 PC의 long int 유형과 동일합니다.

부호 있는 수정자와 부호 없는 수정자는 객체가 취할 수 있는 유효한 값 집합에도 영향을 미칩니다.

unsigned short int - 2바이트를 차지하므로 범위는 0..65536입니다. unsigned long int - 4바이트를 차지하므로 범위가 0..+4 294 967입니다.

2.2.2. 문자 입력

이 유형의 값은 유한 순서 문자 집합의 요소입니다. 각 문자에는 문자 코드라고 하는 숫자가 할당됩니다. 가치 미달 문자 유형 1바이트가 할당됩니다. char 유형은 signed 및 unsigned 지정자와 함께 사용할 수 있습니다. Signed char 데이터는 -128 ~ 127 범위의 값을 저장할 수 있습니다. Unsigned char은 0 ~ 255 범위의 값을 저장할 수 있습니다. 인코딩은 ASCII(American Standard Code foe International Interchange)를 사용합니다. 0에서 31까지의 코드를 가진 기호는 서비스 기호이며 I/O 문에서만 독립적인 의미를 갖습니다.

char 유형의 값은 지정된 범위의 숫자를 저장하는 데에도 사용됩니다.

2.2.3. wchar_t 유형

유니코드와 같이 인코딩이 1바이트로 충분하지 않은 문자 집합과 함께 작동하도록 설계되었습니다. 이 유형의 크기는 일반적으로 짧은 유형에 해당합니다. 이 유형의 문자열 상수는 L 접두사 L"String #1"로 작성됩니다.

2.2.4. 유형 부울

bool 유형을 boolean이라고 합니다. 그 값은 true와 false 값을 가질 수 있습니다. false의 내부 표현은 0이고 다른 값은 true로 해석됩니다.

2.2.5. 부동 소수점 유형.

내부 대표 실수가수와 지수의 두 부분으로 구성됩니다. IBM 호환 PC에서 float 값은 4바이트를 차지하며 그 중 가수의 부호에 1비트, 지수에 8비트, 가수에 24비트가 할당됩니다.

Double 타입의 값은 8바이트를 차지하며, 순서와 가수에 각각 11자리와 52자리가 할당됩니다. 가수의 길이는 숫자의 정밀도를 결정하고 지수의 길이는 범위를 결정합니다.

이중 유형 이름 앞에 긴 지정자가 있으면 값에 바이트가 할당됩니다.

2.2.6. 보이드 타입

에게 주요 유형에는 void 유형도 포함됩니다.이 유형의 값 집합은 비어 있습니다.

2.3. 변수

C++에서 변수는 특정 유형의 데이터를 저장하는 명명된 메모리 영역입니다. 변수에는 이름과 값이 있습니다. 이름은 값이 저장되는 메모리 영역을 나타내는 데 사용됩니다. 모든 변수는 사용 전에 선언해야 합니다. 예:

설명 연산자의 일반 보기:

[메모리 클래스] 유형 이름 [이니셜라이저];

스토리지 클래스는 auto, extern, static, register와 같은 값을 가질 수 있습니다. 스토리지 클래스는 변수의 수명과 범위를 정의합니다. 스토리지 클래스가 명시적으로 지정되지 않은 경우 컴파일러는 선언 컨텍스트에 따라 이를 결정합니다. 수명은 일정할 수 있습니다(프로그램 실행 중이거나 블록 중 임시). 범위는 변수에 대한 일반적인 액세스가 허용되는 프로그램 텍스트의 일부입니다. 일반적으로 범위는 범위와 동일합니다. 내부 블록에 같은 이름의 변수가 있는 경우는 예외입니다.

Const - 이 변수를 변경할 수 없음을 나타냅니다(상수라고 함). 기술할 때 변수에 초기값을 할당할 수 있습니다(초기화). 메모리 클래스:

auto는 자동 지역 변수입니다. 자동 지정자는 예를 들어 함수 본문에서 블록 개체를 정의할 때만 지정할 수 있습니다. 블록에 들어갈 때 메모리가 이러한 변수에 할당되고 블록이 종료될 때 해제됩니다. 블록 외부에는 그러한 변수가 존재하지 않습니다.

extern은 전역 변수이며 프로그램의 다른 위치(다른 파일 또는 나중에 텍스트)에 있습니다. 모든 프로그램 파일에서 사용할 수 있는 변수를 만드는 데 사용됩니다.

static은 정적 변수이며 변수가 정의된 파일 내에서만 존재합니다.

레지스터 - 자동과 유사하지만 메모리는 프로세서 레지스터에 할당됩니다. 이것이 불가능하면 변수는 자동으로 처리됩니다.

정수 //전역 변수 void main()(

int b;//지역변수

extern int x;//변수 x는 다른 곳에서 정의됩니다. static int c;//로컬 정적 변수 a=1;//전역 변수에 할당

int a; // 지역 변수

a=2;//로컬 변수에 대입::a=3;//전역 변수에 대입

int x=4;//x 정의 및 초기화

예에서 변수 a는 모든 블록 외부에 정의됩니다. 변수 a의 범위는 지역 변수 a가 사용되는 행을 제외하고 전체 프로그램입니다. 변수 b와 c는 지역적이며 범위는 블록입니다. 수명은 다릅니다. b 아래의 메모리는 블록에 들어갈 때 할당되고(기본 메모리 클래스가 auto이기 때문에) 블록이 종료될 때 해제됩니다. (정적)이 있는 변수는 프로그램이 실행되는 동안 존재합니다.

변수가 정의될 ​​때 명시적으로 초기화되지 않으면 컴파일러는 전역 및 정적 변수를 0으로 설정합니다. 자동 변수가 초기화되지 않습니다..

변수 이름은 해당 범위 내에서 고유해야 합니다.

변수 선언은 선언 또는 정의로 수행할 수 있습니다. 선언에는 변수의 스토리지 클래스 및 유형에 대한 정보가 포함되어 있으며 정의는 이 정보와 함께 스토리지 할당을 지시합니다. 예에서 extern int x; - 선언 및 나머지 - 정의.

2.4 C++에서의 연산 기호

조작 기호는 표현의 형성을 제공합니다. 표현식은 피연산자, 연산자 기호 및 괄호로 구성됩니다. 각 피연산자는 차례로 표현식 또는 표현식의 특수한 경우(상수 또는 변수)입니다.

단항 연산

& 피연산자의 주소 얻기

* 주소 참조(역참조)

- 단항 빼기, 산술 피연산자의 부호를 변경합니다.

++ 단위 증가:

접두사 연산 - 사용되기 전에 피연산자를 증가시킵니다.

후위 연산은 피연산자가 사용된 후 피연산자를 증가시킵니다.

정수 a=(m++)+n; // a=4,m=2,n=2

정수 b=m+(++n);//a=3,m=1,n=3

1 감소:

접두사 연산 - 피연산자를 사용으로 줄입니다.

후위 연산은 피연산자가 사용된 후 피연산자를 감소시킵니다.

해당 유형의 개체에 대한 크기(바이트) 계산

피연산자가 있다

두 가지 형태가 있습니다

식의 크기

sizeof(float)//4

실제 상수가 기본값이므로 sizeof(1.0)//8

교육용 알고리즘 언어는 알고리즘을 자연(인간) 언어로 작성하는 것과 컴퓨터 언어(프로그래밍 언어)로 작성하는 것의 중간 형태로 알고리즘을 작성하는 수단이다.

교육용 알고리즘 언어의 장점은 단순함과 알고리즘이 특정 제한된 수의 단어를 사용하여 러시아어로 작성되고 의미와 사용 방법이 엄격하게 정의된다는 사실을 포함합니다. 이러한 단어를 기능어라고 합니다.

서비스 단어와 다른 언어 단어를 구별하기 위해 쓸 때 밑줄을 긋습니다.

학습 알고리즘 언어의 알고리즘 항목은 제목과 알고리즘 본문으로 구성됩니다. 알고리즘의 본문은 키워드 사이에 포함됩니다. 일찍그리고 범죄자알고리즘 명령의 시퀀스입니다. 제목에는 내용, 입력 데이터(인수) 목록 및 결과를 반영하는 알고리즘 이름이 포함됩니다.

알고리즘 헤더의 속성은 키워드입니다. .

따라서 교육용 알고리즘 언어로 작성된 알고리즘은 다음과 같은 형식을 갖습니다.

알고리즘 이름

인수 초기 데이터 목록

자르다 결과 목록

알고리즘 명령 시퀀스

할당 명령으로 학교 알고리즘 언어 학습을 시작하는 것이 좋습니다. 이는 주요 명령 중 하나입니다.

다음과 같이 작성됩니다.

<переменная> := <выражение>

": =" 기호는 "할당"으로 읽습니다.

값이 할당된 값이 명령의 오른쪽에 포함된 경우 다음과 같은 일이 발생합니다.

1) 할당 명령의 오른쪽에 쓰여진 표현식의 값은 이 표현식에 포함된 모든 값의 현재 값을 사용하여 계산됩니다.

2) 변수에 새로 계산된 현재 값이 할당됩니다. 이 경우 변수의 이전 값이 파괴됩니다.

따라서 b: = a + b 명령은 변수 a의 값을 b의 이전 현재 값에 더하여 얻은 결과가 b의 새로운 현재 값이 됨을 의미합니다.

이 예에서는 할당의 세 가지 주요 속성을 보여줍니다.

1) 변수에 값이 할당되지 않은 동안에는 정의되지 않은 상태로 유지됩니다.

2) 변수에 할당된 값은 다음에 이 변수에 새 값을 할당할 때까지 저장됩니다.

3) 변수에 할당된 새 값이 이전 값을 대체합니다.

이제 기본 구조에 대해 알아 보겠습니다. "팔로우"와 같은 작업부터 시작하겠습니다. 그것은 차례로 이어지는 일련의 행동에 의해 형성됩니다.

1막

2막

. . . . . . . . .

액션 n

다음으로 기본 "분기" 구조를 고려하십시오. 조건(예 또는 아니오) 확인 결과에 따라 알고리즘의 대체 방법 중 하나를 선택할 수 있습니다. 각 경로는 공통 출구로 연결되므로 알고리즘은 선택한 경로에 관계없이 계속됩니다. 분기 구조는 네 가지 주요 변형으로 존재합니다.



1. 만약-그렇다면;

만약에 상태

그 다음에 행위

2. if-then-else;

만약에 상태

그 다음에 행동 1

그렇지 않으면 액션 2

선택

~에조건 1: 작업 1

~에조건 2: 작업 2

. . . . . . . . . . . .

~에 조건 N: 조치 N

{그렇지 않으면N+1 작업}

마지막으로 학교 알고리즘 언어를 사용하는 주기의 기본 구조는 다음과 같습니다.

학교에서는 이른바 알고리즘화의 기초를 연구합니다. 학교 알고리즘 언어 (교육용 알고리즘 언어), 러시아어로 학생이 이해할 수 있는 단어를 사용합니다. 대부분의 프로그래밍 언어와 달리 알고리즘 언어는 컴퓨터 아키텍처와 관련이 없으며 기계 장치와 관련된 세부 정보를 포함하지 않습니다.

일반적인 용어로 알고리즘 언어의 알고리즘은 다음 형식으로 작성됩니다.

알고리즘 이름(인수 및 결과) 주어진알고리즘 적용 조건 필요한알고리즘의 목표 일찍중간 값에 대한 설명 | 명령 시퀀스(알고리즘 본문) 범죄자

알고리즘을 작성할 때 키워드는 일반적으로 밑줄이 그어지거나 굵게 강조 표시되었습니다. 들여쓰기를 사용하여 논리 블록을 강조 표시하고 블록의 시작과 끝 단어 쌍을 세로 막대로 연결했습니다.

제곱합 계산의 예:

제곱의 합 ( 인수 전부의 N, 자르다 전부의에스) 주어진| n > 0 필요한| S = 1*1 + 2*2 + 3*3 + … + n*n 일찍 전부의나는 | 입력 N; S:=0 | 체크 안함 1에서 n까지 | | S:= S + 나는 * 나는 | kts | 결론"S=", S 범죄자

전자 워크숍

알고리즘 언어 프로그래밍에 대한 이론적 연구를 강화하기 위해 1985년 모스크바 주립 대학의 Mekhmat 전문가가 편집기-컴파일러를 만들었습니다. "전자 워크샵"("E" - Ershov를 기리기 위해) 알고리즘 언어로 프로그램을 입력, 편집 및 실행할 수 있습니다.

1986년에 "E-practice"를 위해 "Robot", "Drafter", "Two-legged", "All-terrain vehicle"과 같은 일련의 훈련 세계(연주자)가 출시되어 간단히 개념을 소개할 수 있습니다. 알고리즘의. "E-workshop"은 Yamaha, Corvette, UKNC와 같은 컴퓨터에서 구현되었으며 널리 사용되었습니다.

이 프로그래밍 언어는 지속적으로 개선되었으며 1990년 교과서에 "E-workshop"의 최신 버전에 대한 설명이 실렸습니다. 이 교과서를 지원하는 프로그래밍 시스템 "KuMir"("교육 세계 세트")는 1990년 InfoMir 엔터프라이즈에서 출시되었습니다. 이 시스템의 언어는 "KuMir"라고도 합니다.

1995 년 "KuMir"는 A. G. Kushnirenko, G. V. Lebedev 및 R. A. Svorenya의 교과서를 기반으로 "정보 및 컴퓨터 공학 기초" 과정의 주요 교육 자료로 러시아 교육부에서 추천했습니다. .

비판

그러나 알고리즘 언어는 컴퓨터 아키텍처에 직접 연결하는 세부 정보가 없는 경우에도 Algolo를 참조한다는 점에 유의해야 합니다. -유사한 언어, 암묵적으로 학생들에게 기계의 폰 노이만 아키텍처에 의존하도록 가르칩니다. (Von Neumann 아키텍처는 Turing Machine이라는 초기 아이디어의 실제 구현입니다. Turing의 아이디어 외에도 다른 아이디어가 있습니다. 그 중 가장 인기 있는 것은 Lambda Calculus: Alonzo Church가 작업했습니다. Lisp Machine은 Lambda를 기반으로 한 아키텍처입니다. - 미적분학.)

연결

  • A.P. 에르쇼프. 정보학 및 컴퓨터 기술의 기초 학교 과정에서 알고리즘 언어. 1985년 05월 7일
  • 러시아어 프로그래밍 언어 및 개발 도구 포럼

위키미디어 재단. 2010년 .

다른 사전에 "러시아 알고리즘 언어"가 무엇인지 확인하십시오.

    알고리즘 언어는 알고리즘을 작성, 구현 또는 연구하는 데 사용되는 공식 언어입니다. 모든 프로그래밍 언어는 알고리즘 언어이지만 모든 알고리즘 언어가 언어로 사용하기에 적합한 것은 아닙니다... ... 위키피디아

    이 용어에는 다른 의미가 있습니다. 용(의미)을 참조하십시오. DRAKON 체계(가시성을 제공하는 친근한 러시아어 알고리즘)의 DRAKON 언어 드래곤의 알고리즘 블록 다이어그램의 예는 ... ... Wikipedia

    이 용어에는 다른 의미가 있습니다. 알고리즘 언어를 참조하십시오. 학습 알고리즘 언어는 알고리즘을 작성, 구현 및 학습하는 데 사용되는 공식 언어입니다. 대부분의 프로그래밍 언어와 달리 ... Wikipedia에 묶여 있지 않습니다.

    알고리즘 언어(러시아어 알고리즘 언어, RAYA)는 알고리즘을 작성하고 연구하는 데 사용되는 프로그래밍 언어입니다. 학교에서 컴퓨터 과학을 공부할 때, 이른바 알고리즘화의 기초를 공부합니다. 학교 알고리즘 ... ... Wikipedia

    교육용 프로그래밍 언어는 전문가에게 프로그래밍을 가르치기 위해 설계된 프로그래밍 언어입니다. 이러한 언어는 주요 요구 사항인 단순성을 충족해야 합니다. 간단할수록 초보자가 더 빨리 마스터할 수 있습니다. 그러한 가능성 ... ... Wikipedia

    DRAKON 언어 드래곤 다이어그램의 알고리즘 블록 다이어그램 예 DRAKON(가시성을 제공하는 친숙한 러시아어 알고리즘 언어)은 Buran 우주 프로그램의 프레임워크 내에서 생성된 시각적 알고리즘 언어입니다. 개발 주어진 언어... 위키피디아