1 回答
TA贡献1859条经验 获得超6个赞
import java.util.Scanner;
public class Main
{
public static void main(String[] args) {
float charSum=0;
Scanner myObj = new Scanner(System.in);
System.out.println("Please enter a string");
String input1 = myObj.nextLine();
char[] arr=input1.toCharArray();
for(int i=0;i<arr.length;i++){
int ascii=(int)arr[i];
if(ascii>=97&&ascii<=122){
charSum=charSum+ascii-96; //for a-z
}
else if(ascii>=65&&ascii<=90){
charSum=charSum+ascii-64; //for A-Z
}
else if(ascii>=48&&ascii<=57){
charSum=charSum+ascii-48; //ascii for number
}else{
charSum=charSum+0; //ascii for special Character
}
}
System.out.println("Please enter a Integer");
int integerValue = myObj.nextInt();
charSum+=integerValue;
System.out.println("Please enter a Double");
Double doubleValue = myObj.nextDouble();
charSum+=doubleValue;
System.out.println(charSum);
}
}
在这里,我取出了字符串并找出每个字符串的ascii值并减去96,因为a-> 97 .A-> 65的ascii值(因此如果a需要为1,则必须为97-96 = 1)并且对于您要求它为 0 的特殊字符,因此将其添加到 sum 变量中。由于 double 也是输入,因此输出可以是 float 或 double 。我采用了 float 。
添加回答
举报