第三周课程总结&实验报告(一)
实验报告(一)
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的那些方法运用起来.
理论比起实践来说还是后者比较重要而且相对更容易弄懂.
第三周课程总结&实验报告(一)的更多相关文章
- Java第三周课程总结&实验报告一
第三周课程总结 1.关于面向对象的一些具体内容,明白了类与对象以及Java的封装性和构造方法以及对对象匿名的相关知识. 2.this关键字,它是表示类的成员属性(变量),使用this构造方法时必须放在 ...
- 第三周课程总结&实验报告
课程总结 在这周对Java进行了更深层次的学习,Java的学习也变得越来越困难而有趣,加入了一些新的构造新的方法,还学习了一些简化代码的方式. 面向对象的基本概念 对于面向对象的程序设计有三个主要特征 ...
- 第三周课程总结&实验报告一
实验一 Java开发环境与简单Java程序 一.实验目的 熟悉JDK开发环境 熟练掌握结构化程序设计方法 二.实验内容 1.在此处输入标题打印输出所有的"水仙花数",所谓" ...
- 第五周课程总结&实验报告(三)
实验三 String类的应用 实验目的: (1)掌握类String类的使用: (2)学会使用JDK帮助文档: 实验内容: 1.已知字符串:"this is a test of java&qu ...
- 第九周课程总结 & 实验报告(七)
第九周课程总结 一.多线程 1.线程的状态 2.线程操作的相关方法 二.Java IO 1.操作文件的类---File ()基本介绍 ()使用File类操作文件 .RandomAccessFile类 ...
- 第八周课程总结 & 实验报告(六)
第八周课程总结 一.包装类 介绍 装箱与拆箱 应用 二.异常 基本概念 基本格式 异常类的继承结构 throws关键字 throw关键字 Exception类和RuntimeException类 自定 ...
- 第七周课程总结 & 实验报告(五)
第七周课程总结 一.抽象类与接口的应用 1.实例化 2.实际应用 ---模板设计(抽象类) ---制定标准(接口) 3.设计模式 ---工厂设计 ---代理设计 ---适配器设计 二.抽象类与接口之间 ...
- 第八周课程总结&实验报告(六)
第八周课程总结 启动多线程售票(上课老师说要加入作业的部分) public class TestDemo { public static void main(StringD args) throws ...
- 第五周课程总结&实验报告(四)
第五周课程总结 本周主要学习了 1.抽象类 抽象类的定义格式 abstract class抽象类名称{ 属性; 访问权限返回值类型方法名称(参数){ //普通方法 [return返回值]; } 访问权 ...
随机推荐
- 小白学习django第二站-模版配置
上一站说道app创建,接下来我们来配置app的url路由 首先需要到setting.py中添加book这个app, 再到django_test文件里的urls添加路由 include() : 这个函数 ...
- 根据ip获取地理信息.php
根据ip获取地理信息.php <?php function getIPLoc_sina($queryIP){ $url = 'http://int.dpool.sina.com.cn/iploo ...
- DAX/PowerBI系列 - 累计总计(Cumulative Total, Running Total)
DAX/PowerBI系列 - 累计总计(Cumulative Total) 2017/07/23 更新:B列公式(见最后) 2019/08/08 更新:在可视化数据的时候,一定要选择日期维度的日期列 ...
- SpringBoot多数据源解决方案(转载)
1.开源项目地址:MyBatis Plus & Dynamic Datasource Maven配置: <dependency> <groupId>com.baomid ...
- Laravel5如何向闭合函数内传递参数 where function 传参
如上,怎么将$title 像$query一样,在函数内部使用? $result = UserMenus::with(['menu'=>function($query){ $query->w ...
- linux打印彩色输出
在终端生成彩色输出,我们可以使用转义序列来实现. 每种颜色都有对应的颜色码.比如:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37 要打印彩色文 ...
- java面试(Web相关)06
1.JSP 和 servlet 有什么区别? JSP 是 servlet 技术的扩展,本质上就是 servlet 的简易方式.servlet 和 JSP 最主要的不同点在于,servlet 的应用逻辑 ...
- Java并发编程实战 第10章 避免活跃性危险
死锁 经典的死锁:哲学家进餐问题.5个哲学家 5个筷子 如果没有哲学家都占了一个筷子 互相等待筷子 陷入死锁 数据库设计系统中一般有死锁检测,通过在表示等待关系的有向图中搜索循环来实现. JVM没有死 ...
- linux如何判断上一条命令执行是否正确
echo $? 如果输出0代表结果正确 如果输出非0代表结果错误
- 基于vue模块化开发后台系统——准备工作
文章目录如下:项目效果预览地址项目开源代码基于vue模块化开发后台系统--准备工作基于vue模块化开发后台系统--构建项目基于vue模块化开发后台系统--权限控制 前言 本文章是以学习为主,练习一下v ...