第三周课程总结&实验报告一
实验一 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返回值]; } 访问权 ...
随机推荐
- VS的快捷操作
连按两下Tab,生成代码块.修改i为n,再按一次Tab,对应位置自动改变. Ctrl+. 或者 Alt+Enter ctor 连按两下Tab,生成无返回值的构造函数(constructor func ...
- python 通过序列索引迭代
另外一种执行循环的遍历方式是通过索引,如下实例: #!/usr/bin/python # -*- coding: UTF-8 -*- fruits = ['banana', 'apple', 'man ...
- http支持上传文件夹
核心原理: 该项目核心就是文件分块上传.前后端要高度配合,需要双方约定好一些数据,才能完成大文件分块,我们在项目中要重点解决的以下问题. * 如何分片: * 如何合成一个文件: * 中断了从哪个分片开 ...
- CF1146F Leaf Partition 树形DP
感觉很多树上难以直接求解的问题都可以转化为动态规划问题并进行求解$.$ 令 $f[x],g[x]$ 分别表示以 $x$ 为根的子树不想上延申,向上延申的方案数$.$ 这里向上延申指的是会有其他子树的节 ...
- 【原创】时隔十年,再度审视Performance Testing,性能测试,Load Runner,和企业级性能测试解决方案
软件测试入行是2006年,最先学习的测试工具囊括了QTP,Test Director,Load Runner,Rational Robot,Rational Performance: 那时的操作系统是 ...
- 2018-2019-2 20165205 网络对抗技术 Exp7 网络欺诈防范
2018-2019-2 20165205 网络对抗技术 Exp7 网络欺诈防范 实验内容 本次实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法.具体实践有 (1)简单应用SET ...
- Nginx 配置443 HTTPS
server { listen 443 ssl; server_name localhost; ssl on; ssl_certificate D://newlingshou//nginx-1.12. ...
- AttributeError:module 'keras.engine.topology' has no attribute 'load_weights_from_hdf5_group_by_name
在jupyter notebooks上运行tensorflow-keras的Mask R-CNN时遇到如下错误: 参考博客中写了两种解决方案: 解决方案一:报错是由于keras版本不对造成的.load ...
- kernel hacking的一些网站
很全面的网站,下面的网站基本都可以从该地址找到. 新手必备 subscrible/unsubscrible mail list mail list archive kernel git mainlin ...
- 服务安全-IAM:百科
ylbtech-服务安全-IAM:百科 IAM(身份识别与访问管理(简称大4A)) IAM(Identity and Access Management 的缩写),即“身份识别与访问管理”,具有单点登 ...