티스토리 뷰

Programing/Java

Java1 - 08. If 제어문

HNNN 2017. 4. 18. 23:29




  1. 제어문 :  control statement


 -->동적으로 소스를 처리해주는 기능을 함


 ->소스(문장)를 반복적으로 실행하거나,
 ->여러 갈래로 분기 시키는 것
 

※ 단락표시
  어디서부터~ 어디까지인가?


  1. 들여쓰기
  2. {  }  블럭표시(영역표시)


 2. 종류


     1) 조건문
      (1) if  (만약 ~~ 라면)
      (2) if else

      (3) if else 여러개 
      (4) switch


     2) 반복문
      (1) for
      (2) while
      (3) do~while


     3) 기타 제어문
      (1) break
      (2) continue
      (3) return






1. if 제어문



ex) 10이 3보다 작다면 if(논리값)에 따라서

--> if문의 내용을 수행한다

--> if문의 내용{}을 건너 뛴다


--> 논리값 : true 안녕 문구를 볼수있다 
     논리값 : false가 되면 {}을 그냥 지나간다



if(조건문){ 

   
   }
   
   if(논리값){
    syso("안녕");



   }



   if(논리값)
    syso("어서와");


  -->한줄밖에 없으므로 {}을 할 필요는 없다 
      ( 될수 있으면 {}표시를 하는게 낫다)
    
    syso("if 문에 포함안됨") ;
    


    
   if(논리값){


    syso("한줄");
    syso("두줄");
    
   }
   



#실습 1.


package ifex;


import java.util.Scanner;


public class IfTest {


 public static void main(String[] args) {
  
   //정수 2개 입력받고
  //둘중에 큰값을 출력하자
  //입력 --- 처리 --- 출력
  
  
      Scanner sc=new Scanner(System.in);
      System.out.print("정수 1 입력:");
      int num1 = sc.nextInt();
  
      System.out.print("정수 2 입력:");
      int num2 =sc.nextInt();
  
      //만약 num1이 크면
  
      if(num1>num2){
   
       System.out.println(num1+"이더 큽니다");
   
   
      }
  
      //만약 num2가 크다면 
       if (num1<num2){
       System.out.println(num2+"이더 큽니다");
      }
     

     }



#실습 2.


package ifex;


import javax.swing.JOptionPane;


public class IfTest2 {


   public static void main(String[] args) {


  //정수 1개를 입력받고 
  십진수 숫자인지 판별해 보자 
  0~9까지 정수값 0이상이니? 정수값 9이하니?
       A      &&   B
  만약 A조건도 참이고 B조건도 참이면 
  그 수는 0~9까지의 십진수 숫지일 것이다
  

 //정수입력 받음
  int num=0;
  num =Integer.parseInt(JOptionPane.showInputDialog("정수입력"));
  

  //0<=num<=9
  if(0<=num && num<=9){
   
   System.out.println(num+"은 십진수 숫자입니다");
   
  }
  
  //그렇지 않으면 num은 십진수 숫자가 아니군요 ~수군요
  //num이 0보다 작다 또는 9보다 크다


  if(num<0 || 9<num){
 
   System.out.println(num+"은 십진수 숫자가 아니군요 ");
   
   
   
  }


다른방법
  [if(!(0<=num && num<=9)){
   
   System.out.println(num+"은 십진수 숫자가 아니군요");
   
   
   
  }]
  
  

 }



#실습 3.


package ifex;


import javax.swing.JOptionPane;


public class IfTest3 {


       public static void main(String[] args) {


  //두개의 정수를 입력받는다
  //사칙연산 결과를 다 보여주자
  
  int num1=Integer.parseInt(JOptionPane.showInputDialog("정수 1입력"));
  int num2=Integer.parseInt(JOptionPane.showInputDialog("정수2 입력"));
    
  
  System.out.println("1.덧셈>>" +num1+"+"+num2+"="+(num1+num2));
  System.out.println("2.뺄셈>>"+num1+"-"+num2+"="+(num1-num2));
  System.out.println("3.곱셈>>"+num1+"*"+num2+"="+(num1*num2));
  
  //0을 넣으면 에러가 남 (0으로 나눌수가 없음)
  
  //만약 num2가 0이 아니라면 


  if(num2 != 0){
   System.out.println("4.나눗셈>>"+num1+"/"+num2+"="+(num1/num2));
  }


  //만약 num2 가 0이라면 


  if(num2==0){
   System.out.println("나눌수없다");
  }

 }

}



#실습 4.

--> '문자'


package ifex;

import javax.swing.JOptionPane;


public class IfTest4 {

