10.11JAVA作业
[实验任务一]:素数输出
1、 实验要求:
(1)编写判断该数是否为素数的方法,并在主方法中对其进行调用。
(2)注意编程规范:程序开头部分的目的,作者以及日期;必要的空格与缩进,适当的注释等;
(3)实验报告中要求包括程序设计思想、程序流程图、源代码、运行结果截图、编译错误分析等内容。
2、 实验内容
(1)计算并输出3~100之间的素数。
(2)编程满足下列要求:
1)按照每行5个输出;
2)输出任意两个整数之间的所有素数;
3)输入两个整数,输出这两个整数之间的最大的10个和最小的10个素数。
代码
1 思想
利用创建扫描器实现输入,判断素数运用了布尔返回值。再判断素数函数中运用强制类型转换实现数的开方变整数INT型,2直接返回真值,其他的开方如果在最大数为开方值的循环中输入数number除以i求余为0则返回false计算完都没有0则返回true。利用函数判断数是否为素数加num和am实现计数最后输出完。在输出一遍前十个数和后10个数。
2 流程图
package YANG;//王重阳 信1705-2 20173600
import java.util.Scanner;
public class YANG535 {
public static void main(String[] args) {
System.out.println("下面进行随机输入两个整数求其中的素数以及其中最大和最小的各10个"+'\n');
Scanner scan=new Scanner(System.in);
System.out.println("请输入两个整数");
int A=scan.nextInt();
int B=scan.nextInt();
int i,count=0,j=0,num=0,am=0,k=0;
for( i=A; i<=B; i++){
if(isPrimeNumber(i) == true){
count++;
System.out.printf("%6d", i);
if(count%5 == 0)
System.out.println();
}
}
System.out.println("其中最大和最小的10个素数各是");
System.out.println();
for(k=A;k<=B;k++) {
if(isPrimeNumber(k)==true)
{am++;} }
for(j=A;j<=B;j++) {
if(isPrimeNumber(j)==true) {
num++;
if((num/10==0)||(num>am-10))
{System.out.printf("%6d", j);}
}
}
}
//判断一个数是否是素数,若是,返回true,否则返回false
public static boolean isPrimeNumber(int num){
int k = (int) Math.sqrt(num);
if(num == 2)
return true;
for(int i=2; i<=k; i++)
if(num%i == 0)
return false;
return true;
}
}
流程图

实验任务二]:递归方法
1、 实验要求:
(1)必须用递归函数实现上述问题;
(2)注意编程规范:程序开头部分的目的,作者以及日期;必要的空格与缩进,适当的注释等;
(3)实验报告中要求包括程序设计思想、程序流程图、源代码、运行结果截图、编译错误分析等内容。
2、 实验内容
(1) 使用递归方式判断某个字串是否是回文( palindrome );
“回文”是指正着读、反着读都一样的句子。比如“我是谁是我”
使用递归算法检测回文的算法描述如下:
A single or zero-character string is a palindrome.
Any other string is a palindrome if the first and last characters are the same, and the string that remains, excepting those characters, is a palindrome.
程序设计思想
输入一个字符串,然后将字符串倒置,比较字符串第i位上的字符与倒数第i位上的字符是否相同,如果都相同则字符串是回文;否则字符串不是回文。
package LIULAN;
import java.util.Scanner;
public class SS {
public static boolean isPalindrome(String s,int i,int j){
if(i > j)
throw new IllegalArgumentException();
if(i == j)
return true;
else{
return (s.charAt(i) == s.charAt(j)) && isPalindrome(s,i+1,j-1);
}
}
public static void main(String[] args){
Scanner in=new Scanner(System.in);
String s = in.nextLine();
int i = 0;
int j = s.length() - 1;
System.out.println(s + " is Palindrome? " + SS .isPalindrome(s, i, j));
}
}

