logo

의사코드(PseudoCode)란 무엇인가: 완전한 튜토리얼

의사코드 알고리즘의 단계별 설명으로 정의됩니다. 의사 코드는 표현에 프로그래밍 언어를 사용하지 않고 대신 기계 판독이 아닌 사람의 이해를 위한 간단한 영어 텍스트를 사용합니다.
의사코드는 아이디어와 구현(코드) 사이의 중간 상태 고급 언어로.

의사코드(PseudoCode)란 무엇인가: 완전한 튜토리얼

의사코드(PseudoCode)란 무엇인가: 완전한 튜토리얼



의사 코드의 필요성은 무엇입니까

의사 코드는 알고리즘 설계의 중요한 부분으로, 프로그래머가 문제에 대한 해결책을 계획하는 데 도움이 되고 독자가 문제에 대한 접근 방식을 이해하는 데 도움이 됩니다. 의사 코드는 알고리즘이 프로그램으로 전환되는 것을 지원하는 알고리즘과 프로그램 사이의 중간 상태입니다.

의사 코드는 알고리즘과 프로그램 사이의 중간 상태입니다.

의사 코드는 알고리즘과 프로그램 사이의 중간 상태입니다.

의사 코드를 작성하는 방법은 무엇입니까?

알고리즘의 의사 코드를 작성하기 전에 다음 사항을 염두에 두어야 합니다.



  • 작업 순서를 구성하고 그에 따라 의사코드를 작성하세요.
  • 처음에는 주요 목표 또는 목표를 설정합니다.

    예:

    이 프로그램은 먼저 인쇄합니다 N 피보나치 수열의 수.

  • 다음과 같은 표준 프로그래밍 구조를 사용하십시오. 다른 경우라면 , ~을 위한 , ~하는 동안 , 그리고 사례 우리가 프로그래밍에서 그것들을 사용하는 방식. if-else, for, while 루프를 프로그램에서 들여쓰기한 대로 들여쓰기하면 의사결정 제어 및 실행 메커니즘을 이해하는 데 도움이 됩니다. 또한 가독성도 크게 향상됩니다.

    예:

    만약 1
    인쇄 응답
    나는 사례 1이다

    만약 2
    인쇄 응답
    나는 사례 2이다

  • 적절한 명명 규칙을 사용하십시오. 인간의 경향은 우리가 보는 것을 따르는 접근 방식을 따릅니다. 프로그래머가 의사 코드를 진행하는 경우 그의 접근 방식은 그와 동일하므로 이름 지정은 간단하고 뚜렷해야 합니다.
  • 예약된 명령이나 키워드는 다음으로 표시되어야 합니다. 대문자 .

    예: IF…ELSE 문을 작성하는 경우 IF와 ELSE가 대문자인지 확인하세요.

  • 의사 코드의 모든 섹션이 완전하고, 유한하며, 이해하고 이해하기에 명확한지 확인하세요. 또한 실제 코드에서 일어날 모든 일을 설명하십시오.
  • 프로그래밍 언어로 의사코드를 작성하지 마세요. 의사코드는 기술적인 용어의 사용을 최소화하면서 일반인이나 고객도 이해하기 쉽고 간단해야 합니다.

의사 코드를 작성하는 좋은 방법과 나쁜 방법:

의사 코드를 작성하는 좋은 방법과 나쁜 방법

의사 코드를 작성하는 좋은 방법과 나쁜 방법

유사 코드 예:

1. ㄴ 이차 검색 의사 코드 :

바이너리 검색 검색 알고리즘 이는 정렬된 검색 공간에서만 작동합니다. 검색 공간을 반복적으로 분할합니다. 검색 공간이 정렬되어 있다는 사실을 이용하여 원하는 검색 결과가 왼쪽 또는 오른쪽 절반에 있는지 확인합니다.

예: 정렬된 배열이 주어지면 도착[] 그리고 값 엑스 , 작업은 다음과 같은 색인을 찾는 것입니다. 엑스 에 존재합니다 도착[] .

