/**
 * 利用do~while循环计算1+2+......+100
 */
public class Example5_2{
 public static void main(String[] agrs){
  int counter=1;
  int sum=0;
  do{
   sum=sum+counter;
  }
  while ((++counter)<=100); //先执行,后判断
  System.out.println("1+2+......+100="+sum);
 }
}

/**
 * 比较while和do~while的区别
 */
public class Example5_3{
 public static void main(String[] agrs){ 
  boolean flag=false; //定义执行标志

  while(flag){
   System.out.println("in while loop");
  }

  do{
   System.out.println("in do~while loop");
  }while(flag);
 }
}



/**
 * 利用for循环计算100+99+......+1
 */
public class Example5_4{
 public static void main(String[] agrs){ 
  int sum=0;
  for(int counter=100;counter>=1;--counter){
   sum+=counter;
  }
  System.out.println("100+99+......+1="+sum);
 }
}


/**
 * 初始化计数器
 */
public class Example5_5{
 public static void main(String[] agrs){ 
  int sum=0;
  int counter=100; //在for循环体外部初始化计数器
  for(;counter>=1;--counter){
   sum+=counter;
  }
  System.out.println("1+2+......+100="+sum);
 }
}
/**
 * 修改计数器以控制循环次数
 */
public class Example5_6{
 public static void main(String[] agrs){ 
  int sum=0;
  int counter=100; //在外部初始化计数器
  for(;counter>=1;){
   sum+=counter--; //在循环体中修改计数器
  }
  System.out.println("1+2+......+100="+sum);
 }
}


/**
 * 判断用户输入的数字是否为素数
 */
import java.io.*;
public class Example5_7{
 public static void main(String[] agrs)throws Exception{ 
  int numeric=Integer.parseInt(
   new BufferedReader(new InputStreamReader(System.in)).readLine());
  int divisor;
  for(divisor=2;divisor<=numeric;++divisor){
   //如果能被2~numeric之间的数字整除,则跳出循环
   if(numeric%divisor==0){
    break;
   }
  }
  //如果只能被本身整除,则判定为素数
  if(numeric==divisor){
   System.out.println(numeric+"是素数");
  }else{
   System.out.println(numeric+"不是素数");
  }
 }
}


/**
 * 统计1~30之间不能被3整除的数的个数
 */
public class Example5_8{
 public static void main(String[] agrs){ 
  int count=0; //定义计数变量
  System.out.println("统计开始");
  for(int dividend=1;dividend<=30;++dividend){
   //如果能被3整除,则立即结束本次循环
   if(dividend%3==0){
    continue; 
   }
   //将计数变量加1,并输出当前不能被2整除的数字
   ++count;
   System.out.print(dividend+"\t");
  }
  System.out.println("一共有"+count+"个数字"); 
 }
}


/**
 * 打印图形
 */
public class Example5_9{
 public static void main(String[] agrs){
  //外循环控制行
  for(int rowNum=1;rowNum<=9;++rowNum){
   //外循环控制列
   for(int lineNum=1;lineNum<=rowNum;++lineNum){
    System.out.print(lineNum+"\t");
   }
   //输出回车
   System.out.println();
  }
 }
}