Goto 를 사용하여 중첩 루프 복잡성 해결

GolangGolangBeginner
지금 연습하기

💡 이 튜토리얼은 영어로 번역되었습니다. 원본을 보려면 영어로 전환

소개

이 챌린지에서는 금융 데이터 처리에서 복잡한 중첩 루프를 사용하는 레거시 코드 세그먼트를 리팩토링하는 과제를 수행합니다. 목표는 goto 문을 활용하여 루프 제어 흐름을 단순화하여 코드를 더 읽기 쉽고 유지 관리 가능하게 만드는 것입니다. 이 챌린지는 값 5가 발견될 때 프로그램이 종료되기 전에 데이터 요소를 출력하도록 요구합니다.

이것은 챌린지입니다. 실험 (Lab) 과 달리, 학습을 위해 실험의 단계를 따르는 것이 아니라, 독립적으로 챌린지 작업을 완료해야 합니다.챌린지는 일반적으로 조금 어렵습니다. 어려움을 겪었다면, Labby 와 논의하거나 해결책을 확인할 수 있습니다.

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL go(("Golang")) -.-> go/FunctionsandControlFlowGroup(["Functions and Control Flow"]) go/FunctionsandControlFlowGroup -.-> go/for("For") subgraph Lab Skills go/for -.-> lab-436529{{"Goto 를 사용하여 중첩 루프 복잡성 해결"}} end

Goto 를 사용하여 중첩 루프 복잡성 해결

금융 데이터 처리에서 복잡한 중첩 루프는 코드를 읽고 유지 관리하기 어렵게 만들 수 있습니다. 당신의 과제는 goto 문을 사용하여 루프 제어 흐름을 단순화하기 위해 레거시 코드 세그먼트를 리팩토링하는 것입니다.

작업

  • data_processor.go의 중첩 루프를 goto 문을 사용하여 리팩토링합니다.
  • 5가 발견될 때 루프 종료 로직을 단순화합니다.
  • 프로그램이 종료되기 전에 데이터 요소를 출력하도록 합니다.

요구 사항

  • 복잡한 중첩 루프 종료 조건을 대체하기 위해 goto 문을 사용합니다.
  • ~/project/data_processor.go 파일에 솔루션을 생성합니다.
  • 5가 발견되면 프로그램이 종료되기 전에 요소를 출력하도록 합니다.
  • 중첩 루프를 종료하기 위해 하나의 goto 레이블만 사용합니다.
  • 원래의 데이터 출력 로직을 유지합니다.
  • 루프가 종료된 후 LOOP EXITED가 출력되어야 합니다.

예시

5가 발견되었을 때의 예시 출력:

$ go run data_processor.go
1
2
3
4
5
LOOP EXITED

힌트

  • goto는 중첩 루프 종료 조건을 단순화하는 데 도움이 될 수 있습니다.
  • goto 레이블을 중첩 루프 외부에 배치합니다.
  • 내부 및 외부 루프를 효율적으로 종료하기 위해 단일 레이블을 사용합니다.
✨ 솔루션 확인 및 연습

요약

요약하면, 이 챌린지는 금융 데이터 처리에서 복잡한 중첩 루프를 사용하는 레거시 코드 세그먼트를 리팩토링하도록 요구합니다. 목표는 goto 문을 활용하여 루프 제어 흐름을 단순화하여 코드를 더 읽기 쉽고 유지 관리 가능하게 만드는 것입니다. 값 5가 발견될 때 프로그램이 종료되기 전에 데이터 요소를 출력해야 합니다.

OSZAR »