判断素数
判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
通过键盘输入m n的值,判断m~n之间的素数,打印输出这些素数的值。
import java.util.Scanner;
class Test {
public static void main(String[] args) {
int m;
int n;
Scanner scanner = new Scanner(System.in);
Scanner scan = scanner.useDelimiter("\\D");// 匹配非数字
System.out.print("请输入m n:");
System.out.println();
m = scan.nextInt();
n = scan.nextInt();
int count = 0;
for (int i = m; i < n; i++) {
if (isPrime(i)) {
count++;
System.out.print(i + " ");
if (count % 10 == 0) {
System.out.println();
}
}
}
System.out.println();
if (count == 0) {
System.out.println("输入的范围没有素数");
}
}
/*TODO:判断素数
参数说明:n要进行判断的整数
返回值:true:是素数,false:不是素数
*/
private static boolean isPrime(int n) {
/*TODO: 判断素数
判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。*/
for (int i = 2; i < n; i++)
{
if (n % i == 0) {
return false;
}
}
return true;
}
}
输入一行字符,分别统计出其中英文字母、数字和其它字符的个数
接收输入的字符后,编写代码进行处理,
分别统计字符内,数字、字母、其他字符的数量,
按照给定的变量,进行计算,输出
import java.util.Scanner;
public class Test02 {
public static void main(String[] args) {
// 数字个数统计
int digital = 0;
// 英文字母个数统计
int character = 0;
// 其他字符个数统计
int other = 0;
Scanner sc = new Scanner(System.in);
System.out.println("请输入要统计的字符:");
String s = sc.nextLine();
/**
* Todo:
* 接收输入的字符后,编写代码进行处理,
* 分别统计字符内,数字、字母、其他字符的数量,
* 按照给定的变量,进行计算,输出
*/
char[] chararr = s.toCharArray();
for(int i =0;i<chararr.length;i++){
char c = chararr[i];
if('A'<=c && c<='Z'){
character++;
}else if('a'<=c&&c<='z'){
character++;
}else if('0'<=c&&c<='9'){
digital++;
}else{
other++;
}
}
System.out.println("数字个数: " + digital);
System.out.println("英文字母个数: " + character);
System.out.println("其他字符个数:" + other);
}
}
对输入的10个整数进行从小到大排序,并打印输出。
输入10个整数,按照如下代码段的要求,完成10个整数按照从小到大的排列。并打印输出。
import java.util.Scanner;
public class Test03 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] arr = new int[10];
System.out.println("请输入10个整数:");
for (int i = 0; i < 10; i++) {
arr[i] = sc.nextInt();
}
int i,j,temp;
for(i=0;i<9;i++)
{
for(j=0;j<9-i;j++)
if(arr[j]>arr[j+1])
{
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
/**
* Todo:
* 自行编写代码,
* 完成10个整数按照从小到大的排列
*/
// 打印输出结果
for (int a = 0; a < 10; a++) {
System.out.print(arr[a] + " ");
}
}
}
银行卡
按照要求,补全完成代码段,完成卡片,银行卡类,打印输出结果。
步骤一:我们需要有一个Card类,卡片,它是"银行卡"的父类。
步骤二:我们还需要有一个BankCard类,银行卡,它是Card类的子类。
步骤三:在Card类的构造函数中,初始化company(发卡机构)、money(余额)、cardID(卡号,8位0-9的随机数构成,非0开头)。
步骤四:在BankCard类构造函数中,使用super关键字初始化,父类属性。
输入六个字符,按照顺序依次为Card类对象的发卡机构、余额、卡号,BankCard类对象的发卡机构、余额、卡号,打印输出结果。
import java.util.Scanner;
/**
* Todo:
* 按照要求,补全完成代码段,完成卡片,银行卡类,打印输出结果。
步骤一:我们需要有一个Card类,卡片,它是"银行卡"的父类。
步骤二:我们还需要有一个BankCard类,银行卡,它是Card类的子类。
步骤三:在Card类的构造函数中,初始化company(发卡机构)、money(余额)、cardID。
步骤四:在BankCard类构造函数中,使用super关键字初始化,父类属性。
输入六个字符,按照顺序依次为Card类对象的发卡机构、余额、卡号,BankCard类对象的发卡机构、余额、卡号,打印输出结果。
*
*
*/
/**
* Todo:创建Card类
*/
class Card {
/**
* Todo:
* 定义私有成员变量
* company(发卡机构)、
* money(余额)、double类型
* cardID
*/
private String company;
private double money;
private String cardID;
public Card(String company,double money,String cardID) {
this.company = company;
this.money = money;
this.cardID = cardID;
}
/**
* Todo:
* 在Card类的构造函数中,
* 初始化
* company(发卡机构)、
* money(余额)、
* cardID
*/
public void print() {
String str = this.company + "," + this.money + "," + this.cardID;
System.out.println(str);
}
public static void main(String[] args) {
/**
* Todo:
* 输入六个字符,
* 按照顺序依次为
* Card类对象的发卡机构、余额、卡号,
* BankCard类对象的发卡机构、余额、卡号,
* 打印输出结果。
*
*/
Scanner sc = new Scanner(System.in);
String a = sc.next();
double b = sc.nextDouble();
String c = sc.next();
String d = sc.next();
double e = sc.nextDouble();
String f = sc.next();
Card card = new Card(a,b,c);
/**
* Todo:
* 根据输入的前三个数据
* 初始化Card类对象的成员变量
*
*/
// 调用print方法输出结果
card.print();
BankCard bankCard = new BankCard(d,e,f);
/**
* Todo:
* 根据输入的后三个数据
* 初始化BankCard类对象的成员变量
*
*/
// 调用print方法输出结果
bankCard.print();
}
}
/**
* Todo:
* 创建BankCard类,银行卡,
* 它是Card类的子类
*
**/
class BankCard extends Card {
public BankCard(String company,double money,String cardID) {
super(company,money,cardID);
}
/**
* Todo:
* 在BankCard类构造函数中,
* 使用super关键字初始化,父类属性。
*
*/
}
银行卡-充值消费
在代码段中,按照要求补全代码,实现银行卡-充值消费的功能,打印输出结果。
输入五行字符,
按照顺序依次为Card类对象的发卡机构、余额、卡号初始化,实例化Card类的对象,
按照次序进行充值和消费操作(充值及消费金额为整数),
打印输出结果。
import java.util.Scanner;
/**
* 在代码段中,按照要求补全代码,实现银行卡-充值消费的功能,打印输出结果。
输入五行字符,
按照顺序依次为Card类对象的发卡机构、余额、卡号初始化,实例化Card类的对象,
按照次序进行充值和消费操作(充值及消费金额为整数),
打印输出结果。
*/
/**
* Todo:创建Card类
*/
public class Card{
/**
* Todo:
* 定义私有成员变量
* company(发卡机构)、
* money(余额)、double类型
* cardID
*/
private String company;
private double money;
private String cardID;
public Card(String company,double money,String cardID) {
this.company = company;
this.money = money;
this.cardID = cardID;
}
/**
* Todo:
* 在Card类的构造函数中,
* 初始化
* company(发卡机构)、
* money(余额)、
* cardID
*/
public void print() {
String str = this.company +","+ this.money +","+ this.cardID;
System.out.println(str);
}
/**
* Todo:
* 定义函数 desposit(),实现给卡进行充值的功能,
参数代表充值的金额,充值金额大于0,
则修改卡内余额,返回true,代表充值成功,
否则返回false,代表充值失败
*/
public boolean desposit(int amount) {
if(amount>0){
money = money + amount;
return true;
}else{
return false;
}
}
/**
*
* Todo:
* 定义函数 consume(),实现消费的功能,
参数代表消费金额,消费金额大于0,返回true,
代表消费成功,否则返回false,代表消费失败。
*
*/
public boolean consume(int amount){
if(amount > money){
return false;
}
else if(amount > 0){
return true;
}else{
return false;
}
}
public static void main(String[] args) {
/**
* Todo:
* 输入五个字符,
* 按照顺序依次为
* Card类对象的发卡机构、余额、卡号,
* 充值金额,消费金额
* 打印输出结果。
*
*/
Scanner sc = new Scanner(System.in);
String a = sc.next();
double b = sc.nextDouble();
String c = sc.next();
int d = sc.nextInt();
int e = sc.nextInt();
Card card = new Card(a,b,c);
/**
* Todo:
* 根据输入的第一、二、三个数据
* 初始化Card类对象的成员变量
*
*/
boolean result ;
/**
* Todo:
* 实例化Card类的对象,按照次序进行充值和消费操作,
* 打印输出,充值/消费 是否成功(true/false)
* 每打印输出一个结果,进行换行一次
*/
// 进行充值
result = card.desposit(d);
System.out.println(result);
// 进行消费
result = card.consume(e);
System.out.println(result);
}
}