티스토리 뷰
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 |