Java代写:CS12ChemicalCompoundMolarMass


代写Java基础作业,计算摩尔质量。

Goals

Continue familiarizing yourself with:

  • Arrays
  • Classes and instantiation
  • Text file input
  • Command-line arguments

Prerequisites

This assignment requires knowledge of the material presented in class
throughweek 07and/or through the introductory materials on OOP in the
textbooks.

Background

Data file

There is a file on the server that is relevant to this assignment:
/srv/datasets/elements
This file contains one line of information about each of all 118 chemical
elements. Each line contains the following data, separated by whitespace:

  1. Atomic number (int)
  2. Symbol (String)
  3. Name (String)
  4. Atomic weight (double)
  5. Period (row in periodic table) (int)
  6. Group (column in periodic table) (int)

Chemical Formulas

Quoth thearbiter of all human knowledge:
A chemical formula is a way of expressing information about the proportions of
atoms that constitute a particular chemical compound, using a single line of
chemical element symbols, numbers, and sometimes also other symbols, such as
parentheses, dashes, brackets, commas and plus (+) and minus () signs.
Often, these formulas are written using subscripts and superscripts. In this
program, we will simplify the idea of a chemical formula (and thus sacrifice
the ability to represent certain formulas, at least in an efficient way). A
chemical formula, for the sake of this program, shall be defined as:

  1. One or more whitespace-delimited tokens
  2. Each token consists of either:
    * a. An element symbol, implying one atom of that element in the compound
    * b. An element symbol followed by an underscore and an integer, implying a certain number of atoms of that element in the compound
    Examples:
    Compound Standard Formula Our Formula
    carbon C C
    dioxygen O2 O_2
    dialuminum telluride Al2Te Al_2 Te
    lithium metazirconate Li2ZrO3 Li_2 Zr O_3
    acetylaldehyde CH3CHO C H_3 C H O
    methylamine CH5N C H_5 N
    paracetamol C8H9NO2 C_8 H_9 N O_2
    propane C3H8 C_3 H_8

Molar Mass

Molar mass expresses the mass of a given substance (chemical element or
chemical compound) divided by its amount of substance. The molar mass of a
compound is the sum of the relative atomic masses (AKA atomic weights) of all
atoms in the compound.
For example, for acetylaldehyde (CH3CHO/C H_3 C H O) above:
Relative atomic masses:

  • C: 12.011
  • H: 1.008
  • O: 15.999
    Thus, the compound’s molar mass
    is:12.011+3(1.008)+12.011+1.008+15.999=44.05312.011+3(1.008)+12.011+1.008+15.999=44.053
    Technically, the units for molar mass aregmolgmolin this case.

Helpful String and parsing methods

In order to separate the element name from the number of atoms, there are a
number of methods in theStringclass that you may find useful. Probably the
most straightforward isString.split, with which you can create an array
ofStrings by splitting one string around a pattern of characters.
In addition,Integer.parseIntwill certainly be useful, as it returns
theintvalue represented by the characters in aString.

Command-line arguments in Eclipse

In order to work with command-line arguments from within Eclipse, you need to
specify those arguments within either Run Configurations or Debug
Configurations, depending on whether you want to run or debug the program.

  1. Select Run->Run Configurations or Run->Debug Configurations as desired.
  2. Select the Arguments tab.
  3. In the Program Arguments section, Enter your arguments.
  4. Click Apply.

Assignment

You shall write a program that:

  1. Expects one or more command-line arguments that constitute a chemical formula, as described above
  2. Prints one line containing the molar mass of the compound described by the formula, to six digits after the decimal point
  3. Does not open theelementsfile more than once, nor read through that file’s contents multiple times.
    You should probably define two classes for this assignment, similar to
    myPeriodicTable3example. As always, feel free to use any of my code from the
    lecture materials.

Example I/O and Sample Executable

The following examples assume a class named Assignment.

Compound Formula Command Line Output
carbon C java Assignment06 C 12.011000
dioxygen O_2 java Assignment06 O_2 31.998000
dialuminum telluride Al_2 Te java Assignment06 Al_2 Te 181.563077
lithium metazirconate Li_2 Zr O_3 java Assignment06 Li_2 Zr O_3
153.101000
acetylaldehyde C H_3 C H O java Assignment06 C H_3 C H O 44.053000
methylamine C H_5 N java Assignment06 C H_5 N 31.058000
paracetamol C_8 H_9 N O_2 java Assignment06 C_8 H_9 N O_2
151.165000

文章作者: SafePoker
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 SafePoker !
  目录