*7.30(模式识别:四个连续相等的数)编写下面的方法,测试某数组是否有四个连续相同值的数。编写测试程序,提示用户输入一个整数列表,调用方法看是否有4个连续且相等的数

  • 题目
    • 题目描述与运行示例
    • 破题
  • 代码

题目

题目描述与运行示例

*7.30(模式识别:四个连续相等的数)编写下面的方法,测试某数组是否有四个连续且相同值的数:
public static boolean isConsecutiveFour(int[] values)
编写测试程序,提示用户输入一个整数列表,调用方法看是否有4个连续且相等的数,显示结论。程序应该首先提示用户键入输入的大小(列表值的个数)
运行示例:

Enter the number of values: 8
Enter the values: 3 4 5 5 5 5 4 5
The list has consecutive fours
Enter the number of values: 9
Enter the values: 3 4 5 5 6 5 5 4 5
The list has no consecutive fours

破题

  1. 主方法:从控制台获取整数列表长度,并赋值给int型变量length
  2. 主方法:声明一个数组,长度为length
  3. 主方法:使用循环从控制台获取数组元素
  4. 主方法:调用方法isConsecutiveFour,传入获取的数组,根据返回值决定输出
  5. isConsecutiveFour方法:获取传入的数组长度,赋值给int型变量length
  6. isConsecutiveFour方法:使用for循环i作为下标从0开始length-4结束(含)
  7. 判断values[i]==values[i+1]==values[i+2]==values[i+3],如果为真则返回true
  8. isConsecutiveFour方法:循环结束后返回false

代码

import java.util.Scanner;public class Test7_30 {public static void main(String[] args) {//1. 主方法:从控制台获取整数列表长度,并赋值给int型变量lengthScanner input = new Scanner(System.in);System.out.print("Enter the number of values: ");int length = input.nextInt();//2. 主方法:声明一个数组,长度为lengthint[] list = new int[length];//3. 主方法:使用循环从控制台获取数组元素System.out.print("Enter the values: ");for (int i = 0 ; i < length ; i++){list[i] = input.nextInt();}//4. 主方法:调用方法isConsecutiveFour,传入获取的数组,根据返回值决定输出if (isConsecutiveFour(list)){System.out.print("The list has consecutive fours");}elseSystem.out.print("The list has no consecutive fours");}public static boolean isConsecutiveFour(int[] values){//5. isConsecutiveFour方法:获取传入的数组长度,赋值给int型变量lengthint length = values.length;//6. isConsecutiveFour方法:使用for循环i作为下标从0开始length-4结束(含)for (int i = 0 ; i <= length - 4 ;i++) {//7. 判断values[i]==values[i+1]==values[i+2]==values[i+3],如果为真则返回trueif (values[i] == values[i + 1] && values[i + 1] == values[i + 2] &&values[i + 2] == values[i + 3])return true;}//8. isConsecutiveFour方法:循环结束后返回falsereturn false;}
}

Java黑皮书课后题第7章:*7.30(模式识别:四个连续相等的数)编写下面的方法,测试某数组是否有四个连续相同值的数。编写测试程序,提示用户输入一个整数列表,调用方法看是否有4个连续且相等的数相关推荐

  1. Java黑皮书课后题第2章:*2.22(金融应用:货币单位)改写程序清单2-10,解决将double转int可能会造成精度损失问题。以整数值作为输入,其最后两位代表的是美分币值

    *2.22(金融应用:货币单位)改写程序清单2-10,解决将double转int可能会造成精度损失问题.以整数值作为输入,其最后两位代表的是美分币值 题目 题目概述 举例 程序清单2-10 修改思路 ...

  2. Java黑皮书课后题第6章:*6.4(反序显示一个整数)使用下面的方法体编写方法,反序显示一个整数…例如reverse(3456)返回6543,编写一个测试程序,提示用户输入一个整数,然后显示它的反序

    *6.4(反序显示一个整数)使用下面的方法体编写方法,反序显示一个整数-例如reverse(3456)返回6543,编写一个测试程序,提示用户输入一个整数,然后显示它的反序 题目 题目概述 破题 代码 ...

  3. Java黑皮书课后题第9章:*9.11(代数:2*2的线性方程)为一个2*2的线性方程设计一个名为LinearEquation的类

    Java黑皮书课后题第9章:*9.11(代数:2*2的线性方程)为一个2*2的线性方程设计一个名为LinearEquation的类 题目 破题 代码 Test10 Test11_LinearEquat ...

  4. Java黑皮书课后题第9章:*9.10(代数:二次方程式)为二次方程式设计一个名为QuadraticEquation的类

    Java黑皮书课后题第9章:*9.10(代数:二次方程式)为二次方程式设计一个名为QuadraticEquation的类 题目 破题 代码 Test10 Test10_QuadraticEquatio ...

  5. Java黑皮书课后题第9章:*9.6(秒表)设计一个名为StopWatch的类,该类包含……。编写一个测试程序,用于测量使用选择排序对100000个数字进行排序的执行时间

    Java黑皮书课后题第9章:*9.6(秒表)设计一个名为StopWatch的类,该类包含--.编写一个测试程序,用于测量使用选择排序对100000个数字进行排序的执行时间 题目 破题 代码 Test6 ...

  6. Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类)设计一个名为Person的类及其两个名为Student和Employee的子类

    Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类) 题目 缺陷 UML图 代码 Test02_MyDate.java:用于参考的My ...

  7. Java黑皮书课后题第10章:*10.1(Time类)设计一个名为Time的类。编写一个测试程序,创建两个Time对象(使用new Time()和new Time(555550000))

    Java黑皮书课后题第10章:*10.1设计一个名为Time的类.编写一个测试程序,创建两个Time对象 题目 程序 代码 Test1.java Test1_Time.java 运行结果 UML 题目 ...

  8. Java黑皮书课后题第9章:**9.13(Location类)设计一个名为Location的类,定位二维数组中的最大值及其位置。

    Java黑皮书课后题第9章:**9.13(Location类)设计一个名为Location的类,定位二维数组中的最大值及其位置 题目 破题 代码 Test13 Test13_Location 运行结果 ...

  9. Java黑皮书课后题第9章:*9.5(使用GregorianCalendar类)Java API中有一个位于包java.util中的类GregorianCalendar

    Java黑皮书课后题第9章:*9.5(使用GregorianCalendar类)Java API中有一个位于包java.util中的类GregorianCalendar 题目 代码 题目 代码 imp ...

