프로그래밍 경쟁을 조직하고 있습니다. 다른 프로그램의 출력 (참가자의 실행 파일)을 문자 단위로 확인하는 프로그램을 만들어야합니다. 요구 사항은 다음과 같습니다.다른 프로그램의 출력을 확인하는 프로그램
- 프로그램은
platform independent
이어야합니다. - 참가자의 입력과 올바른 출력을 참가자가 사용할 수 없어야합니다. 모든 참가자는 자신의 프로그램 이름을 검사기로 전달합니다. Checker는 답이 맞는지 아닌지를 알려줍니다.
- 참가자의 프로그램 결과를 참가자에게 직접 보여줘서는 안되며, 참가자의 프로그램 결과를 기반으로 입력을 파악할 수도 있습니다.
두 번째 부분에서는 입력 및 출력을 어떻게 든 실행 파일 자체에 저장할 수 있습니까? 차라리
이 프로그램은 다음과 같이 작동합니다 .. 조금 불편한 일을합니다 .. 암호화 된 파일에서 읽을 수 없습니다 것 :
checker.exe question1.exe
정답, 축하해!
자원 봉사자에게 보여주십시오.
표준 C 라이브러리의 popen
및 pclose
기능을 사용해 보았습니다.
그러나 문제는 Linux에서 참가자의 프로그램 출력을 보여주는 셸을 열어서 3 번째 요구 사항에 따라 발생하지 않아야한다는 것입니다.
이 작업을 수행하는 간단한 방법은 무엇입니까? 미리 감사드립니다.
편집 :
내가 특별히 참가자들에게 각 질문에 대해 만든 실행 파일을 넘겨해야합니다.
코드가 도움이 될 것입니다. C에서이 작업을 수행 할 필요가 없다고 생각합니다. 간단한 스크립트를 작성해야 할 때 쉘 스크립트가 잘 작동했습니다. 나는 더 이상 그것을 갖지 못했다 (그것은 15 년 전이었다). – Hogan
코드로 작성하고, 데이터베이스에 저장하고, 웹 서버에 저장하고 소켓을 사용하여 요청합니다. 가장 간단한 것은 코드에 저장하는 것입니다. – spartacus
정말 영리한 경쟁자는 화면을 지우고 위에 나온 출력물을 출력하는 프로그램을 작성합니다 ... 어떻게 알 수 있습니까? – Floris