我想在OCaml中创建一个类型为int - >('a - >'a) - >'a - >'a的函数,它接受一个int n(非负)和一个函数f'a - >'a和a的类型的参数a.f应该被召唤一次.
我尝试了3种不同的东西,但只能得到int - >('a - >'b) - >'a - >'b,这里有一些我尝试过的东西.
let rec f n g a =
g a;
f (n-1) g a;;
Run Code Online (Sandbox Code Playgroud)
这使
val f : int -> ('a -> 'b) -> 'a -> 'c = <fun>
Run Code Online (Sandbox Code Playgroud)
我试过了
let rec f n g a =
if n > 0 then f (n-1) g a
else g a
;;
Run Code Online (Sandbox Code Playgroud)
这给了我
val f : int -> ('a -> 'b) -> …Run Code Online (Sandbox Code Playgroud) 所以我按照本网站的教程学习一些基本的Javascript.问题是,我没有这本书或原始的源文件.
在我的脑海里,我有一个带有函数和循环编写的脚本,然后在脚本中显示你有多少问题.我想要做的是在那里执行我的循环,以便循环我的问题.
这是标题中的脚本:
<script>
var score = 0;
var questions = [
['what is 2+2?', 4],
['What is 2x3?', 6],
['What is 4+3?', 7]
];
function ask(question) {
var ans = prompt(question[0],'');
if (ans == question[1]){
alert('You got it!');
score++
} else {
alert('Nope, not right. The answer is ' + question[1]);
}
}
for (var x=0; x<questions.length; x++) {
ask(questions[i]);
}
</script>
Run Code Online (Sandbox Code Playgroud)
如何在正文的脚本标记内执行此操作?我希望循环遍历我的问题.