题目是:The middle digit of an integer number (Middle, for short). For a positive number read from the standard input extract the digit in the middle and display it, if this exists; otherwise display “no middle digit”. For 145, the middle digit is 4, whereas in the case of 1324, there is no middle digit.
我自己编写了个程序,可以编译,可是一运行就出现错误,请帮我修改看看那里错了
//Display Enter an integer number in a message dialog box
String Integernumber = JOptionPane.showInputDialog("Enter an integer number:");
//Calculate how many figure in this integer number
String str1 = String.valueOf(Integernumber);
int str = Integer.parseInt(str1);
//determine the length of number isn't even.
int digit = str % 2;
if (digit == 0) {
String output = "There is no middle digit in "+Integernumber;
JOptionPane.showMessageDialog(null, output);
}
else {
double n = str / 2;
double n1 = n - 0.5;
double n2 = n + 0.5;
int n11 = (int)n1;
int n22 = (int)n2;
String middle = Integernumber.substring(n11,n22);
String output = "The middle digit in "+Integernumber+" is "+middle;
JOptionPane.showMessageDialog(null, output);
}
}
}
最好给我全部的代码,谢谢了
在JAVA,输入一个正整数,求此正整数的中间数(比如12345的中间数是3...
String str1 = String.valueOf(Integernumber);\/\/判断是否输入正整数 if(str1.length()==0||str1.indexOf("-")>=0){ JOptionPane.showMessageDialog(null, "请输入一个正整数");return;} \/\/判断是否存在中间的正整数 if(str1.length()%2 == 0){ JOptionPane.showMessageDialog(null, "不...
...写,输入一个正整数N,输出他的转置,比如输入12345,输出就为54321,要求...
public static void main(String[] args) {Scanner in =new Scanner(System.in);System.out.println("请输入正整数!");String aa=in.next();String [] b=aa.split("");String [] bb=new String[]{};List<String> list=new ArrayList<String>();for (int i = 0; i < b.length; ...
JAVA实现读入一个正整数,输出它的位数。例如:输入124,则输出3?
public class temp { public static void main(string[]args){ string str = string.valueof(12345);stringbuffer buff = new stringbuffer();system.out.println(str);for(int i=str.length()-1;i>=0;i--){ buff.append(str.charat(i));} string retstr = buff.tostring();integer ret...
用Java编程 :输入一个正整数n,输出n!的值。 其中n!=1*2*3*…*n...
给你写了个程序可以实现,比如在主函数输入5,则输出表示5!(120)的数组[0, 2, 1],其中0表示个位数,2表示十位数,1表示百位数,程序如下:public static void factor(int n) {int[] product = {1}; \/\/从1开始,循环相乘,比如[1] * 2 -> [2] \/\/[2] * 3 -> [6] \/...
用java编程:输入一个正整数,将该数的各位左右反转输出。如123。输出...
import java.util.*;public class aa { public static void main(String args[]){ Scanner input=new Scanner(System.in);System.out.println("请输入一个三位数整数");int a=input.nextInt();int num[]=new int[3];for(int i=0;i<3;i++){ num[i]=a%10;a=a\/10;} System.out....
求Java源代码:用Java实现输出:输入一个正整数,将该数的各位左右反转输出...
public static void main(String[] args) { String str = String.valueOf(12345);StringBuffer buff = new StringBuffer();System.out.println(str);for(int i=str.length()-1;i>=0;i--){ buff.append(str.charAt(i));} String retStr = buff.toString();Integer retInt = Integer....
用Java编程 :输入一个正整数n,输出n!的值。 其中n!=1*2*3*…*n...
System.out.println("请输入你要!的数:");\/\/提示用户输入Scanner in = new Scanner(System.in);int n = in.nextInt();\/\/获得用户输入的值long res=1;\/\/因为数字可能会很大,所以使用longfor(int i=1;i<n+1;i++){\/\/循环获得乘积res *= i;}System.out.println(res);\/\/打印结果 ...
用JAVA代码从键盘输入一个正整数n,然后求1+2+3+…+n的结果并输出。
import java.util.Scanner;public class Main{ public static void main (String[]args){ Scanner sc = new Scanner (System.in);System.out.print ("请输入一个正整数: ");int n = sc.nextInt ();int sum = 0;for (int i = 1; i <= n; i++){ sum += i;} System.out.print...
编写java程序,实现接受用户输入的正整数,输出该数的阶乘.例如:输入数据...
有两个地方建议改改。。。第一个是循环中的“number<=i”,,,把等号删除。。。第二个是循环中的fact*=i...把i改为number。。。改正之后应该就是没问题了
java语言程式设计 输入一个正整数N,输出表达式1+1\/2+1\/3+.+1\/N的值
java语言程式设计 输入一个正整数N,输出表达式1+1\/2+1\/3+...+1\/N的值 package test;import java.util.Scanner;public class Express { public static void main(String[] args) { System.out.println("请输入n的值"); Scanner scan=new Scanner(System.in); int n=scan.nextIn...