Обсуждение вопросов, связанных с системой проведения турниров ejudge.
	
		
		
			- 
				
				
Igel_SK			 - Posts:1
 - Joined:19 September 2012, 22:37
 
		
								Presentation вместо Runtime (Java)												
						Post
									by Igel_SK » 19 September 2012, 22:46
			
			При отправке решения на Java, которое должно выдавать Runtime Error, выдается вердикт Presentation Error (программа ничего не вывела из-за exception'a), а информация об exception'е выводится на stderr. Как можно это исправить?
Отчет системы на задачу А тестового контеста:
Code: Select all
--- Input ---
1
1
--- Output ---
--- Correct ---
2
--- Stderr ---
Exception in thread "MyRunThread" java.lang.ArithmeticException: / by zero
	at Solver.solve(Main.java:72)
	at Main.run(Main.java:54)
	at java.lang.Thread.run(Thread.java:722)
--- Checker output ---
user program output: unexpected EOF
Похоже, проблема возникает только тогда, когда внутри java программы запускается новый thread и exception происходит в нем.
 			 
		 		
		 
	 
	
	
		
		
			- 
				
				
cher			 - Posts:1153
 - Joined:13 March 2004, 17:00
 			- 
				Contact:
				
			
 
		
																				
						Post
									by cher » 20 September 2012, 14:31
			
			Выложите, пожалуйста исходный код примера.
			 
		 		
		 
	 
	
	
		
		
			- 
				
				
dalex			 - Posts:2
 - Joined:23 July 2012, 11:48
 
		
																				
						Post
									by dalex » 20 September 2012, 14:46
			
			О, зашел на форум и увидел интересную тему. У меня то же самое. Вот этот код получает Accepted:
Code: Select all
import java.util.*;
public class Main implements Runnable {
	@Override
	public void run() {
		Scanner in = new Scanner(System.in);
		int a = in.nextInt();
		int b = in.nextInt();
		System.out.println(a + b);
		int c = 0;
		int d = 0;
		int e = c / d;
	}
	
	public static void main(String[] args) {
		new Thread(new Main()).start();
	}
}
Ответ вывелся правильный, а то, что exception возник в каком-то другом треде, ejudge не очень-то и заботит.
 			 
		 		
		 
	 
	
	
		
		
			- 
				
				
cher			 - Posts:1153
 - Joined:13 March 2004, 17:00
 			- 
				Contact:
				
			
 
		
																				
						Post
									by cher » 20 September 2012, 20:04
			
			Поскольку процесс java-машины завершается с кодом завершения 0, нет причин считать, что при работе процесса возник run-time error.