当前位置: 首页 > 知识库问答 >
问题:

与Java的确切变化

融唯
2023-03-14

我正在为一堂Java课的家庭作业而苦恼。我的代码如下所示。
我的美元和25美分的输出有问题,我不确定是25美分还是美元的错误?例如,我从我的实验室得到了一个错误-

“产出不同。请参见下面的重点内容。
输入:141
您的产出
1美元1角1镍1便士
预期产出
1美元1季度1角1镍1便士”

import java.util.Scanner; 

public class LabProgram {
   public static void main(String[] args) {
      Scanner scnr = new Scanner(System.in);
      
    int cents = scnr.nextInt();

    int numDollars = (cents / 100) % 100;
    int numQuarters = (cents % 25) / 25;
    int numDimes    = (cents % 25) / 10;
    int numNickels  = ((cents % 25) % 10) / 5;
    int numPennies  = ((cents % 25) % 10) % 5;

// no change
      if (cents == 0) {
         System.out.println("No change");
      }
      
// dollars
      if (numDollars < 2 && numDollars >=1) {
      System.out.println(numDollars + " Dollar");
      }
      
      else if (numDollars >=2) {
      System.out.println(numDollars + " Dollars");
      }

// quarters
      if (numQuarters < 2 && numQuarters >=1) {
      System.out.println(numQuarters + " Quarter");
      }
      
      else if (numQuarters >=2) {
      System.out.println(numQuarters + " Quarters");
      }
      
// dimes      
      if (numDimes < 2 && numDimes >=1) {
      System.out.println(numDimes + " Dime");
      }
      
      else if (numDimes >=2) {
      System.out.println(numDimes + " Dimes");
      }
      
// nickels      
      if (numNickels < 2 && numNickels >=1) {
      System.out.println(numNickels + " Nickel");
      }
      
      else if (numNickels >=2) {
      System.out.println(numNickels + " Nickels");
      }

// pennies      
      if (numPennies < 2 && numPennies >=1) {
      System.out.println(numPennies + " Penny");
      }
      
      else if (numPennies >=2) {
      System.out.println(numPennies + " Pennies");
      }
      
      
   }
}

共有1个答案

西门洛城
2023-03-14

你的错误是试图用过于复杂的公式来计算硬币数量。

只要做你在现实世界中会做的事情:抓住所有的钱,直到这不再可能。看看还剩多少。抓住25美分直到那不再可能。看看还剩多少。诸如此类。

 类似资料:
  • 问题内容: 我读了以前的这篇文章。除了实现和那是一个字符序列的事实之外,谁能说出和String 之间的确切区别是什么?例如: 当“你好”被分配到会发生什么,再而三? 问题答案: 一般差异 除了以外,还有几个类可以实现接口。其中有 用于可变长度的字符序列,可以对其进行修改 用于固定长度的低级字符序列,可以对其进行修改 任何接受a的方法都可以在所有这些方法上同样有效地工作。任何仅接受a的方法都将需要转

  • 问题内容: 通过这个代码,我试图取代确切的词用。但是,如果运行此命令,它将仅在我希望打印时打印,这与包含它的单词不同。我怎样才能解决这个问题?谢谢 问题答案: 使用带有单词边界 的正则表达式: 边界符号的反斜杠必须转义,因此为双反斜杠。

  • 问题内容: 我是JAVA的新手,因此遇到了这个词。“在方法内部创建的类,在Java中称为本地内部类。如果要调用本地内部类的方法,则必须在方法内部 实例化 该类”。粗体字。任何人都可以帮我解决这个问题。我知道这很尴尬,我应该做更多的研究,但我只是不明白。谢谢。 问题答案: 首先 声明的意思是 : 实例化的 简单含义 是从class创建一个对象 。 什么是物体? 类的实例。从一个类中,我们可以创建许多

  • 当我使用@PostConstruct或InitializingBean.AfterPropertiesSet时,initMethodName为空。因此,这些都不是XML配置(init-method=“some”)的确切替代方案。 我想知道这种微小的不一致背后的原因。以及在Java中设置init-method的方法。

  • 我是一个编程新手。我在go编程书中读到过,片由三部分组成:指向数组的指针、长度和容量。 我感到困惑的零切片(切片没有底层数组指向,len=0,cap=0),非零切片只有len=0,cap=0和空切片。 谁能告诉我零和空切片是否是一回事?如果它们都不同,那么请告诉这两者之间的区别是什么? 如何测试一个切片是否为空? 另外,指针在长度和容量为零的非nil片中保留什么值?

  • 问题内容: 作为一名Java程序员,我确实没有Groovy背景,但是最近我经常使用Groovy来扩展Maven(使用GMaven)。到目前为止,我可以在Groovy中使用所需的所有Java代码,并添加Groovy糖(元类方法,更多运算符,闭包)。我对Groovy的了解还远远不够完整,但是我喜欢它,特别是出于脚本目的(我在企业场景中使用非静态类型的语言有点谨慎,但这不是这里的主题)。 无论如何,问题