의사 코드를 작성하는 방법은 무엇입니까?
의사 코드 프로그래밍 및 알고리즘 기반 분야에서 자주 사용되는 용어입니다. 프로그래머가 알고리즘의 구현을 표현할 수 있도록 하는 방법론입니다. 간단히 말해서, 이는 알고리즘의 조작된 표현이라고 말할 수 있습니다. 종종 알고리즘은 프로그래밍 배경이나 지식에 관계없이 프로그래머가 해석할 수 있으므로 의사 코드의 도움으로 표현됩니다. 이름에서 알 수 있듯이 의사 코드는 학교 수준의 프로그래밍 지식을 가진 일반인도 이해할 수 있는 거짓 코드 또는 코드 표현입니다. 연산 : 이는 특정 문제에 대한 조치 또는 접근 방식의 조직화된 논리적 순서입니다. 프로그래머는 문제를 해결하기 위해 알고리즘을 구현합니다. 알고리즘은 자연스러운 언어적이지만 다소 기술적인 주석을 사용하여 표현됩니다. 의사 코드: 이는 단순히 일반 영어로 작성된 주석 및 정보 텍스트 형태의 알고리즘을 구현한 것입니다. 프로그래밍 언어와 같은 구문이 없으므로 컴퓨터에서 컴파일하거나 해석할 수 없습니다.
의사코드의 장점
- 모든 접근 방식의 가독성을 향상시킵니다. 이는 알고리즘 구현을 시작하는 가장 좋은 방법 중 하나입니다.
- 프로그램과 알고리즘 또는 순서도 사이의 브리지 역할을 합니다. 대략적인 문서로도 작동하므로 의사 코드를 작성하면 한 개발자의 프로그램을 쉽게 이해할 수 있습니다. 산업에서는 문서화 접근 방식이 필수적입니다. 그리고 이것이 바로 의사 코드가 중요한 것으로 입증되는 부분입니다.
- 의사 코드의 주요 목표는 프로그램의 각 라인이 정확히 무엇을 해야 하는지 설명하여 프로그래머가 코드 구성 단계를 더 쉽게 만드는 것입니다.
의사 코드를 작성하는 방법은 무엇입니까?
- 작업 순서를 정렬하고 그에 따라 의사코드를 작성하세요.
- 주요 목표 또는 목적을 설정하는 의사 코드의 설명부터 시작하십시오. 예:
This program will allow the user to check the number whether it's even or odd.
- if-else, for, while 루프가 프로그램에서 들여쓰기되는 방식은 결정 제어 및 실행 메커니즘을 이해하는 데 도움이 되므로 명령문도 들여쓰기합니다. 또한 가독성도 크게 향상됩니다.
Example: if '1' print response 'I am case 1' if '2' print response 'I am case 2'
- 적절한 명명 규칙을 사용하십시오. 인간의 경향은 우리가 보는 것을 따르려는 접근 방식을 따릅니다. 프로그래머가 의사 코드를 진행하는 경우 그의 접근 방식은 해당 코드와 동일하므로 이름 지정은 간단하고 뚜렷해야 합니다.
- 메소드에는 CamelCase, 상수에는 대문자, 변수에는 소문자 등 적절한 문장 케이싱을 사용하세요.
- 실제 코드에서 일어날 모든 일을 자세히 설명합니다. 의사 코드를 추상화하지 마세요.
- 'if-then', 'for', 'while', 'cases'와 같은 표준 프로그래밍 구조를 프로그래밍에서 사용하는 방식으로 사용합니다.
- 의사 코드의 모든 섹션이 완전하고, 유한하며, 이해하고 이해하기에 명확한지 확인하세요.
- 완전한 프로그래밍 방식으로 의사 코드를 작성하지 마십시오. 일반인이나 고객도 쉽게 이해할 수 있어야 하므로 너무 많은 기술 용어를 포함하지 마십시오.
의사 코드 작성 시 해야 할 일과 하지 말아야 할 일
예:
이 코드를 살펴보자
C++
#include> long> long> gcd(> long> long> numberOne,> long> long> numberTwo) {> > if> (numberTwo == 0)> > return> numberOne;> > return> gcd(numberTwo, numberOne % numberTwo);> }> long> long> lcmNaive(> long> long> numberOne,> long> long> numberTwo) {> > long> long> lowestCommonMultiple = (numberOne * numberTwo) / gcd(numberOne, numberTwo);> > return> lowestCommonMultiple;> }> int> main() {> > std::cout < <> 'Enter the inputs'> < < std::endl;> > long> long> numberOne, numberTwo;> > std::cin>> 번호1>> 번호2;> > std::cout < < lcmNaive(numberOne, numberTwo) < < std::endl;> > return> 0;> }> |
자바
// This program calculates the Lowest Common multiple> // for excessively long input values> import> java.util.*;> public> class> LowestCommonMultiple {> > private> static> long> > lcmNaive(> long> numberOne,> long> numberTwo)> > {> > long> lowestCommonMultiple;> > lowestCommonMultiple> > = (numberOne * numberTwo)> > / greatestCommonDivisor(numberOne,> > numberTwo);> > return> lowestCommonMultiple;> > }> > private> static> long> > greatestCommonDivisor(> long> numberOne,> long> numberTwo)> > {> > if> (numberTwo ==> 0> )> > return> numberOne;> > return> greatestCommonDivisor(numberTwo,> > numberOne % numberTwo);> > }> > public> static> void> main(String args[])> > {> > Scanner scanner => new> Scanner(System.in);> > System.out.println(> 'Enter the inputs'> );> > long> numberOne = scanner.nextInt();> > long> numberTwo = scanner.nextInt();> > System.out.println(lcmNaive(numberOne, numberTwo));> > }> }> |
파이썬
def> gcd(numberOne, numberTwo):> > if> numberTwo> => => 0> :> > return> numberOne> > return> gcd(numberTwo, numberOne> %> numberTwo)> def> lcmNaive(numberOne, numberTwo):> > lowestCommonMutliple> => (numberOne> *> numberTwo)> /> gcd(numberOne, numberTwo)> > return> lowestCommonMutliple> # This Code is Contributed by Chandrashekhar Robbi> numberOne> => 5> numberTwo> => 2> print> (lcmNaive(numberOne, numberTwo))> |
씨#
// This program calculates the Lowest Common multiple> // for excessively long input values> using> System;> public> class> LowestCommonMultiple {> private> static> long> lcmNaive(> long> numberOne,> long> numberTwo)> {> > long> lowestCommonMultiple;> > lowestCommonMultiple> > = (numberOne * numberTwo)> > / greatestCommonDivisor(numberOne,> > numberTwo);> > return> lowestCommonMultiple;> }> > private> static> long> greatestCommonDivisor(> long> numberOne,> long> numberTwo)> > {> > > if> (numberTwo == 0)> > return> numberOne;> > > return> greatestCommonDivisor(numberTwo,numberOne % numberTwo);> > }> > // Drive code> > public> static> void> Main()> > {> > > Console.WriteLine(> 'Enter the inputs'> );> > long> numberOne = Convert.ToInt64(Console.ReadLine());> > long> numberTwo = Convert.ToInt64(Console.ReadLine());> > > Console.WriteLine(lcmNaive(numberOne, numberTwo));> > }> }> // This code is contriburte by shiv1o43g> |
자바스크립트
// Function to calculate the Greatest Common Divisor> function> gcd(numberOne, numberTwo) {> > if> (numberTwo === 0) {> > return> numberOne;> > }> > return> gcd(numberTwo, numberOne % numberTwo);> }> // Function to calculate the Lowest Common Multiple> function> lcmNaive(numberOne, numberTwo) {> > // Calculate LCM using the formula: LCM(a, b) = (a * b) / GCD(a, b)> > return> (numberOne * numberTwo) / gcd(numberOne, numberTwo);> }> // Given inputs> const numberOne = 5;> const numberTwo = 2;> // Calculate and display the Lowest Common Multiple> console.log(> 'Lowest Common Multiple:'> , lcmNaive(numberOne, numberTwo));> |