2011级java第一周(春)项目---求2个整数的最大公约数

要求:

                  通过键盘输入两个整数、检查输入整数是否符合要求,并计算出其最大公约数。
简单代码如下:
package mathmax;
import java.util.Scanner;

public class Number {

	public static void main(String args[])
	{		
		int k1,k2,i,j,e,q,w=1;
		System.out.println("请输入2个正整数:");
		Scanner scan= new Scanner(System.in);
		k1=scan.nextInt();
		k2=scan.nextInt();
		if(k1 < k2)
		{
			e = k1 ;
			k1 = k2 ;
			k2 = e ;
		}
		for(i=1;i<k1;i++)
		{	
			j=k1%i;
			q=k2%i;
			if(j==0&&q==0)
			{	
				w=i;
			}
		}
		System.out.println("最大公约数是:");
		System.out.println(w);
	}
}

输出结果:


《算法概论》思维导图


源文件下载地址:http://pan.baidu.com/s/1kTC2fZL
<think>好的,我现在需要帮助用户找到用Java实现两个整数之和的示例代码。首先,用户的问题看起来比较基础,应该是刚学Java的入门者。我需要确保提供的代码简单易懂,符合入门的要。 首先,回忆一下Java的基本语法,两个整数之和应该涉及到变量声明、赋值和加法操作。用户可能想要一个完整的程序,包括main方法,这样可以直接运行看到结果。 接下来,我需要检查是否有现成的代码示例或教程。根据用户提供的引用,引用[1]中的暴力法虽然提到了Java代码,但那是两数之和的问题,和简单的加法不同。不过,结构上可以参考,比如如何定义方法、输入输出处理。引用[2]是关于最大公约数Java代码,可能不太相关。引用[3]提到了算法实例,但同样不直接相关。 因此,我需要自己构建一个简单的Java程序。基本步骤应该是:定义两个整数变量,计算它们的和,然后输出结果。可能需要考虑用户输入的情况,比如使用Scanner类来读取用户输入的两个数,然后相加。但如果是入门,可能先从固定值的例子开始,再扩展成用户输入的版本。 先给出一个固定值的示例,这样代码更简洁,适合新手理解。然后,再提供一个带用户输入的版本,这样用户可以看到如何动态获取输入。需要注意的是,处理用户输入时要处理可能的异常,但入门可能不需要异常处理,保持简单。 所以,代码结构大致如下: 1. 固定值版本: ```java public class SumExample { public static void main(String[] args) { int a = 5; int b = 3; int sum = a + b; System.out.println("两数之和为:" + sum); } } ``` 2. 用户输入版本: ```java import java.util.Scanner; public class SumWithInput { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("请输入第一个整数:"); int num1 = scanner.nextInt(); System.out.print("请输入第二个整数:"); int num2 = scanner.nextInt(); int sum = num1 + num2; System.out.println("两数之和为:" + sum); scanner.close(); } } ``` 需要确保代码正确,语法无误。比如,Scanner类的导入,关闭scanner等。不过,对于入门者来说,关闭scanner可能不是必须的,但加上更好。 另外,可能需要解释代码的结构,比如类名、main方法的作用,变量声明和加法操作。但用户只要代码示例,可能不需要详细解释,不过提供简要说明会更好。 还需要检查是否有相关的问题可以生成,比如如何处理非整数输入,或者多个数的和,或者使用其他方法如函数来计算和。这些可以作为相关问题,帮助用户进一步学习。</think>### Java实现两个整数之和的示例代码 #### 基础版本(固定值计算) ```java public class BasicSum { public static void main(String[] args) { int num1 = 10; // 声明第一个整数 int num2 = 20; // 声明第二个整数 int sum = num1 + num2; // 和计算 System.out.println("两数之和:" + sum); // 输出结果 } } ``` *代码说明*:直接通过变量赋值计算两数之和,时间复杂度为$O(1)$,空间复杂度为$O(1)$[^3]。 #### 进阶版本(用户输入交互) ```java import java.util.Scanner; public class InteractiveSum { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("输入第一个整数:"); int a = scanner.nextInt(); System.out.print("输入第二个整数:"); int b = scanner.nextInt(); System.out.println("计算结果:" + (a + b)); scanner.close(); // 关闭资源 } } ``` *代码说明*:通过`Scanner`类实现控制台输入交互,注意输入值需为整数类型[^1]。 #### 函数封装版本 ```java public class SumFunction { public static int add(int x, int y) { return x + y; // 函数式实现 } public static void main(String[] args) { System.out.println("5+7=" + add(5,7)); } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值