我要做的随机生成字与现有字
创建一个程序,要求用户对任何长度的字。然后使用仅第一个字的字母随机生成一个相同长度的新单词。多次使用任何字母。确保你只利用新单词的第一个字母。注意。如果用户单词中有空格,那么在输出中会有一个空格。大写每个单词。例如:
用户字:教条 随机生成的单词可能是Gogoa或Oogma或Gmado通知,只有在最后一个示例中,我实际上每次使用每个字母一次。 您必须:使用数组,循环,条件函数(除onclick之外),您的代码必须以Onclick开头。使用所有BP的。
算法:
确定单词的长度。
- 把这个词切成一个字母数组......。使用循环
- 随机产生一个介于1和单词长度之间的数字
- 组装新单词,首字母大写,确保其他单词都是小写。
- 重复3和4
- 显示新词。
(我)
所以我有一个文本框,我用字的长度来获得该单词的字母数量。然后我有一个重复的循环来获取单词 的数组,我做了一个随机数。我会如何将这些僵硬变成字母并加以拼凑?我知道它还没有完成,我只是想要一些提示。
<html>
<head>
<title>Final</title>
</head>
<body>
<h1>Final</h1>
Random Word generator <br>
<input type="text" id="word">
<input type="button" id="submit" value="Randomize" onclick="Random()">
<script language="javascript">
word = document.getElementById("word").value
var n = word.length;
function Random(){
for(start = 0; start < n; start++){
Array.from(word)
do{
var x = Math.round((Math.random() * n) + 1);
function capitalize(str) {
return str.replace(/\w\S*/g, function(txt) {
return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
});
}
}
while{
x != n;
}
document.getElementById("word").value = (capitalize(word));
}
</script>
</body>
</html>
看看这里的洗牌功能:http://stackoverflow.com/a/42334240/5483521 –