다음은 이진 검색을 위한 의사 코드입니다.

이진 검색(ARR, X, LOW, HIGH)
LOW = HIGH가 될 때까지 반복
중간 = (낮음 + 높음)/2
if (X == ARR[중간])
MID 반환

그렇지 않으면 (x> ARR[MID])
낮음 = 중간 + 1

또 다른
높음 = 중간 – 1

2. 퀵 정렬 의사코드:

퀵정렬 분할 정복 알고리즘입니다. 요소를 선택합니다. 피벗 선택한 피벗 주위에 주어진 배열을 분할합니다.

배열의 마지막 요소가 피벗으로 선택된 다음 피벗 요소보다 작은 모든 요소는 피벗의 왼쪽으로 이동하고 피벗보다 큰 요소는 스와핑을 통해 피벗의 오른쪽으로 이동합니다. 왼쪽과 오른쪽에 대해 동일한 알고리즘이 반복적으로 수행됩니다. 전체 배열이 정렬될 때까지 피벗 옆에 있습니다.

다음은 Quick Sort에 대한 의사코드입니다.

QUICKSORT(도착[], LOW, HIGH) {
만약 (낮은PIVOT = PARTITION(도착, LOW, HIGH);
QUICKSORT(ARR, LOW, PIVOT – 1);
QUICKSORT(ARR, 피벗 + 1, 높음);
}
}

여기서 LOW는 시작 인덱스이고 HIGH는 종료 인덱스입니다.

알고리즘과 의사 코드의 차이점

연산

의사코드

연산 잘 정의된 단계 기반 형식으로 특정 문제에 대한 솔루션을 제공하는 데 사용됩니다.

의사코드는 일반 영어 텍스트를 사용하여 코드와 같은 구조로 알고리즘을 단계별로 설명하는 것입니다.

알고리즘은 간단한 영어 단어만 사용합니다.

의사코드는 if-else, for, while 등과 같은 예약어도 사용합니다.

이는 문제 해결을 위한 일련의 단계입니다.

pseudo라는 단어는 가짜를 의미하므로 구조와 일반 영어 텍스트와 같은 코드를 사용하는 가짜 코드입니다.

알고리즘 작성에는 규칙이 없습니다.

의사코드 작성에는 특정 규칙이 있습니다.

알고리즘은 의사 코드로 간주될 수 있습니다.

의사 코드는 알고리즘으로 간주될 수 없습니다.

이해하고 해석하기가 어렵네요

char을 문자열로 변환 java

이해하고 해석하기 쉽네요

순서도와 의사 코드의 차이점

흐름도

의사코드

순서도는 알고리즘의 흐름을 그림으로 표현한 것입니다.

의사 코드는 일반 영어 텍스트를 사용하는 구조와 같은 코드의 알고리즘에 대한 단계별 설명입니다.

순서도는 입력, 출력 결정 및 시작 중지 문에 표준 기호를 사용합니다. 상자, 원, 화살표와 같은 다른 모양만 사용합니다.

유사 코드는 if-else, for, while 등과 같은 예약어를 사용합니다.

이는 데이터를 시각적으로 표현하는 방법으로, 코드에 대한 이해를 돕기 위해 알고리즘을 그래픽으로 표현한 것에 불과합니다.

pseudo라는 단어는 가짜를 의미하므로 프로그래밍 언어 대신 구조와 같은 코드를 사용하지만 일반 영어 텍스트를 사용하는 가짜 코드입니다.

순서도는 문서화에 적합합니다.

의사 코드는 이해 목적에 더 적합합니다.

1. Infosys 의사코드 질문:

다음 의사 코드의 출력은 무엇입니까?

안드로이드 버전

질문 1) i=0 ~ 4의 경우 1단계 do
i==i++ + –i이면 다음을 수행합니다.
내가 표시
종료
목적을 위한
답변: 0

