Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

PL/SQL에서 문자열을 뒤집는 방법: 예제 코드로 배우기

PL/SQL은 SQL의 강력한 기능과 절차적 명령어를 하나로 결합한 블록 구조 언어입니다. 문법이 일반 영어와 비슷해 초보자도 쉽게 다룰 수 있다는 장점이 있습니다. 이 글에서는 주어진 문자열을 거꾸로 뒤집는 PL/SQL 프로그램을 단계별로 살펴보겠습니다.

문제 정의

입력 : taerGsIdoG
출력 : GodIsGreat
설명 : "taerGsIdoG"를 역순으로 배열하면 "GodIsGreat"가 됩니다.

입력 : LQS
출력 : SQL
설명 : "LQS"를 역순으로 배열하면 "SQL"이 됩니다.

해결 접근 방식

  • 먼저 주어진 문자열의 길이를 구합니다.
  • 구한 길이를 기준으로 문자열을 역순으로 순회(traverse)합니다.
  • 순회하는 동안 각 문자를 새로운 문자열 변수에 차례대로 저장합니다.
  • 순회가 끝나면 완성된 뒤집힌 문자열을 출력합니다.

예제 코드

DECLARE
    -- 사용할 변수 선언
    input_string VARCHAR(50) := 'taerGsIdoG';
    length NUMBER;
    reversed_string VARCHAR(20);

BEGIN
    -- 문자열의 길이 구하기
    length := Length(input_string);

    -- 문자열을 역순으로 순회
    FOR i IN REVERSE 1.. length LOOP
    -- 각 문자를 reversed_string 변수에 저장
    reversed_string := reversed_string || Substr(input_string, i, 1);
    END LOOP;

    dbms_output.Put_line('Reversed string : ' || reversed_string);
END;

실행 결과

Reversed string: GodIsGreat

코드 핵심 요소 설명

  • Length() : 입력 문자열의 전체 길이를 반환하는 함수입니다.
  • FOR i IN REVERSE 1..length : 1부터 길이까지 반복하되, REVERSE 키워드 덕분에 큰 숫자부터 작은 숫자 순으로 역방향 순회합니다.
  • Substr(input_string, i, 1) : 문자열에서 i번째 위치의 한 글자만 추출하는 함수입니다.
  • || 연산자 : 문자열을 이어 붙이는 연결 연산자로, 추출한 문자를 결과 문자열 뒤에 계속 추가합니다.

이 방식은 마지막 문자부터 첫 번째 문자까지 한 글자씩 가져와 새 문자열에 순서대로 붙이기 때문에, 반복이 끝나면 자연스럽게 원본 문자열의 역순이 완성됩니다.

마무리

이 글에서는 SQL의 기능과 절차적 명령을 결합한 블록 구조 언어인 PL/SQL의 특징을 살펴보고, 문자열을 뒤집는 프로그램을 직접 작성해 보았습니다. LENGTH, SUBSTR 함수와 REVERSE 반복문만 이해하면 누구나 쉽게 구현할 수 있는 간단한 예제이므로, PL/SQL 학습의 첫걸음으로 활용해 보시기 바랍니다. 이 글이 여러분의 학습에 도움이 되기를 바랍니다.