我正在尝试返回打印语句。我提出的每一个代码似乎都是错的。不是Java Script的专家。
它是一个青蛙跳跃计划
如果青蛙无法到达目的地,我希望它返回一句话,说“青蛙无法到达目的地” 如果青蛙可以到达终点,我希望它显示跳数
Obj = {0:1,1:3,2:6,3:4,4:5,5:0,6:2,7:-1};
D=3;
X=0;
Y=7;
function frogHop(obj, D,X,Y)
{
var arr=[];
for(var key in obj){
arr[key]=obj[key];
}
var now=X;
var hops=0;
var hopped=[];
flag=1;
while (Math.abs(now-Y)>D)
{
hopped.push(now);
now=arr[now];
if (hopped.indexOf(now)!=-1)
{
flag=0;
break;
}
hops+=1;
}
if (flag==1)
{
if (now==Y)
return hops;
else
return hops+1;
}
return -1;
print("Cannot reach destination")
}
alert(frogHop(Obj,D, X,Y));
答案 0 :(得分:0)
尝试将答案作为字符串
返回Obj = {0:1,1:3,2:6,3:4,4:5,5:0,6:2,7:-1};
D=3;
X=0;
Y=7;
function frogHop(obj, D,X,Y)
{
var arr=[];
for(var key in obj){
arr[key]=obj[key];
}
var now=X;
var hops=0;
var hopped=[];
flag=1;
while (Math.abs(now-Y)>D)
{
hopped.push(now);
now=arr[now];
if (hopped.indexOf(now)!=-1)
{
flag=0;
break;
}
hops+=1;
}
if (flag==1)
{
if (now==Y)
return "The amount of hops was " + hops;
else
hops++;
return "The amount of hops was " + hops;
}
return "Cannot reach destination";
}
alert(frogHop(Obj,D, X,Y));