『壹』 求高人分析java程序為什麼不行
count1=count1+Integer.parseInt(ji[s.charAt(i)]);
中的
ji[s.charAt(i)]
s.charAt(i) 返回的是一個Char
ji是一橋洞個數組 你看見過哪個數組的下標是Char的?
換成Int 就這里有問題.
我輸入'ab'的話
數組是這個彎差樣子的? ji[b]?
至於你想幹嘛我也不知道 你自己改下吧 如果把代碼都給你敏鬧枯貼上來就沒意思了
『貳』 java難題:
import java.util.Scanner;
public class CardNum {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String s = in.nextLine();
StringBuffer b = new StringBuffer(s);
b.reverse();
String s1 = String.valueOf(b);
int i, j, add = 0, add1 = 0, add2 = 0;
char c[] = new char[s1.length()];
int n[] = new int[s1.length()];
String ss[] = new String[s1.length()];
for (i = 0; i <悶兄皮 s1.length(); i++) {
c[i] = s1.charAt(i);
ss[i] = String.valueOf(c[i]);
n[i] = Integer.parseInt(ss[i]);
// System.out.println(n[i]);
}
for (j = 0; j < n.length; j += 2) { // 求奇數位之和
add1 = add1 + n[j];
}
// System.out.println(add1);
for (j = 1; j < n.length; j += 2) { // 求偶數位之和
n[j] = n[j] * 2;
if (n[j] >= 10) {
n[j] = n[j] - 9;
}
add2 = add2 + n[j];
}
// System.out.println(add2);
add = add1 + add2; //判斷總和能不能被10整除
if (add % 10 == 0) {
System.out.println("成功"螞差);
} else {
System.out.println("失塵亂敗");
}
}
}
運行結果:
5432123456788881
成功
356827027232780
成功
『叄』 java中數組問題(求大佬)
publicclassCheckCard{
publicstaticvoidmain(String[]args){
System.out.println(check(4388576018402626L)?"有效":"無效圓慶");
System.out.println(check(4388576018410707L)?"有效橘滾握":"無效");
}
publicstaticbooleancheck(longcard){
intsum1=0;
intsum2=0;
intisOdd=-1;
while(card>備瞎0){
longn=card%10;
card=card/10;
if(isOdd==-1){
sum1+=n;
}elseif(isOdd==1){
n=n*2;
sum2+=(n>9?(n/10+n%10):n);
}
isOdd*=-1;
}
return(sum1+sum2)%10==0;
}
}
『肆』 請用java編寫一個石頭剪刀布的程序
importjava.util.Random;
importjava.util.<ahref="https://www..com/s?wd=Sc&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-"target="_blank"class="-highlight">Sc</a>anner;
publicclassFingerGuessingGame{
privatestatic<ahref="https://www..com/s?wd=Sc&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-"target="_blank"class="-highlight">Sc</a>anner<ahref="https://www..com/s?wd=sc&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-"target="_blank"class="-highlight">sc</a>;
privatestaticRandomrad;
privatestaticfinalString[]FINGERS={"剪刀","石頭","布"};
privatestaticintwin=0,loose=0,draw=0;
publicstaticvoidmain(String[]args)配碧{
sc=newScanner(System.in);
如州rad=newRandom();
while(true){
渣賣蔽System.out.println("~~~~~~~~~~~~剪刀石頭布游戲,輸入E可以退出~~~~~~~~~~~");
System.out.println("請選擇你要出什麼?Z——剪刀,X——石頭,C——布");
Stringcommand=sc.nextLine();
intplayerFinger=getValue(command);
if(playerFinger==-1){
break;
}elseif(playerFinger==3){
System.out.println("輸入錯誤,請參考說明!");
continue;
}
System.out.println("你出的是"+FINGERS[playerFinger]);
intcpuFinger=rad.nextInt(3);
System.out.println("計算機出的是"+FINGERS[cpuFinger]);
intresult=playerFinger-cpuFinger;
if(0==result){
System.out.println("平局!");
draw++;
}elseif(-1==result){
System.out.println("你輸了!");
loose++;
}else{
System.out.println("你贏了!");
win++;
}
}
System.out.println("游戲結束! 游戲統計次數");
System.out.println(String.format("贏:%d 輸:%d 平局:%d",win,loose,draw));
}
privatestaticintgetValue(Stringcommand){
if(command.equalsIgnoreCase("E")){
return-1;
}
if(command.equalsIgnoreCase("Z")){
return0;
}
if(command.equalsIgnoreCase("X")){
return1;
}
if(command.equalsIgnoreCase("C")){
return2;
}
return3;
}
}
『伍』 怎樣用java定義方法實現luhn演算法
import java.util.Scanner;
//信用卡號校驗演算法
public class Luhn {
public static void main(String[] args) {
System.out.println("Please input your credit card number:");
Scanner input = new Scanner(System.in);
int sumOdd = 0;
int sumEven = 0;
String number = input.next();
int length = number.length();
int[] wei = new int[length];
for (int i = 0; i < number.length(); i++) {
wei[i] = Integer.parseInt(number.substring(length - i - 1, length
- i));// 從最末一位開始提取,每一位上的數值
System.out.println("第" + i + "位數字是散罩:" + wei[i]);
}
for (int i = 0; i < length / 2; i++) {
sumOdd += wei[2 * i];
if ((wei[2 * i + 1] * 2) > 9)
wei[2 * i + 1] = wei[2 * i + 1] * 2 - 9;
else
wei[2 * i + 1] *= 2;
sumEven += wei[2 * i + 1];
}
System.out.println("奇數位的和敬掘衡是亮做:" + sumOdd);
System.out.println("偶數位的和是:" + sumEven);
if ((sumOdd + sumEven) % 10 == 0)
System.out.println("Recept.");
else
System.out.println("Can not recept.");
}
}
運行結果:
Please input your credit card number:
5432123456788881
第0位數字是:1
第1位數字是:8
第2位數字是:8
第3位數字是:8
第4位數字是:8
第5位數字是:7
第6位數字是:6
第7位數字是:5
第8位數字是:4
第9位數字是:3
第10位數字是:2
第11位數字是:1
第12位數字是:2
第13位數字是:3
第14位數字是:4
第15位數字是:5
奇數位的和是:35
偶數位的和是:35
Recept.