-
- 实验目的
- 练习类的构造方法的调用、参数传递、对象的构造与使用;
- 练习循环结构、控制结构;
- 练习数据的输入与输出;
- 学习编写结构清晰、逻辑正确、功能完善的java代码;
- 学习使用工具对代码进行跟踪调试。
- 实验工具
- 编程语言:Python;
- 开发环境:Eclipse(或MyEclipse、NetBeans、IntelliJ IDEA等)。
- 实验题目
- 利用 p/4 » (1-1/3) + (1/5-1/7) + ¼公式,求解p的近似值,直到最后一项绝对值小于10-6。
- 声明一个类,定义一个方法,以计算一维数组中的最大值并返回该值,参数为int[]或double[]。在main方法中调用该方法,传递不同长度的数组,得到返回值并输出。
- 求100至200间的全部素数。
- 输出100~999之间所有的“水仙花数”。
- 求Fibonacci数列的前40个数。即F1=1, F2=1, Fn = Fn-1 + Fn-2(n³3)。
- 在一个方法中实现从一个数组中找到该数组的最大值和次大值并返回。
- 一个数如果恰好等于它的因子之和,这个数就是完数。例如6的因子为1、2、3,而6=1+2+3,因此6是一个完数。编程求出1000之内的所有完数。
- 实验步骤
1. 安装JDK、Java集成式开发环境,并配置相应开发环境;
2. 按照题目要求,编写相应Java程序。
(请附上详细代码、运行截图等内容)
import java.lang.Math;
public class sy1 {
public static void main(String[] args) {
double n = 1, t = 1, pi = 0, s = 1;
while ((Math.abs(t)) > (Math.pow(10, -6)))
{
pi = pi + t;
n = n + 2;
s = -s;
t = s / n;
}
pi = pi * 4;
System.out.println(pi);
}
}
2、public class sy2 {
public int searchMax(int[] a) {
int max = 0;
for (int i = 1; i < a.length; i++) {
if (a[max] < a[i])
a[max] = a[i];
}
return a[max];
}
public static void main(String[] args) {
Scanner re = new Scanner(System.in);
int[] a = new int[re.nextInt()];
for (int i = 0; i < a.length; i++) {
a[i] = re.nextInt();
}
sy2 e = new sy2();
System.out.println(e.searchMax(a));
}
}
3、public class sy3 {
public static void main(String[] args) {
for(int i=100;i<=200;i++) {
int k=1;
for(int j=2;j<i;j++) {
if(i%j==0) {
k=0;
break;
}
}
if(k==1) {
System.out.println(i);
}
}
}
}
4、public class sy4 {
public static void main(String[] args){
for(int i=100;i<=999;i++){
int k=i;
int a=k%10;
k=k/10;
int b=k%10;
k=k/10;
int c=k;
int sum=a*a*a+b*b*b+c*c*c;
if(sum==i)
{
System.out.print(i+"\n");
}
}
}
}
5、public class sy5 {
public static void main(String[] args) {
int i=1,j=1,s=1,t=1,pi=0;
System.out.println(i);
System.out.println(j);
while(t<=28) {
pi=i+j;
i=j;
j=pi;
System.out.println(pi);
t++;
}
}
}
6、public class sy6 {
public static void main(String[] args) {
int arr[]= {1,-1,3,4,23,45,2};
int n=arr.length;
int max=0,h=0,m=0;
for(int i=0;i<n;i++) {
if(arr[i]>max)
max=arr[i];
}
System.out.println(max);
for(int i=0;i<=n;i++)
{
for(m=0,h=0;m<n;m++)
if(arr[i]>arr[m])
h++;
if(h==n-2)
{
System.out.println(arr[i]);
break;
}
}
}
}
7、public class sy7 {
public static void main(String[] args) {
int i=1,n=1,pi=0,s=0,t=1;
while(i<1000) {
s=0;
for(n=1;n<i;n++) {
if(i%n==0)
s=n+s;
}
if(s==i)
System.out.println(i);
i++;
}
}
}
-
- 实验心得
简要介绍你在实验中使用到的函数定义、while-break循环、if-else控制语句等关键词的使用注意事项?
if else 是一个循环结构的语句。