博客
关于我
分子量(JAVA语言)
阅读量:127 次
发布时间:2019-02-27

本文共 872 字,大约阅读时间需要 2 分钟。

package 第三章习题;
/*
 * 给出一种物质的分子式(不带括号)求分子量。
 * 本题分子只包含4种原子,分别为C,H,O,N 
 * 分子量为分别为12.01,1.008,16.00,14.01(单位:g/mol)
 * 例如:C6H5OH 的分子量为 94.108g/mol
 */
import java.util.*;
public class 分子量 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
String s=in.next();
double sum=0.0;
int i=0;
while(i<s.length()){
sum+=f(c(s.charAt(i)), i, s);
i++;
}
System.out.println(sum);
}
private static double f(double d,int i,String s) {
// TODO Auto-generated method stub
int k=0;
double sum=0.0;
while(i<s.length()-1&&s.charAt(i+1)>'0'&&s.charAt(i+1)<='9')
{
k=k*10+s.charAt(i+1)-'0';
i++;
}
if(k==0) {
sum+=d;
}
else {
sum+=d*k;
}
return sum;
}
private static double c(char c) {
// TODO Auto-generated method stub
switch(c) {
case 'C':return 12.01;
case 'H':return 1.008;
case 'O':return 16.00;
case 'N':return 14.01;
}
return 0;
}
}

转载地址:http://zgdb.baihongyu.com/

你可能感兴趣的文章
mysql视图
查看>>
MySQL视图
查看>>
MySQL视图
查看>>
Mysql视图、变量、存储过程、函数
查看>>
Mysql视图、触发器、事务、储存过程、函数
查看>>
MySQL视图与索引详解
查看>>
mysql视图建立MERGE算法和TEMPTABLE算法的区别(效率与表锁定问题)
查看>>
mysql视图,索引和存储过程
查看>>
mysql解压没有data_Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini及服务无法启动的快速解决办法(问题小结)...
查看>>
Mysql解压版安装
查看>>
mysql触发器
查看>>
MySQL设置binlog日志的有效期自动回收
查看>>
Mysql设置字符编码及varchar宽度问题
查看>>
mysql设置数据允许远程连接
查看>>
MySQL设置白名单限制
查看>>
MySQL设置远程连接
查看>>
mysql设计数据库和表的规范
查看>>
MySQL该如何将月增上亿条数据的单表处理方案优雅落地?
查看>>
MySQL详解:索引的介绍和原理分析
查看>>
MYSQL语句。
查看>>