 public static void main(String[] args) {
   
  //소문자니?
  //대문자니?
  //대소문자가 아니니?
  
  //입력
  //처리
  //출력
  
  
  char al=JOptionPane.showInputDialog("영문입력").charAt(0);
  

  //if(al이 'A'와 같거나 크고  AL이 'Z'보다 작거나 같으면 ){
  if('A'<=al && al<='Z'){
    System.out.println(al+"대문자 !!! 소문자로 바꾸면--> "+(char)(al+32));

   //대문자에서 소문자로 바꿀려면 +32


    //소문자에서 대문자로 바꿀려면 작은값으로 -32
  }
  if('a'<=al && al<='z'){
   System.out.println(al+" 소문자 !!! 대문자로 바꾸면 -->"+(char)(al-32));
   
  }

 

  그게아니라면 (작성/미완성 과제)

  if
  
 }




2.ifelse 제어문


 -->둘중에 하나만 실행  

 참영역?  거짓영역?
  (양자택일 문)
 


 if(논리값){
   --> 참일때
 
 }else{  

  --> 그렇지않을때 / 거짓일 때


 }



#실습1.


package ifelseex;

import javax.swing.JOptionPane;

public class IfElseTest {

 public static void main(String[] args) {


  // 두개의 정수를 입력받는다.
  // 사칙연산 결과를 다 보여주자!


  int num1 = Integer.parseInt(JOptionPane.showInputDialog("정수 입력"));
  int num2 = Integer.parseInt(JOptionPane.showInputDialog("정수 입력"));
  
  
  
  System.out.println("1. 덧셈>>" + num1 + "+" + num2 + "=" + (num1 + num2));
  System.out.println("2. 뺄셈>>" + num1 + "-" + num2 + "=" + (num1 - num2));
  System.out.println("3. 곱셈>>" + num1 + "*" + num2 + "=" + (num1 * num2));


  // 만약 num2가 0이 아니라면
  if (num2 == 0) {
   System.out.println("나눌수 없어요");
  }else{
   System.out.println("4. 나눗셈>>" + num1 + "/" + num2 + "=" + (num1 / num2));
  }


 }

}



--> if문 다음에 else를 바로 실행시킴

--> if문으로만 사용해도 실행가능

(cpu에 반복확인 작업을 거쳐야함)





※  여러개 중에 하나만 실행한다.
   다중 택일 (메뉴판 구성)


-->else if 어느 단락이든 참이 실행되면 if문을 빠져나감



 
 if(논리값){
 
 }else if(논리값){  


 
 }else if(논리값){  




 }else if(논리값){  



 
< 무한대로 가능 >
 
 }else if(논리값){
 
 }




#실습2.



package ifelseex;


import javax.swing.JOptionPane;


public class IfElseTest2 {

 public static void main(String[] args) {


  int num = Integer.parseInt(JOptionPane.showInputDialog("점수 입력"));
 
  if(num == 10){
   System.out.println(10+"점이군요");
  
  }else if(num==11){
   System.out.println(11+"점이군요");
  
  }else if(num==12){
   System.out.println(12+"점이군요");
  
  }else if(num==13){
   System.out.println(13+"점이군요");
   
  }
  
  
  
  
 }

}


--> 11입력시 10을 통과 하고 11에서 참이 성립

if문 빠져나옴



'Programing > Java' 카테고리의 다른 글

Java1 - 10. Switch  (0) 2017.04.21
Java1 - 09. ifelse 제어문  (0) 2017.04.20
Java1 - 07. 연산자 2  (0) 2017.04.17
Java1 - 06. 연산자 1(operator)  (0) 2017.04.14
Java1 - 05. Scanner 활용/ Dialoginput  (0) 2017.04.13
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함