实验报告(一)

1.打印输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其中各位数字立方和等于该数本身。例如,153是一个“水仙花数”。

(1).实验代码:

package 测试;
public class 测试0 { public static void main(String[] args) {
int sum,a,b,c;
for(a=1;a<=9;a++)
{
for(b=0;b<=9;b++)
{
for(c=0;c<=9;c++)
{
sum=a*100+b*10+c;
if(sum==a*a*a+b*b*b+c*c*c)
{
System.out.println(sum);
}
}
}
} } }

(2)实验运行结果截图:

(3)实验大致思路:

题目限制了3位数,所以可以直接用3个数进行循环,然后判断符合的数进行输出

2. 编写Java程序,求13-23+33-43+…+973-983+993-1003的值。

(1).实验代码:

package 测试;
public class 测试0 {
public static void main(String[] args) {
int sum=0,a,b=1;
for(a=1;a<=100;a++)
{
sum+=(a*10+3)*b;
b=-b;
}
System.out.println(sum);
} }

(2).实验运行结果截图:

(3)实验大致思路:

观察题目就大致能看出来是a*10+3模式的数进行循环加减,直接循环之后输出最后的结果就完成了

3. 编程求1!+2!+3!+…+20!。

(1).实验代码:

package 测试;
public class 测试0 { public static void main(String[] args) {
long sum=0,a,b,c;
for(a=1;a<=20;a++)
{
b=1;
for(c=1;c<=a;c++)
{
b*=c;
}
sum+=b;
}
System.out.println(sum);
} }

(2)实验运行结果截图:

(3)实验大致思路:

需要在题目中建立一个循环来计算阶乘,完成了计算阶乘这一步剩下的就只是相加然后输出结果,但是如果定义的变量为int,就会出问题,结果是268040729,改成long之后就正常了,结果为2561327494111820313.原因是数字太大,超出了范围.

4. 编写Java程序,计算8+88+888+…前10项之和。

(1).实验代码:

package 测试;
public class 测试0 { public static void main(String[] args) {
int sum=0,a,b=0;
for(a=1;a<10;a++)
{
b=b*10+8;
sum+=b;
}
System.out.println(sum);
} }

(2)实验运行结果截图:

(3)实验大致思路:

和第二题类似,都是找到循环相加的式子直接循环相加并输出

5. 一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以内的所有完数。

(1).实验代码:

package 测试;
public class 测试0 { public static void main(String[] args) {
int sum;
for(int i=1;i<=1000;i++)
{
sum=0;
for(int j=1;j<=i-1;j++)
{
if(i%j==0)
{
sum+=j;
}
}
if(i==sum)
{
System.out.println(sum);
}
} } }

(2)实验运行结果截图:

(3)实验大致思路:

循环1~1000所有的数,将不等于本身的他们的因子相加之后再与原来的数进行比较,相同则可以直接输出

6. 编写应用程序,输出满足1+2+3+…+n<8888的最大正整数。

(1).实验代码:

package 测试;
public class 测试0 { public static void main(String[] args) {
int sum=0;
for(int i=1;i<8888;i++)
{
sum+=i;
if(sum>8888)
{
sum=sum-i;
i--;
System.out.println("n为"+i);
System.out.println("最大总和为"+sum);
break;
}
} } }

(2)实验运行结果截图:

(3)实验大致思路:

把1,2,3...n逐渐相加,直到出现大于8888的,这个时候总数减去这轮循环加的数,这轮循环加的数减一就可以求出n还有小于8888的最大和

7. 使用for循环打印下面的图(等腰三角形)

(1).实验代码:

package 测试;
public class 测试0 { public static void main(String[] args) {
int a=4,b=0;
for(int i=1;i<=5;i++)
{
for(int j=1;j<=a;j++)
{
System.out.print(" ");
}
System.out.print("*");
for(int k=1;k<=b;k++)
{
System.out.print(" *");
}
a--;
b++;
System.out.println("");
} } }

(2)实验运行结果截图:

(3)实验大致思路:

设计好要输出多少空格和什么时候输出空格和*,然后用for循环输出就可以了

第三周课程总结:

这周对java进一步的学习,学习了很多新的用法,但是还是不能很熟练的运用到实际使用,这次作业的7道题不难,能用C语言的模式稍微变动一下就行了,不过java还是对我来说有些复杂,我觉得我要通过题目才能把java的那些方法运用起来.

理论比起实践来说还是后者比较重要而且相对更容易弄懂.

