else {
 if (b > m) m=b
 if (c > m) m=c
 if (d > m) m=d
 if (e > m) m=e
 obj.res.value=m }
}
Когда код выполняется в этом блоке, то значения переменных равны 0,а не те что были введены.
Решал другую задачу по проще, там такой проблемы нет.
function maxval (obj, form1,a,b,c,d,e )
{
 var a = Number(obj.num1.value);
 var b = Number(obj.num2.value);
 var c = Number(obj.num3.value);
 var d = Number(obj.num4.value);
 var e = Number(obj.num5.value);
 if (a>=0 || b>=0 || c>=0|| d>=0 || c>=0) {
alert ('Упс... Введено занчение больше 0') }
 
else {
 var s = (a*b*c*d*e)/5
 obj.res.value=s }
Может  не правильно составлена  конструкция else .. if.
Лучше наверное было вызвать поиск максимума 
  отдельной функцией. Но у меня не с работал код увы. Интерпретатора  нет проверить на ошибки.
<script language="JavaScript">
 <!--     //
function lol (obj, form1,a,b,c,d,e,m)
{
if (b > m) m=b
 if (c > m) m=c
 if (d > m) m=d
 if (e > m) m=e
 obj.res.value=m
return m; }
 function maxval (obj, form1,a,b,c,d,e,m )
 {
 var a = Number(obj.num1.value);
 var b = Number(obj.num2.value);
 var c = Number(obj.num3.value);
 var d = Number(obj.num4.value);
 var e = Number(obj.num5.value);
var m=a
if (a>0 || b>0 ||c>0 || d>0 ||e>0)
alert('Упсс!!! введено занчение больше 0!!!')
else  lol (obj, form1,a,b,c,d,e,m)
 }