课后作业01,02,03

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了课后作业01,02,03相关的知识,希望对你有一定的参考价值。

使用递推的方法用杨辉三角形计算

设计思想:先输入两个参数值,然后递归调用方法求值,最后输出结果

流程图:

技术分享

 

代码:

import java.util.Scanner;
public class Yanghui
{

public static void main(String args[])
{
Scanner aa=new Scanner(System.in);
int m,n;
System.out.println("请输入m、n:");
m=aa.nextInt();
n=aa.nextInt();
System.out.println("C("+m+","+n+")的值为:"+jisuan(m+1,n+1));
}
public static int jisuan(int i,int j)
{
if(j==1||j>=i) 
return 1;
else 
return jisuan(i-1,j)+jisuan(i-1,j-1);

}

结果:

技术分享

设计思想:利用递归,把n-1个圆盘先移动b,把最后一个圆盘移到c上,以这样的方法移动,然后以这n-1个盘重新开始,知道所有盘都移到c上

流程图:

技术分享

代码:

import java.util.Scanner;


public class Hanoi {

public static void main(String[] args)
{
Hanoi a =new Hanoi();
System.out.println("输入盘子数量:");
Scanner input = new Scanner(System.in);
int n =input.nextInt();
a.hanoi(n, ‘A‘, ‘B‘, ‘C‘);
}
void hanoi(int n,char one,char two,char three)
{

if(n==1)
move(one,three);

else
{
hanoi(n-1,one,three, two);
move(one,three);
hanoi(n-1,two,one, three);
}
}
void move(char x,char y)
{
System.out.println(x+"移到"+y);
}
}

结果:

技术分享

回文字符串问题

设计思想:

输出字符串,判断首尾字符是否相等,不相等输出不回文,相等则递归调用函数,判断再里面的字符是否相等,知道遍历整个字符串;

流程图:

技术分享

代码:

import java.util.*;
public class Palindrome {

String str;


/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成的方法存根
System.out.println("请输入字符串:");
Scanner input = new Scanner(System.in);
Palindrome aa=new Palindrome();
int d=0,c;
aa.str = input.next();
c=aa.str.length()-1;
aa.huiwen(d,c);

}
public int huiwen(int d,int c)
{
if(d==str.length())
{
System.out.println(d+"回文"+str.length()+"回文");
System.out.println(str+"回文");
System.exit(0);
}
if(str.charAt(c)!=str.charAt(d))
{
System.out.println(str+"不回文");
return 0;
}
if(str.charAt(c)==str.charAt(d))
{
return huiwen(d++,c--);
}

return 0;

}

}

结果:

技术分享















































































以上是关于课后作业01,02,03的主要内容,如果未能解决你的问题,请参考以下文章

课后作业03

课后作业03

2110-微服务核心知识点及问题分析

12-2107课上问题分析及总结

动手动脑及课后作业02

02方法 课后作业1