[实验任务三]:统计分析。
1、 实验要求:
实验报告中要求包括程序设计思想、程序流程图、源代码、运行结果截图、编译错误分析等内容。
2、实验内容:
(1) 用户需求:英语的26 个字母的频率在一本小说中是如何分布的?某类型文章中常出现的单词是什么?某作家最常用的词汇是什么?《哈利波特》 中最常用的短语是什么,等等。
(2) 要求:输出单个文件中的前 N 个最常出现的英语单词,并将结果输入到文本文件中。
1 实验思想
1)将文章(一个字符串存储)按空格进行拆分(split)后,存储到一个字符串(单词)数组中。
(2)定义一个Map,getkey是字符串类型,保存单词;value是数字类型,保存该单词出现的次数。
(3)遍历(1)中得到的字符串数组,对于每一个单词,考察Map的getkey中是否出现过该单词,如果没出现过,map中增加一个元素,key为该单词,value为1(第一次出现);
如果,在map的getkey中发现了该单词,则通过key找到对应的value(单词出现的次数),将该value加1,再次保存回map。
(4)遍历(3)中得到的map,输出getkey(单词)及对应的value(次数)。
路
package LIULAN;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.Map.Entry;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class en {
public static void Count(File file){
String str ="";
String result = "";
try {BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
while((str = bufferedReader.readLine())!=null){result = result+str;}bufferedReader.close();
}
catch (Exception e) {
}
System.out.println(result);
Map<String, Integer> map = new HashMap<String, Integer>();
Pattern p = Pattern.compile("[, . ; ! ? ]");
Matcher m = p.matcher(result);
String [] strs = p.split(result);
for(int i=0;i<strs.length;i++)
{ if(map.containsKey(strs[i])){int c = map.get(strs[i]);
c++;map.put(strs[i], c);
}else{map.put(strs[i], 1);
}
}
Set set = map.entrySet();
Iterator it = set.iterator();
int min = 100;
int max = 0;
String minWord = "";
String maxWord = "";
int x = 0;
while (it.hasNext()) {Entry<String, Integer> me = (Entry) it.next();
if((int) me.getValue()<min&&!((String) me.getKey()).equals("")){min = (int) me.getValue();
minWord = (String) me.getKey();
}
if((int) me.getValue()>=max&&!((String) me.getKey()).equals(""))
{
max = (int) me.getValue();
maxWord = (String) me.getKey();
}
System.out.println(me.getKey()+":"+me.getValue());
}System.out.println("出现次数最多的是"+":"+max+" "+maxWord);
}
private void println(Map map){Set set = map.entrySet();
Iterator it = set.iterator();
while(it.hasNext()){Entry<String, Integer> entry = (Entry<String, Integer>) it.next();
String key = entry.getKey();
int value = entry.getValue();
}
}
public static void main(String[] args){
File file = new File("D:\\新建文件夹\\1\\KANWEN\\A.txt");
Count(file);}
}



