如何使用 ACM 库 (ConsoleProgram) 编写 Java 程序?

2024-04-07

我想问一个关于我的程序的小问题。

这是我的代码示例:

public static void main(String[] args) {
    int q;
    int p;
    int thelargest;
    int thesmallest;

    Scanner input = new Scanner(System.in);
    System.out.println("Enter the list of number : ");
    String input2 = input.nextLine();

    String[] numbers = input2.split(" ");

    int[] result = new int[numbers.length];
    for (p = 0; p < numbers.length; p++) {
        result[p] = Integer.parseInt(numbers[p]);

    }

    for (q = 0; q < result.length; q++) {
        System.out.print("");
        System.out.println(result[q]);
    }

    System.out.println("Largest Number :  " + LargestNumber(result));
    System.out.println(" Smallest Number :  " + SmallestNumber(result));
    thelargest = LargestNumber(result);
    thesmallest = SmallestNumber(result);
    System.out.println("The Arithmetic Mean : "
            + AirthmeticMean(result, thesmallest, thelargest));

}

public static int SmallestNumber(int[] series) {
    int thesmallest = series[0];
    for (int i = 1; i < series.length; i++) {
        if (series[i] < thesmallest) {

            thesmallest = series[i];
        }
    }
    return thesmallest;
}

public static int LargestNumber(int[] series) {
    int thelargest = series[0];
    for (int i = 1; i < series.length; i++) {
        if (series[i] > thelargest) {

            thelargest = series[i];
        }
    }
    return thelargest;
}

public static float AirthmeticMean(int[] result, int thesmallest,
        int thelargest) {
    int sum = 0;
    for (int i = 0; i < result.length; i++) {
        sum += result[i];
    }

    sum -= thesmallest;
    sum -= thelargest;

    return (float) sum / result.length;
}

如何将此代码示例转换为 ConsoleProgram(位于 ACM 库中)? 我必须更改或添加哪些部分?

我开始于:

public class ArithmeticMean extends ConsoleProgram {

}

但我不知道下一步该做什么。


在 acm 库中没有 main 方法,但您需要使用以下结构:

public void run() {}

这是这个库的 APIhttp://jtf.acm.org/javadoc/student/ http://jtf.acm.org/javadoc/student/选择acm.program包ConsoleProgram类并找到合适的方法 另请参见 acm.io/IOConsole 类

例如System.out.println() --> println() 扫描仪(字符串输入)--> readLine(字符串提示)等。

其余的与您的代码中的相同。

好的,这是您在 acm 中的代码:(有点丑,但效果很好:)

import acm.program.ConsoleProgram;

public class StackOverflow extends ConsoleProgram
{
    private static final long serialVersionUID = 1L;

    public void run()
    {
        int q;
        int p;
        int thelargest;
        int thesmallest;
        String input2 = "";
        String[] numbers = null;

        println("Enter the list of number : ");
        while (true) {
            String input = readLine();
            if (input.equals(""))
                break;
            input2 += input + " ";
        }
        numbers = input2.split(" ");

        int[] result = new int[numbers.length];
        for (p = 0; p < numbers.length; p++) {
            result[p] = Integer.parseInt(numbers[p]);

        }

        for (q = 0; q < result.length; q++) {
            print("");
            println(result[q]);
        }

        println("Largest Number :  " + LargestNumber(result));
        println(" Smallest Number :  " + SmallestNumber(result));
        thelargest = LargestNumber(result);
        thesmallest = SmallestNumber(result);
        println("The Arithmetic Mean : "
                + AirthmeticMean(result, thesmallest, thelargest));

    }

    public static int SmallestNumber(int[] series)
    {
        int thesmallest = series[0];
        for (int i = 1; i < series.length; i++) {
            if (series[i] < thesmallest) {

                thesmallest = series[i];
            }
        }
        return thesmallest;
    }

    public static int LargestNumber(int[] series)
    {
        int thelargest = series[0];
        for (int i = 1; i < series.length; i++) {
            if (series[i] > thelargest) {

                thelargest = series[i];
            }
        }
        return thelargest;
    }

