实验一 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循环打印下面的图形。

三、实验过程

  1. 打印输出所有的“水仙花数”,所谓“水仙花数”是指一个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. 第三周课程总结&实验报告(一)

    实验报告(一) 1.打印输出所有的"水仙花数",所谓"水仙花数"是指一个3位数,其中各位数字立方和等于该数本身.例如,153是一个"水仙花数" ...

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

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

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

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

  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. 32. ClustrixDB License管理

    一.许可的概述 ClustrixDB必须拥有有效的许可证才能运行.本授权指定: 集群中允许的最大节点数 ClustrixDB将使用的最大核数 在裸金属系统上,ClustrixDB将尝试启用与已授权的物 ...

  2. 移动端rem使用及理解

    先上代码 window.onload = function(){ getRem(720,100) }; window.onresize = function(){ getRem(720,100) }; ...

  3. 【Python之路】特别篇--Python面向对象(初级篇)

    概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 面向过程编程最易被初学 ...

  4. [pwnable.kr]--alloca

    0x00: 好久没玩了...去年十月以后就没玩过了TAT 这几天把peach的坑,winafl的坑填了下,就来搞下pwn. 0x01: 这个程序是给了源码的 #include <stdio.h& ...

  5. BZOJ 1419: Red is good 期望dp

    数学期望可以理解成一个 DAG 模型. Code: #include <bits/stdc++.h> #define N 5003 #define ll long long #define ...

  6. FTP服务器安装配置

    1.安装:yum install vsftpd -y 2.修改配置文件:cd /etc/vsftpd/ cat vsftpd.conf | grep -Ev '^$|^#' listen_port= ...

  7. 7.6 T1 深度优先搜索(dfs)

    深度优先搜索(dfs) [题目描述] sol:50pts随便写写,就是大众分了,直接n2dpOK,100分要找点规律,需要数学头脑 官方题解 //#include <bits/stdc++.h& ...

  8. B. Interesting Array(线段树)

    B. Interesting Array time limit per test 1 second memory limit per test 256 megabytes input standard ...

  9. EasySwoole 在mac上装虚拟机centos共享mac目录报错处理

    [2019-09-26 21:37:09][DEBUG][ERROR] : [listen /media/psf/Home/wwwroot/myobj/easyswoole/Temp/TaskWork ...

  10. Django框架使用

    ---恢复内容开始--- Django 创建第一个项目 本章我们将介绍Django 管理工具及如何使用 Django 来创建项目,第一个项目我们以 HelloWorld 来命令项目. Django 管 ...