动手动脑
重载的动手动脑
参数类型不同,参数个数不同,或者是参数类型的顺序不同。
7和7.5的类型不同造成了重载
import java.util.Random;
import java.util.Scanner;
public class RandomNum {
public static void main(String[] args) {
Random ran = new Random(System.currentTimeMillis());//以当前时间为种子
Scanner input = new Scanner(System.in);
System.out.print("Enter the number of randomnumbers:");//从键盘输入要产生随机数的个数
int in = input.nextInt();
int j=0;//引入j用来输出换行符
for(int i = 0 ; i < in ; i++)
{
System.out.print(ran.nextInt()+"\t");//利用for循环输出所产生的随机数
j+=1;
if(j==6)
{
System.out.println();
j=0;
}
}
}
}
10.11JAVA作业的更多相关文章
- C语言程序设计第10堂作业
一.本次课主要内容: 本次课程学习数组,一种最基本的构造类型,它是一组相同类型数据的有序集合.数组中的元素在内存中连续存放,每个元素都属于同一种数据类型,用数组名和下标可以唯一地确定数组元素: (1) ...
- 福州大学软件工程1816 | W班 团队Alpha阶段成绩汇总排名(第9、10次作业)
写在前面 汇总成绩排名链接 1.作业链接 第九次作业--项目Alpha冲刺(团队) 第十次作业--事后诸葛亮(团队) 2.评分准则 本次作业包括现场Alpha答辩评分(映射总分为100分)+博客分(总 ...
- 2017-2018 第一学期201623班《程序设计与数据结构》-第9&10周作业问题总结
一.作业内容 第8周作业 http://www.cnblogs.com/rocedu/p/7484252.html#WEEK08 第9周作业 http://www.cnblogs.com/rocedu ...
- day 10 课后作业
# -*- coding: utf-8 -*-# @Time : 2019/1/2 16:35# @Author : Endless-cloud# @Site : # @File : 课后作业.py# ...
- 福州大学软件工程1816 | W班 第10次作业[个人作业——软件产品案例分析]
作业链接 个人作业--软件产品案例分析 评分细则 本次个人项目分数由两部分组成(课堂得分(老师/助教占比60%,学生占比40%)满分40分+博客分满分60分) 课堂得分和博客得分表 评分统计图 千帆竞 ...
- 福州大学软件工程1816 | W班 第10次作业[软件工程实践总结]
作业链接 个人作业--软件工程实践总结 评分细则 本次由五个问题(每个十分)+创意照片(五分)+附加题(十分)组成 评分统计图 千帆竞发图 汇总成绩排名链接 汇总链接
- (10.09作业)学生选课数据库SQL语句练习题
- noip第10课作业
1. 统计不同类型字符出现次数 [问题描述] 输入一个字符串(假设长度不超过1000个字符),统计其中大写,小写,数字,其他字符出现的次数. [样例输入]Hello,what are you ...
- C语言|博客作业10
问题 回答 C语言 博客作业10 这个作业要求在哪里 作业要求 我在这个课程的目标是 熟练循环语句的用法 这个作业在哪个具体方面帮助我实现目标 pta作业 参考文献 <C语言程序设计> 1 ...
随机推荐
- 一个正整数表示为n个连续正整数之和(第1届第2题)
题目要求 问题描述:一个正整数有可能可以被表示为 n(n>=2) 个连续正整数之和,如: 15=1+2+3+4+5 15=4+5+6 15=7+8 编写程序,根据输入的任何一个正整数,找出符合这 ...
- 动软 生成 linq相关DAO
第一步:新建自定义模板 <#@ template language="c#" HostSpecific="True" #> <#@ outpu ...
- java中自定义注释@interface的用法
一.什么是注释 说起注释,得先提一提什么是元数据(metadata).所谓元数据就是数据的数据.也就是说,元数据是描述数据的.就象数据表中的字段一样,每个字段描述了这个字段下的数据的含义.而J ...
- MXNET:权重衰减-gluon实现
构建数据集 # -*- coding: utf-8 -*- from mxnet import init from mxnet import ndarray as nd from mxnet.gluo ...
- Entity Framework定义外键,限制通过migration命令自动更改字段名称
1.问题 在定义一个表的外键时,通过add-migration命令生成,并通过update-database更新到数据库,发现外键名称发生了重命名.举例说明: 人员表[User](Id,Name,Pa ...
- 【转】xhEditor技术手册 网页编辑器基础教程
1. xhEditor入门基础 1.1. 在线可视化HTML编辑器概述1.2. 获取xhEditor1.3. xhEditor运行环境1.4. xhEditor基本使用指南 1.1. 在线可视化HTM ...
- Java如何查找系统的代理设置?
在Java编程中,如何查找系统的代理设置? 以下示例显示如何使用HttpURLConnection类的systemSetting()方法和getResponse()方法的put方法在系统上查找代理设置 ...
- 配置 -- php运行报Call to undefined function curl_init()的解决办法
很早之前就出现过这个问题,网上百度了下,答案千篇一律,都是说: 1.在php.ini中开启curl扩展 2.将php目录下的libeay32.dll.ssleay32.dll.php5ts.dll拷贝 ...
- AutoIt 软件自动化操作
AutoIt 目前最新是v3版本,这是一个使用类似BASIC脚本语言的免费软件,它设计用于Windows GUI(图形用户界面)中进行自动化操作. 它利用模拟键盘按键,鼠标移动和窗口/控件的组合来实现 ...
- mysql 分组查询的结果当成临时表 在求最大值
select avg(data1) as a from temp WHERE YEAR(mdate)= 2018 and MONTH(mdate)=03 and day(mdate)=25 GROUP ...