day03关于JavaScript 基础的一些小案例整理(多种方法解题)

今天开始整理第三部分的JavaScript小案例,最近整理的这个【day系列】纯例题系列,也是通过多敲几行代码增加对各种方法的熟练程度,提高代码速度。

过两天会重新更新另一个系列,名字还没想好,谈一谈每个系列里面一些不同容易理解的概念定义。不过已经在准备内容了,有兴趣的小伙伴加个关注不迷路哦!

话不多说,上今天干货 !

话不多说,上今天干货 !

话不多说,上今天干货 !

案例一:(3种写法)求100以内所有能被3和7整除的数的和

1、用 if   while  do…while分别写一遍  增加对代码的认识

// 方法一 常规if语句
    var sum = 0;
    for (var i = 1; i <= 100; i++) {
        if (i % 3 == 0 && i % 7 == 0) {
            sum += i;
        }
    }
    console.log(sum);

    // 方法二 用while  不过i++ 别放错位置
    var sum = 0;
    var i = 1;
    while (i <= 100) {
        if (i % 3 == 0 && i % 7 == 0) {
            sum += i;
        }
        i++
    }
    console.log(sum);

    // 方法三  do while
    var sum = 0;
    var i = 1;
    do {
        if (i % 3 == 0 && i % 7 == 0) {
            sum += i;
        }
        i++
    } while (i <= 100)
    console.log(sum);

案例二:把1-100之间所有能够被3和7同时整除的数找出来,计算累加和

1、还是用 if   while  do…while分别写一遍

// 方法一  常规for 循环
    var str = '';
    var sum = 0;
    for (var i = 1; i <= 100; i++) {
        if (i % 3 == 0 && i % 7 == 0) {
            str += i + '\t';
            sum += i;
        }
    }
    console.log(str);
    console.log(sum);



    // 方法二  用while试试   用while的时候 注意i   需要定义
    var str = '';
    var sum = 0;
    var i = 1;
    while (i <= 100) {
        if (i % 3 == 0 && i % 7 == 0) {
            str += i + '\t';
            sum += i;
        }
        i++;
    }
    console.log(str);
    console.log(sum);

    // 方法三  用do  while 
    var str = '';
    var sum = 0;
    var i = 1;
    do {
        if (i % 3 == 0 && i % 7 == 0) {
            str += i + '\t';
            sum += i;
        }
        i++;
    } while (i <= 100)
    console.log(str);
    console.log(sum);

案例三:(4种写法)使用for循环打印三角形

    // - 题目描述:

    //   - 在控制台一次性打印形状如下:

    //     ☆

    //     ☆☆

    //     ☆☆☆

    //     ☆☆☆☆

    //     ☆☆☆☆☆

解析:方法有很多种  但是一定要理清逻辑,第一层for 管的是行数,第二层for管的是个数,所以就要明白关键在于,第一层for执行完,需要加换行,第二个for 控制好个数

1、正常if 循环

2、改变初始 i 值,学会灵活改写 i 的初始值,有些人同学纠结,i 设置初始值是 0 还是 1,其实这个只要能实现需求,设置哪一个都行 ,没有什么硬性规定

3、中间用了一个 while 双循环来改写的 ,大家可以通过这个案例,增加一下对while 双循环使用的认识

 // if  语法
    // 写法一
    var str = '';
    for (var i = 1; i <= 10; i++) {
        for (var j = 1; j <= i; j++) {
            str += '★'
        }
        str += '\n'
    }
    console.log(str);

    // 写法二
    var str = '';
    for (var i = 10; i >= 1; i--) {
        for (var j = i; j <= 10; j++) {
            str += '★'
        }
        str += '\n'
    }
    console.log(str);
    // 用while  双层套用
    var str = '';
    var i = 1, j = 1;
    while (i <= 10) {
        j = 1   // 关键在这
        while (j <= i) {

            str += '★'
            j++
        }
        str += '\n'
        i++
    }
    console.log(str);

    // 写法二 
    var str = '';
    var i = 10, j = 1;
    while (i >= 1) {
        j = i
        while (j <= 10) {
            str += '★'
            j++
        }
        str += '\n'
        i--
    }
    console.log(str);

案例四:(2种写法)使用for循环,打印99乘法表

1、用常规的 双重 for 循环 来写

2、用 双重while 循环  进行改写,通过这个案例,熟悉一下双重while 的嵌套规则

//   - 利用双重for循环
    var str = '';
    for (var i = 1; i <= 10; i++) {
        for (var j = 1; j <= i; j++) {
            str += j + 'x' + i + '=' + i * j + '\t'
        }
        str += '\n'
    }
    console.log(str);

    //   - 利用双重while循环

    var str = '';
    var i = 1, j = 1;
    while (i <= 10) {
        j = 1   // 关键在这
        while (j <= i) {
            str += j + 'x' + i + '=' + i * j + '\t'

            j++
        }
        str += '\n'
        i++
    }
    console.log(str);

案例五:(2种写法)求1-100之间个位数不为3的数的累加和。

这个比较简单,写了一种,知道思路就行,其他的方式随便改写

    // 思路一  用continue
    var sum = 0;
    for (var i = 1; i <= 10; i++) {
        if (i % 10 == 3) {
            continue;
        }
        sum += i;
    }
    console.log(sum);

    var sum = 0;
    for (var i = 1; i <= 10; i++) {
        if (i % 10 != 3) {
            sum += i;
        }
    }
    console.log(sum);

案例六(送一个题):(2种写法)开始第35个能被7和3整除的整数数

1、用 for 和 while 分别写了一遍

    var sum = 0;
    var str = '';
    for (var i = 1; i <= 35; i++) {
        if (i % 3 == 0 || i % 7 == 0) {
            str += i + '\t'
            sum += i;
            console.log('第' + i + '是能被3或7整除的数')
        }
    }
    console.log(str);
    console.log(sum);

    // 方法一  while循环 嵌套if

    var sum = 0;
    var str = '';
    var i = 1;
    while (i <= 35) {
        if (i % 3 == 0 || i % 7 == 0) {
            str += i + '\t'
            sum += i;
            console.log('第' + i + '是能被3或7整除的数')
        }
        i++
    }
    console.log(str);
    console.log(sum);

        今天的5道例题就整理到这了,例题内容部分难免有点枯燥,毕竟搜索到这篇文章的老铁们也是为了看一看写法,互相借鉴一下,讨论的点不多,所以我也没加太多的旁白在里面。

        接下来会推出问题讨论的系列,欢迎大家来一块交流、探讨 前端各个学习过程 中遇到的一些比较难理解或者容易出问题的 部分!

        点个关注不迷路呀,我也是刚开始写CSDN,如果这篇文章帮助到您了!

小弟在这也求一波关注,下次不迷路!

谢谢谢谢~~~你~您~您~嘞~~

猜你喜欢

转载自blog.csdn.net/fightingLKP/article/details/124137742