public void add(int end) { int sum=0; for(int i=1;i<=end;i++) { for(int j=1;j<=i;j++) { sum+=j; System.out.print(j+"+"); } System.out.print(" "); } System.out.println("sum:"+sum); } public void cheng(int end) { long sum=0; int temp=1; for(int i=1;i<=10;i++) { sum+=1; System.out.print(i+"+"); for(int j=1;j<=i;j++) { temp*=j; System.out.print(j+"*"); } System.out.print(""); sum+=temp; } System.out.println("sum:"+sum); }
更正一下:cheng(int end) 里没有"sum+=1;"
public class Calc { public static int add(int num) { if (num <= 0) { throw new IllegalArgumentException("Num must be postive!"); } if (num == 1) { return 1; } return num + add(num - 1); } }乘法就是把最后的+变*
这样可以实现如下; import javax.swing.*;
public class Calc { public static void main(String[] args) { Multiplication aMul = new Multiplication();
long num = Long.parseLong(JOptionPane.showInputDialog("Input a num :"));
long all = aMul.calc(num);
System.out.println("all is " + all); } }
class Multiplication { public int calc(long n) { int temp = 1; if(n <= 0) { throw new IllegalArgumentException("Number must bigger than zero !");
class A{ int Sum(int n){ int temp=0; if(n==1)return 1; temp=Sum(n-1)+n; System.out.println("n:" + n); System.out.println("temp:" + temp); return temp; } } public class Dg { public static void main(String[] args) { int Sum = 0; A dg = new A(); for(int i=1;i<=10;i++){ Sum+=dg.Sum(i); System.out.println("Sum:" + Sum); } } }
代码: 借用上面一格兄弟的代码,但他的不符合LZ要求。 public class Calc { static int add(int num) { if (num <= 0) { throw new IllegalArgumentException("Num must be postive!"); } if (num == 1) { return 1; } return num + add(num - 1); }
static int mut(int num) { if (num <= 0) { throw new IllegalArgumentException("Num must be postive!"); } if (num == 1) { return 1; } return num * mut(num - 1); } public static void main(String args[]) {
int sum = 0; int mut = 0; for (int i=1 ;i<=10 ;i++ ) { sum = add(i) + sum; mut = mut(i) + mut; } System.out.println(sum); System.out.println(mut); } }
加法: int sum(int n) { if ( n == 1) return 1; return sum(n-1) + add(n); }int add(n) { if (n == 1) return 1; return add(n-1) + n; }
乘法: int sum(int n) { if ( n == 1) return 1; return sum(n-1) + cheng(n); }int cheng(n) { if (n == 1) return 1; return cheng(n-1) * n; }
这个算法应该比较容易懂一点 int t=1,sum=0,i=1; for(i=1;i<=10;i++) { t=t*i; sum=sum+t; } System.out.println("sum="+sum);
if(n == 1) return 1;
int temp = 0;
for(int i=1; i<=n; i++)
temp +=i;
return sum(n-1) + temp;
}
{
int sum=0;
for(int i=1;i<=end;i++)
{
for(int j=1;j<=i;j++)
{
sum+=j;
System.out.print(j+"+");
}
System.out.print(" ");
}
System.out.println("sum:"+sum);
}
public void cheng(int end)
{
long sum=0;
int temp=1;
for(int i=1;i<=10;i++)
{
sum+=1;
System.out.print(i+"+");
for(int j=1;j<=i;j++)
{
temp*=j;
System.out.print(j+"*");
}
System.out.print("");
sum+=temp;
}
System.out.println("sum:"+sum);
}
public static int add(int num) {
if (num <= 0) {
throw new IllegalArgumentException("Num must be postive!");
}
if (num == 1) {
return 1;
}
return num + add(num - 1);
}
}乘法就是把最后的+变*
import javax.swing.*;
public class Calc
{
public static void main(String[] args)
{
Multiplication aMul = new Multiplication();
long num = Long.parseLong(JOptionPane.showInputDialog("Input a num :"));
long all = aMul.calc(num);
System.out.println("all is " + all);
}
}
class Multiplication
{
public int calc(long n)
{
int temp = 1;
if(n <= 0)
{
throw new IllegalArgumentException("Number must bigger than zero !");
}
else
{
if(n == 1)
{
System.out.println("1*...*1 =1");
return 1;
}
else
{
for(int i=1 ; i<=n ; i++)
{
temp *= i;
}
System.out.println("1*...*" + n + " =" + temp);
return temp + calc(n-1);
}
}
}
}
if(i==1)
return 1;
int s = 0;
for(int k = 0;k<=i;k++)
s = s+k;
System.out.println(s);
return sum(i-1)+s;
}
public int multiply(int i){
if(i==1)
return 1;
int s = 1;
for(int k = 1;k<=i;k++)
s = s*k;
System.out.println(s);
return multiply(i-1)+s;
}
int sum=0
if n<=1 then
return 1
else
sum+=n
sum(n -1)
end if
}
递归, int x(int i)
{
if(i<=0)
return 0;
else
return x(i-1)+1;}这中结构有典型的结构,熟悉了,就好弄了.
int Sum(int n){
int temp=0;
if(n==1)return 1;
temp=Sum(n-1)+n;
System.out.println("n:" + n);
System.out.println("temp:" + temp);
return temp;
}
}
public class Dg {
public static void main(String[] args) {
int Sum = 0;
A dg = new A();
for(int i=1;i<=10;i++){
Sum+=dg.Sum(i);
System.out.println("Sum:" + Sum);
}
}
}
代码:
借用上面一格兄弟的代码,但他的不符合LZ要求。 public class Calc {
static int add(int num) {
if (num <= 0) {
throw new IllegalArgumentException("Num must be postive!");
}
if (num == 1) {
return 1;
}
return num + add(num - 1);
}
static int mut(int num) {
if (num <= 0) {
throw new IllegalArgumentException("Num must be postive!");
}
if (num == 1) {
return 1;
}
return num * mut(num - 1);
} public static void main(String args[])
{
int sum = 0;
int mut = 0;
for (int i=1 ;i<=10 ;i++ )
{ sum = add(i) + sum;
mut = mut(i) + mut;
}
System.out.println(sum);
System.out.println(mut);
}
}
int sum(int n)
{
if ( n == 1) return 1;
return sum(n-1) + add(n);
}int add(n)
{
if (n == 1) return 1;
return add(n-1) + n;
}
int sum(int n)
{
if ( n == 1) return 1;
return sum(n-1) + cheng(n);
}int cheng(n)
{
if (n == 1) return 1;
return cheng(n-1) * n;
}
int t=1,sum=0,i=1;
for(i=1;i<=10;i++)
{
t=t*i;
sum=sum+t;
}
System.out.println("sum="+sum);
fac(int n)
{
int t,sum=0;
if(n==0||n==1)t=1;
else t=n*fac(n-1);
sum+=t;
}
我也愿意加入你们的行列,我现在在山东大学学习计算机科学与技术,我非常喜欢java,你们可以帮助我吗?
我会努力的
我要和你们比一比,看我们在两年后的时间里,谁的本领更高一筹
怎么样啊