본문 바로가기

COBOLcode14

[COBOL 기초] 알고리즘 5편: 2차원 테이블 배열을 이용한 홀수 마방진 만들기 COBOL code 마방진(Magic Square)은 가로, 세로, 대각선의 합이 모두 같도록 정사각형 숫자를 배열하는 것임. 코볼의 2차원 배열 구조인 OCCURS 구문과 우상향 이동 후 경계를 처리하는 복합 인덱스 제어 알고리즘을 구현해 본다.🟪 1. 2차원 테이블 배열 및 행렬 인덱스 설계 (DATA DIVISION)코볼은 타 언어의 int arr[5][5] 같은 선언을 데이터 계층 구조와 OCCURS 키워드로 표현함. 5x5 홀수 마방진을 위한 테이블과 위치 제어용 행/열 인덱스를 선언한다.cobol code12345678901234567890123456789012345678901234567890123456789012345678901234567890 DATA DIVISION. WORKING-S.. 2026. 6. 22.
[COBOL 기초] 알고리즘 4편: 최대공약수와 최소공배수 구하기 COBOL code 최대공약수(GCD)는 두 수의 공통된 약수 중 가장 큰 수이며, 최소공배수(LCM)는 두 수의 공통된 배수 중 가장 작은 수임. 프로그래밍에서 이를 구하는 가장 효율적인 알고리즘인 '유클리드 호제법'을 코볼 코드로 구현해 본다.🟪 1. 데이터 영역 설계 (DATA DIVISION)연산 도중 원본 값이 유실되는 것을 막기 위한 복사본 변수와, 유클리드 나눗셈 회전에 사용할 임시 나머지 변수를 선언함.cobol code12345678901234567890123456789012345678901234567890123456789012345678901234567890 DATA DIVISION. WORKING-STORAGE SECTION. 01 GCD-LCM-VARIABLES.* .. 2026. 6. 22.
[COBOL 기초] 알고리즘 3편: 소수 판별 및 약수 구하기 COBOL code 소수(Prime Number)는 1보다 큰 자연수 중 1과 자기 자신만을 약수로 가지는 수이며, 약수(Divisor)는 어떤 수를 나누어떨어지게 하는 수임. 코볼의 나누기 명령문인 DIVIDE의 나머지(REMAINDER) 기능을 활용하여 두 가지 핵심 알고리즘을 구현해 본다.🟪 1. 데이터 영역 설계 (DATA DIVISION)나눗셈 연산 시 몫을 받아줄 임시 변수와, 조건 판별의 핵심인 나머지 데이터를 저장할 변수들을 선언함.cobol code12345678901234567890123456789012345678901234567890123456789012345678901234567890 DATA DIVISION. WORKING-STORAGE SECTION. 01 PRI.. 2026. 6. 22.
[COBOL 기초] 알고리즘 2편: 피보나치 수열과 팩토리얼 계산 COBOL code 피보나치 수열은 앞의 두 숫자를 더해 다음 숫자를 만드는 규칙이며, 팩토리얼은 1부터 N까지 연속해서 곱하는 연산임. 알고리즘 설계의 핵심인 '변수 값 밀어내기'와 '누적 곱셈'의 원리를 코볼 코드로 구현해 본다.🟪 1. 데이터 영역 설계 (DATA DIVISION)수열 회전 시 이전 값을 보관할 임시 변수들과, 팩토리얼 곱셈 값이 기하급수적으로 커질 것에 대비해 넉넉한 숫자형 공간(PIC 9)을 확보해 둔다.cobol code12345678901234567890123456789012345678901234567890123456789012345678901234567890 DATA DIVISION. WORKING-STORAGE SECTION. 01 FIBONACCI-VAR.. 2026. 6. 22.
[COBOL 기초] 알고리즘 1편: 1에서 100까지 합 구하기 기본 COBOL code 90년대 정보처리기능사 및 알고리즘 입문 시 가장 먼저 배우는 기초 중의 기초임. 변수에 숫자를 1씩 누적하여 더하는 반복문의 기본 원리를 코볼 코드로 구현해 본다.🟪 1. 누적용 변수와 인덱스 설계 (DATA DIVISION)1부터 100까지 증가할 카운터 변수와, 값이 누적되어 저장될 합계 변수를 선언함. 대장 격인 01 레벨은 A영역(8칸)에, 하위 변수 05는 B영역(12칸)에 배치한다.cobol code12345678901234567890123456789012345678901234567890123456789012345678901234567890 DATA DIVISION. WORKING-STORAGE SECTION. 01 LOOP-VARIABLES.* .. 2026. 6. 22.
[COBOL 기초] 종합 프로젝트: 실전 성적 시스템 구축으로 마스터하는 COBOL code 그동안 배웠던 디비전 구조, 칼럼 규칙, 파일 제어, 반복/조건문, 서브 프로그램 연동까지 모든 문법을 하나로 총망라하여 실제 현업 배치(Batch) 프로그램과 동일한 종합 성적 처리 시스템을 최종 완성해 본다.🟦 1. 전체 아키텍처 및 메인 프로그램 (SCOREMGT.CBL)외부 학생 명부 파일(input_names.txt)을 읽어와 가상의 성적 연산을 수행하고, 학점 판별 및 가독성 소수점 처리를 거쳐 최종 성적표 파일(report_out.txt)을 만들어내는 거대한 메인 프로세스 빌드 단계임.cobol code12345678901234567890123456789012345678901234567890123456789012345678901234567890 IDENTIFICATION DIVI.. 2026. 6. 22.