实验报告(一)

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. mysql(中)

    mysql(中) 一.数据库配置 1.登录mysql 2.在mysql安装目录下:创建my.ini(my.cnf) 3.设置配置信息并保存 ''' [mysqld] character-set-ser ...

  2. 网络架构,七层协议,三次握手四次挥手,socket套接字简单编程

    一.单机架构 应用领域: 植物大战僵尸 office 二.CS架构 应用领域: QQ 大型网络游戏 计算机发展初期用户去取数据,直接就去主机拿,从这里开始就分出了客户端和服务端. 客户端:用户安装的软 ...

  3. Comet OJ - Contest #5 E 迫真大游戏

    怎么说,看了推到之后真的不难,事实上确实也蛮友好(可能咱就是想不出多项式题目的做法???),除了用到了分治法法塔就比较毒瘤 花了一个晚上以及一个上午做这么一道题...(还是太菜了) Result1 分 ...

  4. Chrome之谷歌插件开发

    最近碰到一个需求,需要在某个平台上批量的添加好友,如果是人工点击,可以操作,但是效率并不高,人工成本较高.就打算使用浏览器插件的方式来完成这件重复性的工作. 介绍: Chrome插件的本质就是一个由  ...

  5. 在浏览器输入url,发生了什么?BSC结构图(百度搜索关键字发生了什么?)

    服务器---------->软件(客户端) 百度搜索周杰伦,发生了什么

  6. hadoop最简伪分布式安装

    本次安装运行过程使用的是Ubuntu16.04 64位+Hadoop2.5.2+jdk1.7.0_75 Notice: Hadoop2.5.2版本默认只支持64位系统 使用的jdk可以为1.7和1.8 ...

  7. Flask开发系列之快速入门

    Flask开发系列之快速入门 文档 一个最小的应用 调试模式 路由 变量规则 构造 URL HTTP 方法 静态文件 模板渲染 访问请求数据 环境局部变量 请求对象 文件上传 Cookies 重定向和 ...

  8. 异步分布式队列Celery

    异步分布式队列Celery 转载地址 Celery 是什么? 官网 Celery 是一个由 Python 编写的简单.灵活.可靠的用来处理大量信息的分布式系统,它同时提供操作和维护分布式系统所需的工具 ...

  9. linux格式化磁盘命令

    linux格式化磁盘命令           linux mkfs         指令:mkfs 使用权限 : 超级使用者 使用方式 : mkfs [-V] [-t fstype] [fs-opti ...

  10. owncloud 安装

    假定lamp已安装完成. 1 安装owncloud 使用curl命令下载其发行版密钥(key),并使用add命令将其与apt-key实用程序一起导入: curl https://download.ow ...