Вот так, вроде, получается
<html>
<head>
</head>
<body>
<table>
<tr> <td> type number: </td> <td> type percent: </td> <td> result </td> </tr>
<tr> <td> <input /> </td> <td> <input /></td> <td> <input /> </td> </tr>
<tr> <td> <input /> </td> <td> <input /></td> <td> <input /> </td> </tr>
<tr> <td> <input /> </td> <td> <input /></td> <td> <input /> </td> </tr>
</table>
<script>
table=document.querySelector("table")
trs=(table.querySelectorAll("tr"))
add=function(inputs){
var number=inputs[0]
var percent=inputs[1]
var result=inputs[2]
var getPercent=function(){
if((number.value==="")||(percent.value==="")) return result.value="waiting..."
result.value=percent.value*(number.value/100)
}
number.oninput=getPercent
percent.oninput=getPercent
}
for(var i=1; i<trs.length; i++) {
add(trs[i].querySelectorAll("input"))
}
</script>
</body>
</html>