질문 2) 문자 c = '7'로 설정
스위치(c)
케이스 '1': 디스플레이 1
케이스 '7': 7을 표시
케이스 '2': 2개 표시
기본값: Hello 표시
부서지다
엔드 스위치
답변: 일곱둘안녕하세요

질문 3) 정수 a, p
a = 5로 설정
a = a + 1
a = a * 2
a = a / 2
p = a / 5 + 6
p를 인쇄하다
답변: 7

질문 4) 정수 a, b, c
b = 40, a = 20, c = 20으로 설정
a = a + c
c = c + 에이
a = a + c
c = c + 에이
a + b + c 인쇄
답변: 300

질문 5) 정수 a, b, c
a = 4, b = 3, c = 1로 설정
if (a>> (c – 1) && b << (c + 1))
a = a + c
또 다른
b = a <<< C
다음과 같은 경우 종료
a – b + c를 인쇄하세요
답변:

2. Accenture 유사 코드 질문:

다음 의사 코드의 출력은 무엇입니까?

질문 1) a = 5, b = 1에 대한 다음 의사 코드의 출력은 무엇입니까?

정수 찾기(정수 a, 정수 b)
if(b + a || a – b) && (b> a) && 1)
a = a+b+b-2
3-a를 반환
또 다른
a-b+1을 반환합니다.
다음과 같은 경우 종료
a + b를 반환
함수 종료 fun()
답변: 5

질문 2) a = 5, b = 1에 대한 다음 의사 코드의 출력은 무엇입니까?

정수 찾기(정수 a, 정수 b)
if((b mod a && a mod b) || (a ^ b> a))
a=a^b
또 다른
a-b를 반환
다음과 같은 경우 종료
a + b를 반환
함수 찾기() 종료
답변: 5

질문 3) 다음 의사 코드의 출력은 무엇입니까?

정수 a, b, c
a = 4, b = 4, c = 4로 설정
만약 (a & (b ^ b) & c)
a = a>> 1
다음과 같은 경우 종료
a + b + c 인쇄
답변: 12

질문 4) a = 10, b = 11에 대한 다음 의사 코드의 출력은 무엇입니까?

정수 찾기(정수 a, 정수 b)
만약(0)
a – b – find(-7, -1) 반환
다음과 같은 경우 종료
a = a + a + a + a
반환하다
함수 찾기() 종료
답변: 40

질문 5) a = 5, b = 1에 대한 다음 의사 코드의 출력은 무엇입니까?

정수 찾기(정수 a, 정수 b)
if(b + a || a – b) && (b> a) && 1)
a = a + b + b – 2
반환 3 – a
또 다른
a - b + 1을 반환합니다.
다음과 같은 경우 종료
a + b를 반환
함수 종료 fun()
답변: 5

3. Capgemini 유사 코드 질문

다음 의사 코드의 출력은 무엇입니까?

질문 1) a=8, b=1에 대해 다음 의사 코드의 출력은 무엇입니까?

정수 찾기(정수 a, 정수 b)
만약(a> b && a> 0)
a + b + funn(b-1, a-1)을 반환합니다.
다음과 같은 경우 종료
a + b를 반환
답변: 16

질문 2) p=7, q=2에 대한 다음 의사코드의 출력은 무엇입니까?

정수 찾기(정수 p, 정수 q)
if(p + q <10)
1 + 찾기(p + 1, q + 1)를 반환합니다.
또 다른
2를 반환
다음과 같은 경우 종료
답변:

질문 3) a=2, b=7, c=7에 대한 다음 의사 코드의 출력은 무엇입니까?

정수 찾기(정수 a, 정수 b, 정수 c)
if ((b + a) <(a – b))
a = a + c
b = (10 + 10) + c
다음과 같은 경우 종료
a + b + c를 반환합니다.
답변: 16

질문 4) 다음 의사 코드의 출력은 무엇입니까?

