![](https://csdnimg.cn/release/download_crawler_static/3452522/bg4.jpg)
String[] arrStr=new String[arrChar.length];
for (int i=0;i<arrChar.length ;i++ )
{
arrStr[i]=String.valueOf(arrChar[i]);
}
for (String i: arrStr )
{
if (i.matches(E1))
{
countH++;
}
if (i.matches(E2))
{
countE++;
}
}
System.out.println("汉字的个数"+countH);
System.out.println("字母的个数"+countE);
}
}
【程序8】 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相
加有键盘控制。
1.程序分析:关键是计算出每一项的值。
import java.io.*;
public class Sumloop {
public static void main(String[] args) throws IOException
{
int s=0;
String output="";
BufferedReader stadin = new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入a的值");
String input =stadin.readLine();
for(int i =1;i<=Integer.parseInt(input);i++)
{
output+=input;
int a=Integer.parseInt(output);
s+=a;
}
System.out.println(s);
}
}
另解:
import java.io.*;
public class Sumloop {
public static void main(String[] args) throws IOException
{
int s=0;
int n;
int t=0;
BufferedReader stadin = new BufferedReader(new InputStreamReader(System.in));
String
input = stadin.readLine();
n=Integer.parseInt(
input);
for(int i=1;i<=n;i++){
t=t*10+n;
s=s+t;
System.out.println(t);
}
System.out.println(s);
}
}
【程序9】 题目:一个数如果恰好等于它的因子之和,这个数就称为 "完数 "。例如6=1+2+3.编程 找出1000以内的所有完数。
public class Wanshu {
public static void main(String[] args)
{
int s;
for(int i=1;i<=1000;i++)
{
s=0;
for(int j=1;j<i;j++)
if(i % j==0)
s=s+j;
if(s==i)
System.out.print(i+" ");
}
System.out.println();