담당구역
2026년 5월 6일 09:30분
민수기 18장에서 제사장과 레위인의 직무 구역이 명확히 구분됩니다. 각 구역을 벗어나면 책임 위반입니다. 나는 역할별 허용 구역을 등록하고 구역 위반을 감지하는 배정기를 만들었습니다.
package com.jesusbornd.numbers;
import java.util.Set;
public class Numbers_18_Chapter_Lv2 {
enum Role { LEVITE, PRIEST, HIGH_PRIEST }
static Set<String> zones(Role r) {
return switch (r) {
case HIGH_PRIEST -> Set.of("지성소", "성소", "뜰");
case PRIEST -> Set.of("성소", "뜰");
case LEVITE -> Set.of("뜰");
};
}
static void check(String name, Role role, String zone) {
boolean ok = zones(role).contains(zone);
System.out.printf("%s(%s) → '%s' %s%n", name, role, zone, ok ? "✅ 허용" : "❌ 월권");
}
public static void main(String[] args) {
check("아론", Role.HIGH_PRIEST, "지성소");
check("엘르아살", Role.PRIEST, "성소");
check("게르손", Role.LEVITE, "성소");
check("므라리", Role.LEVITE, "뜰");
}
}
ZONES = {
"HIGH_PRIEST": {"지성소", "성소", "뜰"},
"PRIEST": {"성소", "뜰"},
"LEVITE": {"뜰"},
}
def check(name, role, zone):
ok = zone in ZONES[role]
print(f"{name}({role}) → '{zone}' {'✅ 허용' if ok else '❌ 월권'}")
if __name__ == "__main__":
check("아론", "HIGH_PRIEST", "지성소")
check("엘르아살", "PRIEST", "성소")
check("게르손", "LEVITE", "성소")
check("므라리", "LEVITE", "뜰")
Search
Categories
← 목록으로
Comments
각자의 구역이 있으면 혼선 없이 일이 돌아가는군요.