我在javascript中使用Arthimatic运算符时遇到问题
我正在做一项作业,必须用一个10字的字符串来决定它属于哪一类。字符串可以是任何内容,必须由3个类别定义: 1.猫。一个字符串体,其中超过一半的单词不超过4个字符 2.猫。B-绳子的主体既不是猫也不是猫。猫或猫。C 3.猫。C-字符串体,其中超过一半的单词为7个字符或更多 我遇到的问题是不知道使用什么变量和运算符开始解析原始字符串。如果有人能给我一个我应该做的步骤清单,我就能完成它 以下是我迄今为止的工作:我在javascript中使用Arthimatic运算符时遇到问题,javascript,Javascript,我正在做一项作业,必须用一个10字的字符串来决定它属于哪一类。字符串可以是任何内容,必须由3个类别定义: 1.猫。一个字符串体,其中超过一半的单词不超过4个字符 2.猫。B-绳子的主体既不是猫也不是猫。猫或猫。C 3.猫。C-字符串体,其中超过一半的单词为7个字符或更多 我遇到的问题是不知道使用什么变量和运算符开始解析原始字符串。如果有人能给我一个我应该做的步骤清单,我就能完成它 以下是我迄今为止的工作: var sentence = "The quick brown fox jumps ove
var sentence = "The quick brown fox jumps over the lazy dogs tomorrow";
var sentenceSplit = sentence.split(" ");
sentenceSplit[0];
sentenceSplit[1];
sentenceSplit[2];
sentenceSplit[3];
sentenceSplit[4];
sentenceSplit[5];
sentenceSplit[6];
sentenceSplit[7];
sentenceSplit[8];
sentenceSplit[9];
if (sentenceSplit[0].length <= 4 || sentenceSplit[1].length <= 4 || sentenceSplit[2].length <= 4 || sentenceSplit[3].length <= 4 || sentenceSplit[4].length <= 4
|| sentenceSplit[5].length <= 4 || sentenceSplit[6].length <= 4 || sentenceSplit[7].length <= 4 || sentenceSplit[8].length <= 4 || sentenceSplit[9].length <= 4) {
print ("good");
}else{
print ("bad");
}
var句子=“棕色狐狸明天跳到懒狗身上”;
var sentenceSplit=句子分割(“”);
句子分割[0];
句子分割[1];
句子分割[2];
句子分割[3];
句子分割[4];
句子分割[5];
句子分割[6];
句子分割[7];
句子分割[8];
句子分裂[9];
如果(sentenceSplit[0].length您可以尝试一下
在下面的例子中,average变量为您提供了平均字长
var resultEl = document.getElementById("results"),
sentence = "The quick brown fox jumps over the lazy dogs tomorrow",
lengths = []
var sentenceSplit = sentence.split(" ");
sentenceSplit.forEach(addToTotal);
function addToTotal(element)
{
lengths.push(element.length);
}
var aboveFour = lengths.filter(word => word > 4),
aboveSeven = lengths.filter(word => word > 7),
category = "";
if (Math.floor(aboveFour.length) >= Math.floor(sentenceSplit.length / 2)) {
category = "A";
}
else if (Math.floor(aboveSeven.length) >= Math.floor(sentenceSplit.length / 2)) {
category = "C";
}
else {
category = "B";
}
你可以试试
在下面的例子中,average变量为您提供了平均字长
var resultEl = document.getElementById("results"),
sentence = "The quick brown fox jumps over the lazy dogs tomorrow",
lengths = []
var sentenceSplit = sentence.split(" ");
sentenceSplit.forEach(addToTotal);
function addToTotal(element)
{
lengths.push(element.length);
}
var aboveFour = lengths.filter(word => word > 4),
aboveSeven = lengths.filter(word => word > 7),
category = "";
if (Math.floor(aboveFour.length) >= Math.floor(sentenceSplit.length / 2)) {
category = "A";
}
else if (Math.floor(aboveSeven.length) >= Math.floor(sentenceSplit.length / 2)) {
category = "C";
}
else {
category = "B";
}
在这类问题中,最好使用for循环,而不是不整洁的if语句,它很容易实现,如下所示:
让catAindicator=0;
设catBindicator=0;
设catCindicator=0;
for(让句子的项目拆分){
如果(项目长度=7){
控制台日志(项目+“为C类”);
catCindicator++;
}否则{
控制台日志(项目+“为B类”);
catBindicator++;
}
}
console.log(catAindicator);//A类单词的计数
console.log(catCindicator);//C类单词的计数
console.log(catBindicator);//B类单词的计数
现在,您只需使用表示类别字符串计数的三个变量(例如,catAindicator
,它在第一个条件下增加为catAindicator++
),通过类别及其大部分子字符串来计算字符串类别,然后比较它们,得出结果:
if(catindicator>catBindicator&&catindicator>catCindicator){
log(“字符串是Cat A”);
}else if(catCindicator>catAindicator&&catCindicator>catBindicator){
log(“字符串为C类”);
}否则{
log(“字符串为B类”);
}
在此类问题中,最好使用for循环,而不是不整洁的if语句,它很容易实现,如下所示:
<代码>让catAindicator=0;
设catBindicator=0;
设catCindicator=0;
for(让句子的项目拆分){
如果(项目长度=7){
控制台日志(项目+“为C类”);
catCindicator++;
}否则{
控制台日志(项目+“为B类”);
catBindicator++;
}
}
console.log(catAindicator);//A类单词的计数
console.log(catCindicator);//C类单词的计数
console.log(catBindicator);//B类单词的计数
现在,您只需使用表示类别字符串计数的三个变量(例如,catAindicator
,它在第一个条件下增加为catAindicator++
),通过类别及其大部分子字符串来计算字符串类别,然后比较它们,得出结果:
if(catindicator>catBindicator&&catindicator>catCindicator){
log(“字符串是Cat A”);
}else if(catCindicator>catAindicator&&catCindicator>catBindicator){
log(“字符串为C类”);
}否则{
log(“字符串为B类”);
}
有两个计数器,一个用于单词>=4个字符,一个用于单词>=7个字符。迭代单词数组,获取每个单词的长度并增加相应的计数器。例如,if(word.length words.length/2)
)有两个计数器,一个用于单词>=4个字符,另一个用于单词>=7个字符。迭代单词数组,获得每个单词的长度并增加相应的计数器。例如,if(word.length words.length/2)
)。这似乎不起作用,因为即使一半的单词是7个字符,它表示字符串将属于cat。B我认为这与代码查找平均单词长度有关,而不是每个特定单词的长度。这似乎不起作用,因为即使有一半的单词是7个字符,它表示字符串将属于cat。B我相信这与代码查找平均单词长度有关,而不是每个特定单词的长度。在尝试了您的建议后,代码将把每个单词放入一个类别,而不是整个字符串。您好,我编辑了答案,以展示如何使用它来评估整个sentenceSplit
string的类别在进一步编辑我的代码之后,我决定测试这个字符串:能力缺勤学院帐户是是是。输出表示这是一只猫。c字符串,而它应该是cat。a、 我复制并粘贴了你的代码,发现了这个问题,我不知道我是否需要更改你代码的前半部分,只需粘贴下半部分。是的,感谢你的反馈,我发现没有必要为你的问题设置内部for
循环,只需删除它,我将编辑我的banswer,这样您就可以看到它。在尝试了您建议的内容之后,代码将把每个单词放入一个类别,而不是整个字符串。您好,我编辑了答案,以显示如何使用它来评估整个句子拆分
字符串的类别