网站开发搭建合同范本,开发一个安卓app,网络舆情分析报告模板,十大社交电商购物平台一、主要目的
通过编写一个简单的Java程序#xff0c;加深对于条件语句和循环语句的理解#xff0c;并练习使用Scanner类获取用户输入
二、主要内容
编写一个程序#xff0c;根据用户输入的选项#xff0c;执行相应的操作。用户可以选择判断一个整数是否为奇数、判断一个…一、主要目的
通过编写一个简单的Java程序加深对于条件语句和循环语句的理解并练习使用Scanner类获取用户输入
二、主要内容
编写一个程序根据用户输入的选项执行相应的操作。用户可以选择判断一个整数是否为奇数、判断一个整数是否为完全平方数、判断一个整数是否为回文数、判断一个整数是否为素数、判断一个字符是否为英文字母并输出相应的结果
三、内容实现
import java.util.Scanner;
public class Main { public static void main(String[] args) { Scanner scanner new Scanner(System.in); System.out.println(请选择要进行的操作); System.out.println(1. 判断奇偶数); System.out.println(2. 判断闰年); System.out.println(3. 判断质数); System.out.println(4. 判断完全平方数); System.out.println(5. 判断回文数); System.out.println(6. 判断素数); System.out.println(7. 判断输入的字符是大写字母还是小写字母); int choice scanner.nextInt(); switch (choice) { case 1: System.out.println(请输入一个整数); int num1 scanner.nextInt(); if (num1 % 2 0) { System.out.println(num1 是偶数); } else { System.out.println(num1 是奇数); } break; case 2: System.out.println(请输入一个年份); int year scanner.nextInt(); if (year % 400 0 || (year % 4 0 year % 100 ! 0)) { System.out.println(year 是闰年); } else { System.out.println(year 不是闰年); } break; case 3: System.out.println(请输入一个整数); int num2 scanner.nextInt(); boolean isPrime true; if (num2 1) { isPrime false; } else { for (int i 2; i Math.sqrt(num2); i) { if (num2 % i 0) { isPrime false; break; } } } if (isPrime) { System.out.println(num2 是质数); } else { System.out.println(num2 不是质数); } break; case 4: System.out.println(请输入一个整数); int num3 scanner.nextInt(); boolean isPerfectSquare false; for (int i 1; i num3 / 2; i) { if (i * i num3) { isPerfectSquare true; break; } } if (isPerfectSquare) { System.out.println(num3 是完全平方数); } else { System.out.println(num3 不是完全平方数); } break; case 5: System.out.println(请输入一个整数); int num4 scanner.nextInt(); String numStr String.valueOf(num4); String reverseNumStr new StringBuilder(numStr).reverse().toString(); if (numStr.equals(reverseNumStr)) { System.out.println(num4 是回文数); } else { System.out.println(num4 不是回文数); } break; case 6: System.out.println(请输入一个整数); int num5 scanner.nextInt(); boolean isPrime2 true; if (num5 1) { isPrime2 false; } else { for (int i 2; i Math.sqrt(num5); i) { if (num5 % i 0) { isPrime2 false; break; } } } if (isPrime2) { System.out.println(num5 是素数); } else { System.out.println(num5 不是素数); } break; case 7: System.out.println(请输入一个字符); char ch scanner.next().charAt(0); if (Character.isLetter(ch)) { if (Character.isUpperCase(ch)) { System.out.println(输入的是大写英文字母); } else { System.out.println(输入的是小写英文字母); } } else { int ascii (int) ch; System.out.println(非英文字母请输入一个整数 ascii); } break; default: System.out.println(无效的操作); break; } } } 四、重难点
在这个程序中判断一个整数是否为回文数是一个比较难的地方。我通过将整数转换为字符串然后使用StringBuilder类的reverse()方法将字符串反转最后比较反转后的字符串和原字符串是否相等来判断一个整数是否为回文数。这个方法虽然简洁但是需要了解字符串的操作方法和StringBuilder类的使用。另外判断一个字符是否为英文字母也是一个比较重要的点通过使用Character类的isLetter()方法和isUpperCase()方法可以轻松实现
五、心得体会
通过这次实验我加深了对于条件语句和循环语句的理解并且掌握了使用Scanner类获取用户输入的方法。在编写程序的过程中我遇到了一些问题比如如何判断一个整数是否为回文数以及如何判断一个字符是否为英文字母。通过查阅资料和思考我成功解决了这些问题也提升了自己的编程能力