for循环练习(空筐思想求和) 与(擂台思想求极值)

2021-04-03  本文已影响0人  beizi

空筐思想求和:

    // 累计求和:0-5 
    // 空筐思想
    // 1. 在循环外面定义一个空筐:let sum = 0;  0 加任何数 都不改变数据大小
    let sum = 0;
    // 2. 在循环内容,将数据不断的累加到sum中即可
    for (let i = 0; i <= 5; i++) {
        // i代表0-5
        sum += i;
    }
    // 3. 在循环外面查看结果
    console.log('0-5之间的和为' + sum);

擂台思想求极值:

    // 需求:用户输入5个数,求里面的最大值
    // 分析:输入5个数是重复的事情,应该采用循环解决:每次输入1个数,输入5次
    // 擂台思想
    // 求最大值:设定一个默认的擂主,-Infinity,用户只要输入任何一个数,都会挑战成功
    let max = -Infinity;
    // 重复执行代码:挑战
    for (let i = 0; i < 5; i++) {
        // 让用户输入数据
        let user = +prompt(`请输入第${i + 1}个数字`);
        // 挑战擂主
        if (user > max) {
            // 成功
            max = user;
        }
    }
    console.log('5个数中,最大的值为:' + max);

不限定人数的最小值:

    // 擂台思想
    // 需求:当前有多少人挑战擂台不知道(用户自己决定),求用户输入的数据里面的最小值
    // 用户输入挑战擂台人数
    let num = +prompt("输入挑战人数")
    // 定义默认擂主
    let min = Infinity;
    for (let i = 1; i <= num; i++) {
        // 用户输入数据
        let user = +prompt(`输入第${i}个数`);
        // 挑战擂主
        if (user < m) {
            min = user
        }
    }
    console.log('最小值为:' + min);

用户猜随机数

    // 需求:系统生成一个0-100之间的随机整数,用户猜,直到猜对为止
    // 生成随机整数
    let rand = Math.round(Math.random() * 100);
    // console.log(rand);
    // 用户1次只能猜一个:不确定次数,来死循环
    // 解决死循环的备用方式
    let flag = true;
    for (; flag;) {
        // 猜数字
        let guess = +prompt('请输入一个数字');
        // 数字与结果之间要三种可能
        if (guess > rand) {
            alert('你猜的数字太大了');
        } else if (guess < rand) {
            alert('你猜的数字太小了');
        } else {
            alert('恭喜你猜对了');
            // 将条件变成false
            flag = false;
        }
    }


     // 使用braek终结循环

    // 生成随机整数
    let rand = Math.round(Math.random() * 100);
    // console.log(rand);
    // 用户1次只能猜一个:不确定次数,来死循环
    for (; ;) {
            // 猜数字
            let guess = +prompt('请输入一个数字');

            // 数字与结果之间要三种可能
            if (guess > rand) {
                alert('你猜的数字太大了');
            } else if (guess < rand) {
                alert('你猜的数字太小了');
            } else {
                alert('恭喜你猜对了');
                // 终结循环
                break;
            }
        }

上一篇 下一篇

猜你喜欢

热点阅读