最新文章

  1. 他们说头不铁,别做机器人
  2. python2中的unicode_在python2中的编码
  3. hdu- 2642 Stars 二维树状数组
  4. distance在函数 int_Arduino智能小车——超声波避障
  5. 博士毕业2年后,他成为985大学副院长
  6. imwrite函数 matlab_用matlab做一个脉动磁势分解的动画
  7. matlab无穷积分求解_python做微积分
  8. 最新剑指offer刷题笔记js(含新旧俩版所有题)
  9. ansible-playbook之循环(Loops)
  10. C# Quartz.Net 定时任务的简单使用
  11. [MDB] EXP 导入数据库
  12. 深入解读Linux进程调度系列(3)——调度的执行过程
  13. 【独家】阿里云罗庆超:对象存储 OSS 海量数据管理和应用最佳实践
  14. Laya位图字体制作
  15. 《经营的本质》序“经营的逻辑”--读后感及读书笔记
  16. [ctf web][csaw-ctf-2016-quals]mfw writeup
  17. linux 文件夹复权,大趋势6x无盘系统安装配置说明.doc
  18. python二维码生成识别代码_Python学习案例之二维码生成识别
  19. 软件工程第一次作业:写一篇自己的博客
  20. JVM笔记十四:方法区

热门文章

  1. 矩形法求定积分的原理和实现
  2. 1390: 队列问题(1)(vector模拟)
  3. 史上最轻量​!阿里新型单元测试Mock工具开源了
  4. 一文揭秘阿里实时计算Blink核心技术:如何做到唯快不破?
  5. 《幽灵行者》:近期最酷炫的赛博朋克游戏之一
  6. preg_match_all用法
  7. InnoDB锁机制之Gap Lock、Next-Key Lock、Record Lock解析
  8. ora-39142,ora-39001,ora-39000
  9. MySQL内存管理,内存分配器和操作系统
  10. mysql的my.cnf