    public static float AirthmeticMean(int[] result, int thesmallest,
            int thelargest)
    {
        int sum = 0;
        for (int i = 0; i < result.length; i++) {
            sum += result[i];
        }

        sum -= thesmallest;
        sum -= thelargest;

        return (float) sum / result.length;
    }

}

并作为 Java Applet 运行

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 ACM 库 (ConsoleProgram) 编写 Java 程序? 的相关文章

  • 在 Java 正则表达式中获取多个模式的重叠匹配

    我有同样的问题这个链接 https stackoverflow com questions 18751486 matching one string multiple times using regex in java 但有多种模式 我的正
  • 对象数组的数组(二维数组)JNI

    我正在努力创建自定义对象类型 ShareStruct 的二维数组 jobjectArray ret jobjectArray ins jobjectArray outs jclass myClass env gt FindClass env
  • 如何在url请求中发送数组

    我的要求如下 我想给出演员姓名 开始日期 结束日期并获取他在该时期出演的所有电影 因此 我的服务请求是这样的 http localhost 8080 MovieDB GetJson name Actor startDate 20120101
  • 迭代函数可以调用自身吗?

    当观看下面的 MIT 6 001 课程视频时 讲师在 28 00 将此算法标记为迭代 但是 在 30 27 他说这个算法和实际的 递归 算法都是递归的 该函数正在使用基本情况调用自身 那么这次迭代情况如何 private int itera
  • 运行 java -jar 时出现 java.lang.ClassNotFoundException

    我正在使用 ant 来构建我的build xml文件 它编译正常 但随后得到运行时java lang NoClassDefFoundError通过 运行生成的 jar 时java jar my jar jar 似乎这个问题出现了很多 但没有
  • 使用 Spring 控制器处理错误 404

    I use ExceptionHandler处理我的网络应用程序抛出的异常 在我的例子中我的应用程序返回JSON回应HTTP status用于对客户端的错误响应 但是 我正在尝试弄清楚如何处理error 404返回与处理的类似的 JSON
  • JavaFX使节点覆盖父节点边框颜色

    我有一个如下所示的节点 仅使用 css 我希望标签覆盖其父边框颜色 因此标签下方的边框颜色部分变得不可见 我用来制作这个边框的CSS代码 fx border color black fx border width 3 fx border r
  • java setFullScreenWindow 在 Mac 中隐藏登录对话框

    我使用的是全屏窗口 类似于屏幕保护程序 使用这里的方法 GraphicsEnvironment getLocalGraphicsEnvironment getDefaultScreenDevice setFullScreenWindow t
  • 如何在 JPA 和 Hibernate 中将数据库生成的列值定义为只读字段?

    使用 MariaDB 10 2 可以定义日期时间的默认值 例如创建和最后修改 我应该如何将此列作为只读字段访问 因为这个值应该只在数据库的控制之下 并且不应该从代码中修改 但我想在代码中读取这个属性 这很简单 只需设置insertable
  • 插入时的 iBatis 判别器

    我有一个抽象类Example以及与之相伴的具体子类 我使用鉴别器来提取数据out数据库的 像这样
  • 在尝试使用 GPS 之前如何检查 GPS 是否已启用

    我有以下代码 但效果不好 因为有时 GPS 需要很长时间 我该如何执行以下操作 检查GPS是否启用 如果启用了 GPS 请使用 GPS 否则请使用网络提供商 如果 GPS 时间超过 30 秒 请使用网络 我可以使用时间或 Thread sl
  • 正确签名的 JNLP 应用程序无法在 Java 7 中运行

    我有一个 JNLP 应用程序 由于证书过期需要更新 我有一个经过 CA 验证的新证书 我已将新证书导入到我的密钥库中 我已导入完整的证书链 我的构建文件对构建中的 jar 进行签名和时间戳
  • 在 Java 中创建 XML 文件的最佳方法是什么?

    我们目前使用 dom4j 来创建 XML 文件 不过 我猜现在有更好的东西了 如果我们使用的是 Java 1 6 或更高版本 那么在编写 XML 文件时最好使用什么类 运行速度最快 使用简单 我不需要构建一个 DOM 然后编写整个 DOM
  • HTTP 状态 405 - 此 URL java servlet 不支持 HTTP 方法 POST [重复]

    这个问题在这里已经有答案了 我无法使页面正常工作 我有要发布的表单方法和我的 servlet 实现doPost 然而 它不断地向我表明我并不支持POST方法 我只是想做一个简单的网站并将值插入到我的 MySQL 数据库中 type Stat
  • 如何以编程方式创建 CardView

    我正在开发一个 Android 应用程序Java Android Studio 我想在活动中创建CardView以编程方式 我想将以下属性设置为CardView layout width wrap content layout row 0
  • 当底层连接是有状态时如何使用 Apache HttpClient?

    我在谷歌上搜索了很多关于如何使用 HttpClient 进行多线程处理的信息 他们中的大多数人建议使用 ThreadSafeClientConnManager 但我的应用程序必须登录某个主机 登录表单页面 以便 HttpClient 获得底
  • 删除 JFX 中选项卡后面的灰色背景

    So is there any way to remove the gray area behind the tab s 我尝试过用 CSS 来做到这一点 但没有找到方法 要设置 tabpane 标题的背景颜色 请在 CSS 文件中写入 t
  • spring data jpa复合键重复键记录插入导致更新

    我有一个具有复合键的实体 我试图通过使用 spring data jpa 存储库到 mysql 数据库来持久化它 如下所示 Embeddable public class MobileVerificationKey implements S
  • 受信任的 1.5 小程序可以执行系统命令吗?

    如果是的话 这个能力有什么限制吗 具体来说 我需要以 Mac OSX 为目标 我以前用过这个在 Windows 系统上启动东西 但从未在 Mac 上尝试过 public void launchScript String args Strin
  • mybatis:使用带有 XML 配置的映射器接口作为全局参数

    我喜欢使用 XML 表示法来指定全局参数 例如连接字符串 我也喜欢 Mapper 注释 当我尝试将两者结合起来时 我得到这个例外 https stackoverflow com questions 4263832 type interfac

