第三周课程总结&实验报告一
实验一 Java开发环境与简单Java程序
一、实验目的
熟悉JDK开发环境
熟练掌握结构化程序设计方法
二、实验内容
1.在此处输入标题打印输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其中各位数字立方和等于该数本身。例如,153是一个“水仙花数”。
2.编写Java程序,求13-23+33-43+…+973-983+993-1003的值。
3.编程求1!+2!+3!+…+20!。
4.编写Java程序,计算8+88+888+…前10项之和。
5.一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以内的所有完数。
6.编写应用程序,输出满足1+2+3+…+n<8888的最大正整数。
7.使用for循环打印下面的图形。
三、实验过程
- 打印输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其中各位数字立方和等于该数本身。例如,153是一个“水仙花数”。
实验源码:
package housewor;
public class Shuixianhua {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a, b, c;
for(int i=100;i<999;i++)
{
a=i/100;
b=(i%100)/10;
c=i%10;
if(Math.pow(a, 3)+Math.pow(b, 3)+Math.pow(c, 3)==i)
{
System.out.println(i);
}
}
}
}
实验结果:

2.编写Java程序,求13-23+33-43+…+973-983+993-1003的值。
实验源码:
public class Demo1 {
public static void main(String[] args) {
int a=0;
for(int i=0;i<100;i++)
{
if(i%2==0)
{
a-=i*10+3; //偶次数前是负号
}
else{
a+=i*10+3;
}
}
System.out.println(a);
}
}
实验结果:

3.编程求1!+2!+3!+…+20!。
实验源码:
public class Demo2 {
public static void main(String[] args) {
int sum=0;
int n=1;
for (int i=1; i<=20 ;i++ ) {
n *= i; //阶乘
sum += n; //累加数值
}
System.out.println(sum);
}
}
实验结果
遇到的问题:
在编译过程中,定义数据类型时,使用int和long显示的结果不同



4.编写Java程序,计算8+88+888+…前10项之和。
实验源码:
public class demo3 {
public static void main(String[] args) {
long a= 8,sum=0;
for(int i=0;i<10;i++)
{
sum+=a; //累加总和
a=a+(a*10); //a+a*10;(a+a*10)*10+a;...
}
System.out.println(sum);
}
}
实验结果:

5.一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以内的所有完数。
实验源码:
public class demo4 {
public static void main(String[] args) {
for (int i = 1; i < 1000; i++) {
int sum = 0;
for (int j = 1; j < i; j++) {
if (i % j == 0) {
sum =sum+ j; //因子数:6=1+2+3
}
}
if (i == sum) {
System.out.println(i);
}
}
}
}
实验结果:

6.编写应用程序,输出满足1+2+3+…+n<8888的最大正整数。
实验源码:
public class Demo5 {
public static void main(String[] args) {
int n=0, sum=0;
for(int i =0;i<1000;i++)
{
sum=sum+n;
n++;
if(sum>8888)
{
break;
}
}
n--;
System.out.println(n-1);
}
}
实验结果:
能输出满足1+2+3+…+n<8888的最大正整数应该是n=132

7.使用for循环打印下面的图形。
实验源码:
public class demo6 {
public static void main(String[] args) {
for( int i=1;i<=5;i++) //先输出空格,再输出*
{
for(int j=0;j<5-i;j++)
{
System.out.print(" "); //从上往下
}
for(int k=1;k<=i;k++)
{
System.out.print("* ");
}
System.out.println();
}
}
}
实验结果:
遇到的问题:写代码的思路是先打空格再打*,出现了问题,后来发现我把j++打成了j--输出一直是个错误,因为想着从上到下,我太难了

实验总结:
在编写代码的过程中会遇到很多问题
1.因为学习基础不扎实,有很多小细节问题需要去百度
2.算法能力还是欠缺的,思路是对的,但是实现起来就要想半天
3.在编译时对语句的使用不熟练
需要去解决:熟练语法,有时间刷刷题,知识点要记牢,不能粗略的阅读
第三周课程总结&实验报告一的更多相关文章
- 第三周课程总结&实验报告(一)
实验报告(一) 1.打印输出所有的"水仙花数",所谓"水仙花数"是指一个3位数,其中各位数字立方和等于该数本身.例如,153是一个"水仙花数" ...
- Java第三周课程总结&实验报告一
第三周课程总结 1.关于面向对象的一些具体内容,明白了类与对象以及Java的封装性和构造方法以及对对象匿名的相关知识. 2.this关键字,它是表示类的成员属性(变量),使用this构造方法时必须放在 ...
- 第三周课程总结&实验报告
课程总结 在这周对Java进行了更深层次的学习,Java的学习也变得越来越困难而有趣,加入了一些新的构造新的方法,还学习了一些简化代码的方式. 面向对象的基本概念 对于面向对象的程序设计有三个主要特征 ...
- 第五周课程总结&实验报告(三)
实验三 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返回值]; } 访问权 ...
随机推荐
- electron-vue 引入OpenLayer 报错 Unexpected token export
electron-vue 引入OpenLayer 报错 Unexpected token export 解决办法: 在 .electron-vue/webpack.renderer.config.js ...
- webpack5持久化缓存
Opt-in webpack 旨在注重构建安全而非性能.我们没有打算默认启用这一功能,主要原因在于此功能虽然有 95% 几率提升性能,但仍有 5% 的几率中断你的应用程序/工作流/构建. 什么是缓存失 ...
- ckeditor+粘贴word
最近公司做项目需要实现一个功能,在网页富文本编辑器中实现粘贴Word图文的功能. 我们在网站中使用的Web编辑器比较多,都是根据用户需求来选择的.目前还没有固定哪一个编辑器 有时候用的是UEditor ...
- mac 建立 .babellrc 格式文件
打开MAC的终端: 1 先sudo -s获取最高权限: 2 然后通过cd进入项目所在的路径: 3 接着“vim .babelrc”新建一个.babelrc 文件: 键盘输入”i“进入编辑模式, ...
- HGOI 20191029pm 题解
Promblem A 小学组 给出一个位运算操作符$\oplus \in \{or , and , xor\}$ ,和$n$个$m$维向量$a_i$,其中$a_{i,j} \in \{0,1\}$. ...
- vue-cli3项目打包后,在自己搭的服务器上访问打包好的页面空白,处理方法
我用vue开发的一个小项目,项目开发出雏形,想打包一下放测试,但是我想放测试前自己检查一下经过npm run build打包生成的项目,在本地服务器能不能正常跑,于是,经过网上大哥的帮忙,写了个简易的 ...
- js获取用户当前页面复制的内容并修改
如果只是单纯的获取页面上复制的内容可以使用window.getSelection()来获取选中的内容,在执行复制操作就可以了,但是如果想修改复制的内容可以先获取要复制的内容修改之后再用document ...
- 创建docker静态化IP
配置桥接网络 桥接本地物理网络的目的,是为了局域网内用户方便访问 docker 实例中服务,不需要各种端口映射即可访问服务. 但是这样做,又违背了 docker 容器的安全隔离的原则,工作中辩证的选择 ...
- C与C++ 中 struct和typedef struct
总体分两块 1 首先://注意在C和C++里不同在C中定义一个结构体类型要用typedef: typedef struct Student { int a; }Stu; 于是在声明变量的时候就可:St ...
- spring boot 下 mapper接口与xml文件映射问题
1. @MapperScan @MapperScan("com.streamax.ums.business.dao") 注解扫描的包路径是否有问题 2. 目录结构 mapper接口 ...