第三周课程总结&实验报告一
2019-09-14 21:01 小小乌龟君 阅读(175) 评论(2) 编辑 收藏 举报第三周课程总结
本周学习了类与对象。
对栈内存和堆内存进行了认识和了解。学习了创建多个对象和构造方法,由构造方法有引申学习了get和set,还有this。
了解了认识了java的三个性质: 封装性,继承性和多态性。
String字符串的学习,对字符串和整型进行比较区别。
实验报告(一)
1.打印输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其中各位数字立方和等于该数本身。例如,153是一个“水仙花数”
public class shuixianhua {
public static void main(String[] args) {
int i,x,y,z,k;
for(i=100;i<=999;i++){
z=i%10;
k=i/10;
y=k%10;
x=k/10;
if(Math.pow(x,3)+Math.pow(y,3)+Math.pow(z,3)==i){
System.out.println("水仙花数为:" + i);
}
}
}
}
2. 编写Java程序,求13-23+33-43+…+973-983+993-1003的值。
public class jiajian {
public static void main(String[] args){
int i,x,k=1,sum=0;
for(i=13;i<=1003;){
x=i*k;
sum+=x;
k=(-1)*k;
i=i+10;
}
System.out.println(sum);
}
}
3. 编程求1!+2!+3!+…+20!
public class jiecheng {
public static void main(String[] args){
int i,j,k,sum=0;
for(i=1;i<=20;i++){
k=1;
for(j=1;j<=i;j++){
k=k*j;
}
sum=sum+k;
}
System.out.println(sum);
}
}
4.编写Java程序,计算8+88+888+…前10项之和。
public class shixianghe {
public static void main(String[] args){
long i,n,k=80,sum=0,x=8;
for(i=0;i<10;i++){
sum=sum+x;
x=x+k;
k=k*10;
}
System.out.println(sum);
}
}
5. 一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以内的所有完数。
public class wanshu {
public static void main(String[] args) {
int i,j,n,x,sum;
for(i=1;i<=1000;i++)
{
if(i==1) {
continue;
}
sum=1;
for(j=2;j<i;j++) {
if(i%j==0) {
sum=sum+j;
}
}
if(sum==i) {
System.out.println(sum);
}
}
}
}
6. 编写应用程序,输出满足1+2+3+…+n<8888的最大正整数。
public class zhengshu {
public static void main(String[] args){
int i=1,sum=0,n=0;
while(sum<8888){
sum=sum+i;
n=i;
i++;
}
System.out.println(n);
}
}
7. 使用for循环打印下面的图(等腰三角形)
public class xinhao{
public static void main(String[] args) {
int i,j,k,n;
for(i=1;i<=5;i++){
for(j=1;j<=5-i;j++) {
System.out.print(" ");//输出空格
}
for(k=1;k<=i;k++) {
System.out.print("*");//输出*
if(k==i) { //在*阵中控制空格
break;
}
else { //保证不会多输出空格
System.out.print(" ");
}
}
System.out.print("\n");
}
}
}