문자열 str1 = 오류, str2 = krr
인쇄(자음 개수(위(역(str2) + 역(str1))))
답변: 5

질문 5) 다음 의사 코드의 출력은 무엇입니까?

정수 a, b, c
a = 2, b = 11, c = 5로 설정
만약 ((4 + 5) <(6 + b))
b = c & a
다음과 같은 경우 종료
a + b + c 인쇄
답변: 7

의사코드 자주 묻는 질문(FAQ)

1) 의사코드의 5가지 규칙은 무엇인가요?

의사 코드 작성에 대한 다섯 가지 중요한 규칙은 다음과 같습니다.

  1. 쓰다 하나 한 줄에 진술.
  2. 초기 키워드는 다음과 같이 표현되어야 합니다. 대문자 (읽기, 쓰기, IF, WHILE, UNTIL).
  3. 의사코드의 들여쓰기는 계층을 표시하기 위해 실제 프로그램과 유사해야 합니다.
  4. 여러 줄 구조를 종료해야 합니다.
  5. 간단한 언어(영어)로 진술을 유지합니다.

2) 의사코드를 어떻게 시작하나요?

처음에는 프로세스의 목적을 명확하게 작성해야 합니다.

3) 의사코드는 배우기 쉬운가요?

의사코드는 대부분 영어로 작성된 일반 텍스트를 사용하므로 이해하기 쉽고 표현하기 쉽습니다.

4) 의사코드를 사용하는 이유는 무엇입니까?

의사 코드는 알고리즘의 중요한 원리를 효율적이고 플랫폼 독립적으로 설명하는 기존 프로그래밍 언어 코드에 비해 사람들이 더 쉽게 이해할 수 있도록 해줍니다.

5) 의사코드는 알고리즘인가요?

의사 코드는 알고리즘을 나타내는 데 사용되지만, 의사 코드의 구조는 알고리즘이 주어진 문제에 대한 솔루션을 제공하는 잘 정의된 단계 시퀀스이므로 동일한 흐름을 따르지 않을 수 있습니다.

6) 의사코드와 흐름도의 차이점은 무엇입니까?

순서도는 주어진 문제에 대한 솔루션 모델과 솔루션 흐름을 보여주는 도식적 표현인 반면, 의사 코드는 알고리즘의 작동 원리에 대한 비공식적인 상위 수준 설명입니다.

7) 의사코드와 코드의 차이점은 무엇입니까?

의사 코드는 프로그램의 알고리즘을 표현하는 방법일 뿐이며 실제로 프로그래밍되었을 때 코드가 어떻게 보이는지 나타냅니다. 소스 코드는 컴파일러에 의해 컴파일된 후 기계에 의해 실행될 수 있는 실제 코드입니다.

8) 알고리즘과 의사코드 중 어느 것이 더 쉽나요?

의사 코드는 영어로 작성되므로 이해하기 쉽고 구성하기 쉽고 디버그가 더 간단합니다. 반면에 알고리즘은 때때로 코드 조각이 포함되어 구성하기가 매우 복잡하므로 알고리즘 디버깅에 있어서는 약간 어렵습니다.

9) 의사코드에서 변수를 어떻게 선언하나요?

의사코드에서 변수에 값을 할당하는 것은 화살표 기호(←)를 사용하여 표시됩니다. 화살표는 할당되는 값에서 할당되는 변수를 가리킵니다.
예: 문자열 ← techcodeview.com가 유효한 할당입니다.

10) 의사코드에서 end는 무엇입니까?

명령이 실행되는 경우 여러 줄을 종료하려면 endif 명령이 사용됩니다. 명령은 두 개의 개별 단어인 'end if' 또는 단일 단어인 'endif'로 지정할 수 있습니다.

결론:

위의 논의에서 우리는 알고리즘을 이해하는 데 있어 의사코드의 중요성을 이해했습니다. 의사코드는 알고리즘에 비해 구성 및 디버깅이 훨씬 간단합니다.