需求:
第一行是这样的 :1
第二行是这样的 :2 3
第三行是这样的 :4 5 6
第四行是这样的 :7 8 9 10
....
求编程?
其实这个编程不能,最主要的就是找出规律。经验证,每一行的最后一个数字符合:(n*(n+1))/2。
所以编程如下:假设n=9我要求出前九行的排列
public static void main(String[] args)
{
int n = 9;
int maxNum = (n * (n + 1)) / 2;
int a = 1;
for(int i = 1; i <= maxNum; i++)
{
System.out.print(i + " ");
if(i == a * (a + 1) / 2)
{
a++;
System.out.println("");
}
}
}
回文编程:
public static void main(String[] args)
{
int num = 1234321;
int[] nums = new int[]{1, 2, 3, 4, 3, 2, 1};
int size = nums.length;
for(int i = 0; i < size / 2; i++)
{
if(nums[i] != nums[size - i - 1])
{
System.out.println("不是回文");
return;
}
}
// String str = "abcdcba";
// String s1 = str.substring(0, (str.length() - 1) / 2);
// String s2 = str.substring((str.length() + 1) / 2, str.length());
// s2 = new StringBuffer(s2).reverse().toString();
// if(s1.equals(s2))
// {
// System.out.println("这是对称的");
// }
// else
// {
// System.out.println("这是非对称的");
// }
}