[백준 BOJ] 2372번 Livestock Count (Ada)

2025. 12. 22. 17:30PS (Program Solving)/BOJ (백준)

이건 또 무슨 언어여...

 

문제 설명

https://www.acmicpc.net/problem/2372

 

백준 BOJ 2372번 Livestock Count 문제 사진

 

접근 방법 - Ada 언어를 활용한 출력 문제

백준의 2372번 문제는 Ada라는 언어를 활용하여 출력을 수행하면 되는 문제이다.

해당 문제는, 예제에 있는 내용을 그대로 Ada 언어를 활용하여 출력하면 되는 문제이다.

(문제의 제출란에 들어가면, Ada 이외의 언어로는 제출이 불가하기 때문에 꼭 이 언어로 문제를 해결해야 한다.)

 

Ada라는 언어가 대부분에게는 생소할 수 있어, 이 언어 자체에 대한 설명 위주로 작성해보고자 한다.

Ada 언어는 C, Java와 같은 고급 언어 중 하나이며, 특히 C와 비슷하게도 기계어와 유사한 성능을 낼 수 있는 특징을 가지고 있다.

문제 해결에 활용한 관련 문법들을 아래에 기재해 놓으니, 함께 확인해 본다면 도움이 될 것이다.

1) with Ada.Text_IO;
Ada에서 텍스트 입/출력을 담당하는 표준 라이브러리(Ada.Text_IO) 사용 선언

2) use Ada.Text_IO;
Ada.Text_IO 내의 함수들을 사용할 때 이름을 생략하고 직접 사용할 수 있도 선언
(Ada.Text_IO.Put_Line()을 Put_Line()으로도 사용할 수 있게끔 해준다.)

3) procedure Table is
"Table"이라는 이름의 절차 정의 부분

4) begin ~ end Table;
"Table" 절차의 실행 블록 부분 (절차의 시작과 끝 정의)

5) Put_Line(String)
제시받은 문자열을 출력한 뒤 줄바꿈 수행

 

해당 문제에 대한 해설로는 위 설명이 충분한 것으로 판단되어, 더 구체적인 설명은 생략하고자 한다.

혹여나 해당 문제를 해결하는 데에 어려움을 겪고 있다면, 아래의 코드를 참고해 보길 바란다.

필자는 아래처럼 코드를 작성하여 문제를 해결하였다.

반응형

 

성공한 코드

-- 백준 2372번 코드
with Ada.Text_IO; use Ada.Text_IO;
procedure Table is
begin
	Put_Line("Animal      Count");
	Put_Line("-----------------");
	Put_Line("Chickens      100");
	Put_Line("Clydesdales     5");
	Put_Line("Cows           40");
	Put_Line("Goats          22");
	Put_Line("Steers          2");
end Table;

 

제출 결과

백준 BOJ 2372번 Livestock Count 문제 Ada 제출 결과

(2023.12.20 백준 2372번 문제 제출 결과)