随机推荐

  • 将 cellpadding 添加到 Java JTable

    我正在尝试实现 Swing JTable 我按照教程进行操作http docs oracle com javase tutorial uiswing components table html simple http docs oracle
  • 如何使用 RequireJS 构建多个页面

    如何使用RequireJS构建多个页面 就像下面的示例一样 在 app js 中声明每个类是正确的做法吗 有每个 html 文件来声明 我想避免的是当用户到达网站的第一页时加载所有脚本 main js 定义所有外部依赖项 require b
  • 如何为图像中的每个对象着色不同的颜色

    我遇到以下问题 我有黑白图像 我必须对其进行着色 图像中的每个白色 斑点 代表一个对象的实例 我想用新颜色为每个对象着色 但对于每个图像我想使用相同的颜色方案 例如 第一张图片 3 个对象 gt 使用的颜色 红色 绿色 黄色 第二张图片 2
  • Android SDK 管理器未安装组件

    不确定我在这里做错了什么 我安装了 Android SDK Manager 现在正在尝试安装 Android Dev 网站建议的平台 单击安装后 我收到一条错误消息 指出管理器无法在 Android 目录中创建临时文件夹 所以我创造了它 现
  • 创建一个用于切换 jQuery 选项卡的“下一步”按钮

    如何创建一个滚动到下一个 jQuery 选项卡的按钮 我希望选项卡中有一个下一个按钮 可以滚动到下一个选项卡 有点像分步教程 如何才能做到这一点 到目前为止我的代码如下 HTML div ul li a href fragment 1 sp
  • 使用 MVVM 时将事件放在哪里?

    我应该将所有事件放在视图代码后面还是有更合适的方法 例如将命令放在 ViewModel 中 例如 我想在双击数据网格行时打开选项卡 我应该在哪里处理这个事件 不 你不应该将事件放在代码后面 在MVVM 模型 视图 视图模型 设计模式中 视图
  • 从另一个包导出的函数

    我正在按照以下说明进行操作https golang org doc code html Workspaces https golang org doc code html Workspaces链接 我构建了我的第一个 Go 程序 所以 我尝
  • 通过号码确定信用卡类型?

    是否可以仅根据信用卡号来确定信用卡类型 这是推荐的还是我们应该始终询问客户他们使用的信用卡类型 我用谷歌搜索了一下 发现了这个算法 http cuinl tripod com Tips o 1 htm http cuinl tripod c
  • jquery datepicker 多个实例

    我制作了一个 RequestForQuote 表格 在其中我可以添加新职位以获取 RFQ 基本上 在我的例子中 通过 PHP 可以很容易地完成这一点 工作真的很好 您可能想看一下 可以在以下位置找到 我的网站 http www thermo
  • Angular 和 google 距离矩阵没有访问控制标头

    我越来越 XMLHttpRequest 无法加载 请求中不存在 Access Control Allow Origin 标头 资源 在我的角度应用程序中 我向 google 距离矩阵发出了 http 请求 如下所示 var url http
  • 如何不断提示输入直到有效?

    我试图做到这一点 以便当给定的答案既不是 1 也不是 2 时 显示消息 请输入有效答案 出现了 又回到了问题 这是我的代码 Coloration ConsoleColor DarkMagenta What do you want to do
  • 迭代对象属性

    var obj name Simon age 20 clothing style simple hipster false for var propt in obj console log propt obj propt 变量如何propt
  • 如何在 Swing 中左对齐和右对齐组件?

    我有一个看似简单的问题 我有一些标签想要向左对齐 但是当我调整大小时 它们开始向中间漂移 这将打乱我计划添加的其他组件的对齐 我该怎么做才能让它们保持在左边 这是简短 简单的代码 不确定我的问题是什么 package com protoca
  • Proguard 找不到引用的类 com.google.ads.internal.state.AdState

    好吧 伙计们 这变得非常烦人 试图让我的项目在导出 时工作 Proguard 不断给我这个错误 Proguard returned with error code 1 See console 这是我在控制台中收到的完整错误 Warning
  • 使用 require.js 缓存时的调试

    使用 require js 我注意到 依赖项通常由浏览器缓存 即使我强制页面完全重新加载 command shift R 也不会更新 为了始终拥有更新的文件 我让 require js 要求文件在 url 后添加 datestamp 这种方
  • docker 将 Ctrl+p 更改为其他内容?

    我在用docker run bin bash开发我的容器 每次我想使用时Ctrl p在终端或 emacs 中 我必须输入两次 因为 docker 使用它来与容器分离 Ctrl p Ctrl q 我该如何改变Ctrl p到 emacs 或终端
  • 使用 shell 脚本在远程计算机上执行多个命令

    我有一个Java程序Desktop testfolder xyz jar在远程机器上 它在同一文件夹中有一个配置文件 当我通过 SSH 连接到机器时 我会 ssh user remote java cp Desktop testfolder
  • 如何在Android中使用Parse实现RecyclerView的无限滚动

    我在网上找到的大多数文章都使用 setLimit 函数来加载更多项目 但这不是一种有效的方法 因为我们会回忆现有的对象 我使用带有自定义适配器的 RecyclerView 来加载我的列表项 一旦我从 Parse 服务器收到对象列表 我就会根
  • 从树视图中选择会自动将字符串数字转换为整数

    在我正在开发的项目中 您可以编辑以树形视图形式显示的数据内容 数据字段之一是始终以 0 开头的电话号码 在表中选择正确的记录并使用其中提取数据时tree item tree selection 由于某种原因 电话号码会自动转换为整数 因此当
  • 如何使用 ACM 库 (ConsoleProgram) 编写 Java 程序?

    我想问一个关于我的程序的小问题 这是我的代码示例 public static void main String args int q int p int thelargest int thesmallest Scanner input ne