//【程序13】 题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,
//请问该数是多少?
//解答:
import java.io.*;
import java.util.*;
public class _13_qiushu {
public static void fenJie(Vector<Integer> m,int n)
{
for(int i=1;i<=Math.sqrt(n);i++)
if(n%i==0)
m.addElement(i);
}
public static void main(String[] args) throws IOException
{
Vector<Integer> pool=new Vector<Integer>();
int m=100;int n=168;int t=0;int flag=0;
fenJie(pool,n-m);
int a=0;int b=0;int N=0;int x=0;
for(int i=0;i<pool.size();i++)
{
x=0;
a=pool.elementAt(i);
b=(n-m)/a;
if((a+b)%2==0)
{
N=(a+b)/2;
x=N*N-n;
}
if(x>0)
{
flag=1;
System.out.println(x);
}
}
if(flag==0)
System.out.println("不存在这样的数字!");
}
}
涂鸦心得:
这个程序没搞明白,学习了一下Vector类。Vector 类提供了实现可增长数组的功能,随着更多元素加入其中,数组变的更大。在删除一些元素之后,数组变小。 经常用到的对向量增,删,插功能:
addElement(Object obj)
把组件加到向量尾部,同时大小加1,向量容量比以前大1
insertElementAt(Object obj, int index)
把组件加到所定索引处,此后的内容向后移动1 个单位
setElementAt(Object obj, int index)
把组件加到所定索引处,此处的内容被代替。
浙公网安备 33010602011771号