rs = require("readline-sync");
let arr = [];
console.log("请输入数组的长度:");
let arr_length = rs.question() - 0;
console.log("请添加数组中的元素:");
for (let index = 0; index < arr_length; index++) {
    arr[index] = rs.question() - 0;
}
console.log("创建的数组为:");
console.log(arr);
console.log("请对数组选择操作:1.求和 2.求平均值 3.最大值 4.最小值 5.数组逆序 6.数组去重 0.退出");
let option = rs.question() - 0;
let sum = 0,  arr_max = arr[0], arr_min = arr[0];
arr.forEach(element => {
    sum += element;
});
switch (option) {
    case 1:
        console.log(sum);
        break;
    case 2:
        console.log(sum / arr.length);
        break;
    case 3:
    for (let index = 1; index < arr.length; index++) {
        if (arr_max < arr[index]) {
            arr_max = arr[index];
        }
    }
        // for (let index = 1; index < arr.length - 1; index++) {
        //     arr_max = arr[index + 1] = Math.max(arr[index], arr[index + 1]);
        // }
        console.log(arr_max);
        break;
    case 4:
    for (let index = 1; index < arr.length; index++) {
        if (arr_min > arr[index]) {
            arr_min = arr[index];
        }
    }
        // for (let index = 1; index < arr.length - 1; index++) {
        //     arr_min = arr[index + 1] = Math.min(arr[index], arr[index + 1]);
        // }
        console.log(arr_min);
        break;
    case 5:
        arr.reverse();
        // for (let index = 0; index <arr.length/2; index++) {
        //     let t=arr[index];
        //     arr[index]=arr[arr.length-1-index];
        //     arr[arr.length-1-index]=t;
        //  }
        console.log(arr);
        break;
    case 6:
        let arr_new = new Set(arr);
        // let arr_new = [], index_new = 0;
        //    for (let i = 0; i < arr.length-1; i++) {
        //       for (let j = i+1; j < arr.length; j++) {
        //          if (arr[i]==arr[j]) {
        //         delete arr[i];
        //          }
        //       }
        //    }
        //    arr.forEach(element => {
        //        if (typeof element=="number") {
        //            arr_new[index_new]=element;
        //            index_new++;
        //        }
        //    });
        console.log(arr_new);
        break;
    case 0:
        break;
    default:
        console.log("输入有误,程序结束");
        break;
}
console.log(1+undefined)

JS创建一个数组1.求和 2.求平均值 3.最大值 4.最小值 5.数组逆序 6.数组去重 0.退出的更多相关文章

  1. Shell 脚本循环遍历日志文件中的值进行求和并计算平均值,最大值和最小值

    本文为博主原创,转载请注明出处: 最近在进行压测,为了观察并定位服务性能的瓶颈,所以在代码中很多地方加了执行耗时的日志,但这种方式只能观察,却在压测的时候,不太能准确的把握代码中某些方法的性能,所以想 ...

  2. java代码数组求平均值,最大值,最小值

    (测试类) package com.badu; public class Tste { public static void main(String[] args) { Class5 sa=new C ...

  3. Linux下的计算命令和求和、求平均值、求最值命令梳理

    在Linux系统下,经常会有一些计算需求,那么下面就简单梳理下几个常用到的计算命令 (1)bc命令bc命令是一种支持任意精度的交互执行的计算器语言.bash内置了对整数四则运算的支持,但是并不支持浮点 ...

  4. C语言:统计整型变量m中各数字出现的次数,-去掉一个最高分和一个最低分,然后求平均值,(注意最低分和最高分可能有多个数并列)

    //统计整型变量m中各数字出现的次数,并存放在数组a中,其中,a[0]存放0出现的次数,a[1]存放1出现的次数. #include <stdio.h> ]) { int i; ; i&l ...

  5. NSArray 快速求和、平均值、最大值、最小值

    在iOS开发中我们经常遇到一个需求,求一个数组的所有元素的和,最大值,最小值或者平均值,有的开发者可能第一想到的是for循环遍历求解,其实苹果提供了更简便的方式.如下: NSArray *arr = ...

  6. 使用 SVG 和 JS 创建一个由星形变心形的动画

    序言:首先,这是一篇学习 SVG 及 JS 动画不可多得的优秀文章.我非常喜欢 Ana Tudor 写的教程.在她的教程中有大量使用 SVG 制作的图解以及实时交互 DEMO,可以说教程的所有细枝末节 ...

  7. 用Backbone.js创建一个联系人管理系统(五)

    原文: Build a Contacts Manager Using Backbone.js: Part 5 这是这系列教程最后一部分了. 之前所有的增删改都在前端完成. 这部分我们要把Contact ...

  8. 用Backbone.js创建一个联系人管理系统(一)

    原文 Build a Contacts Manager Using Backbone.js: Part 1 在这个教程里我们将会使用Backbone.js,Underscore.js,JQuery创建 ...

  9. 用Backbone.js创建一个联系人管理系统(二)

    欢迎大家回来继续这一教程,第一部分我们学习了model,collection和view在Backbone中的 基本用法,还有怎么样用主视图去绑定collection去渲染出每个Contact. 这部分 ...

随机推荐

  1. Spring常用的三种注入方式

    好文要收藏,摘自:https://blog.csdn.net/a909301740/article/details/78379720 Spring通过DI(依赖注入)实现IOC(控制反转),常用的注入 ...

  2. SSD硬盘测速较低的原因备忘

    SATA3 SSD测速度盘速度只有200MB/s,可能原因有: 原因分为几种:没开AHCI 没有4K对齐 虽然接的是SATA3接口但SATA3有分为3G和6G这些传输速度接口的分别,同理SATA线3G ...

  3. openj9

       下面部分转自:https://www.jianshu.com/p/916b5fcd0140 OpenJ9,OMR与OpenJDK Eclipse OpenJ9 是一个 Java 虚拟机(JVM) ...

  4. SerialPort项目配置

    app的build.gradle下: apply plugin: 'com.android.application' android { compileSdkVersion 26 defaultCon ...

  5. php对函数的引用

    function &example($tmp=0){                  //定义一个函数,别忘了加“&”符     return $tmp;              ...

  6. Listen and Write 18th Feb 2019

    Weighted blanket has becomes very popular in many homes. they claim it can provide better sleep and ...

  7. git学习手记(也许仅对本人有用)

    首先明白git的三种状态 commited已提交 =====>git仓库(存着各种版本)modified已修改(此时就是我们的编辑器中的未保存状态)====>工作目录staged暂存状态= ...

  8. (转)Mysql哪些字段适合建立索引

    工作中处理数据时,发现某个表的数据达近亿条,所以要为表建索引提高查询性能,以下两篇文章总结的很好,记录一下,以备后用. 数据库建立索引常用的规则如下: 1.表的主键.外键必须有索引: 2.数据量超过3 ...

  9. 关于RandomAccessFile一个坑!!!!

    最近正好遇到了使用RandomAccessFile做断点下载的情况,被一个问题坑了好多次 本来的代码: RandomAccessFile randomAccessFile = new RandomAc ...

  10. mysql 聚集函数 count 使用详解(转载)

    本文将探讨以下问题 1.count(*) . count(n).count(null)与count(fieldName)2.distinct 与 count 连用3.group by (多个字段) 与 ...