JavaScript(ES6),39 34字节
@ edc65节省了5个字节
a=>a.map(x=>x*Math.PI+Math.exp(x))
将输入作为数字数组,并以相同格式输出。
由于减少了,现在有了三个等效的45字节程序,所有程序都符合ES5:
for(;x=prompt();)alert(x*Math.PI+Math.exp(x))
for(M=Math;x=prompt();)alert(x*M.PI+M.exp(x))
with(Math)for(;x=prompt();)alert(x*PI+exp(x))
输入应该一次输入一次。按确定而不输入任何内容退出。
第三个突出显示了JS中一个有趣的功能:with
语句。尽管有时使用起来不安全(因此在严格模式下已禁用),但仍可以使用它来保存键入每次对象名称和句点的时间。例如,您可以这样做:
x=[];with(x)for(i=0;i<5;i++)push(length);
push
并且length
随后被用作性能x
,这将导致与x
被[0,1,2,3,4]
。
这适用于任何对象,甚至是非变量,因此,例如,您可以执行以下操作:
with("0123456789ABCDEF")for(i=0;i<length;i++)alert("0x"+charAt(i)-0);
charAt
并length
称为字符串的属性。"0x"+x-0
转换x
从十六进制值的数,所以这个alert
S中的数字0到15。