每日一题(开开森森学前端之常见笔试题)

栏目: JavaScript · 发布时间: 5年前

内容简介:把拿字符数组所有元素和1.获取

11000 所有数字拆成单个的,所以用字符数组接收

拿字符数组所有元素和 9 比较相等自增

1.获取 11000 的所有数字

2.把获取的所有数据转成字符串

3.定义计数器 count=0 ;

把使用indexOf去判断字符串里是否含有9,如果包含就自增 count 计数器

5.打印最终 count 的值

function counts(num) {
 let count = 0;
 for (let i = 0; i<=1000; i++) {     //遍历1到  1000的所有整数  
    let str =  i + "";          //数字转成字符串      
      while(str.indexOf(num) != -1) {
        count++;
        str = str.substring(str.indexOf(num) + 1);
      }       
    }
    console.log(count);//打印
}
counts(9)
复制代码

思路二

分析:1到1000内的所有9的个数有个位、十位、百位 那么只要取出个位、十位、百位上的9也就是他们分别出现的次数就是9的个数。

1.定义变量count用来计算出现次数

2.用for循环来遍历 11000 内所有的数

3.将个位、十位、百位每次出现的 9 的次数叠加到 count

4.最后打印结果。

function counts(num){//num要找次数的数字
	let count = 0;
	for (i = 1; i <= 1000; i++)           
	{                                 
		if (parseInt(i % 10) === num)//取个位数         
		{
			count++;
		}
		if (parseInt(i / 10 % 10) === num)//取十位是否为9
		{
			count++;
		}
		if (parseInt(i / 100 % 10) === num)//取百位是否为9                   
		{
			count++;
		}
	}
	console.log('出现的次数:'+count);//300次
}
counts(9);
复制代码

总结

这里使用了两种方法解决该问题!大家可以再探索下,如果还有其他方案可以在评论区再列出,大家一起学习探讨!

大佬们如果发现了文中的错误,请在评论区指出,我会及时修正!

如果觉得对您有用请点个赞,谢谢大佬!


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Algorithms on Strings, Trees and Sequences

Algorithms on Strings, Trees and Sequences

Dan Gusfield / Cambridge University Press / 1997-5-28 / USD 99.99

String algorithms are a traditional area of study in computer science. In recent years their importance has grown dramatically with the huge increase of electronically stored text and of molecular seq......一起来看看 《Algorithms on Strings, Trees and Sequences》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试