第三周课程总结&实验报告(一)的更多相关文章

  1. Java第三周课程总结&实验报告一

    第三周课程总结 1.关于面向对象的一些具体内容,明白了类与对象以及Java的封装性和构造方法以及对对象匿名的相关知识. 2.this关键字,它是表示类的成员属性(变量),使用this构造方法时必须放在 ...

  2. 第三周课程总结&实验报告

    课程总结 在这周对Java进行了更深层次的学习,Java的学习也变得越来越困难而有趣,加入了一些新的构造新的方法,还学习了一些简化代码的方式. 面向对象的基本概念 对于面向对象的程序设计有三个主要特征 ...

  3. 第三周课程总结&实验报告一

    实验一 Java开发环境与简单Java程序 一.实验目的 熟悉JDK开发环境 熟练掌握结构化程序设计方法 二.实验内容 1.在此处输入标题打印输出所有的"水仙花数",所谓" ...

  4. 第五周课程总结&实验报告(三)

    实验三 String类的应用 实验目的: (1)掌握类String类的使用: (2)学会使用JDK帮助文档: 实验内容: 1.已知字符串:"this is a test of java&qu ...

  5. 第九周课程总结 & 实验报告(七)

    第九周课程总结 一.多线程 1.线程的状态 2.线程操作的相关方法 二.Java IO 1.操作文件的类---File ()基本介绍 ()使用File类操作文件 .RandomAccessFile类 ...

  6. 第八周课程总结 & 实验报告(六)

    第八周课程总结 一.包装类 介绍 装箱与拆箱 应用 二.异常 基本概念 基本格式 异常类的继承结构 throws关键字 throw关键字 Exception类和RuntimeException类 自定 ...

  7. 第七周课程总结 & 实验报告(五)

    第七周课程总结 一.抽象类与接口的应用 1.实例化 2.实际应用 ---模板设计(抽象类) ---制定标准(接口) 3.设计模式 ---工厂设计 ---代理设计 ---适配器设计 二.抽象类与接口之间 ...

  8. 第八周课程总结&实验报告(六)

    第八周课程总结 启动多线程售票(上课老师说要加入作业的部分) public class TestDemo { public static void main(StringD args) throws ...

  9. 第五周课程总结&实验报告(四)

    第五周课程总结 本周主要学习了 1.抽象类 抽象类的定义格式 abstract class抽象类名称{ 属性; 访问权限返回值类型方法名称(参数){ //普通方法 [return返回值]; } 访问权 ...

随机推荐

  1. 【统计】Causal Inference

    [统计]Causal Inference 原文传送门 http://www.stat.cmu.edu/~larry/=sml/Causation.pdf 过程 一.Prediction 和 causa ...

  2. C# 从集合A中取出集合B中不包含的数据(根据ID判断),并添加到集合B中

    从一个集合A中取出另一个集合B中不包含的数据,并添加到集合B中 private void button2_Click(object sender, EventArgs e) { var ListA = ...

  3. 剑指offer-4:变态条楼梯

    ##四.变态条楼梯 ###题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. ###分析 也是斐波那契数列问题,根据上述的思路,可 ...

  4. 一个线程oom,进程里其他线程还能运行吗?

    线程之间互相不影响:守护线程生活周期相同 引言 这题是一个网友@大脸猫爱吃鱼给我的提问,出自今年校招美团三面的一个真题.大致如下 一个进程有3个线程,如果一个线程抛出oom,其他两个线程还能运行么? ...

  5. 一、Linux平台部署ASP.NET、ASP.NET CORE、PHP

    一.什么是Jexus Jexus是一款Linux平台上的高性能WEB服务器和负载均衡网关服务器,以支持ASP.NET.ASP.NET CORE.PHP为特色,同时具备反向代理.入侵检测等重要功能.可以 ...

  6. zabbix 数据库问题

    Too many connections ::052844.247 Cannot connect to the database. Exiting... :: started [trapper #] ...

  7. SpringBootMVC02——Spring Data JPA的使用&JSP的使用

    Spring Data JPA的使用 实体层 package com.littlepage.domain; import javax.persistence.Entity; import javax. ...

  8. Linux日常之命令grep

    命令grep简介 利用该命令在文本中查找指定的字符串,是Linux中最常用的文本处理工具之一. 命令grep与正则表达式结合使用时,功能会非常强大. 命令grep会在文本文件中按照指定的正则表达式进行 ...

  9. java高并发核心要点|系列5|CPU内存伪共享

    上节提到的:伪共享,今天我们来说说. 那什么是伪共享呢? 这得从CPU的缓存结构说起.以下如图,CPU一般来说是有三级缓存,1 级,2级,3级,越上面的,越靠近CPU的,速度越快,成本也越高.也就是说 ...

  10. GitHub上一些有趣的开源项目[持续更新]

    TheAlgorithms/C-Plus-Plus 用C++实现了常见的算法,如排序算法,查找算法,以及一些常见的数据数据结构,如链表,二叉树. 链接:https://github.com/TheAl ...