반응형

6.6> ctrl-z가 입력될 때까지 키보드로부터 영어 문자를 읽고 그 속에 대문자가 몇 개 있는지 판별하는 프로그램을 작성하라


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package SecondHW;
import java.io.*//InputStreamReader 사용을 위한 패키지 import
public class CapitalAlphabet {
    public static void main(String[] args) {
        int count=0;
        InputStreamReader rd = new InputStreamReader(System.in); //키 입력을 문자 정보로 변환하여 리턴하는 클래스
        try{
            while(true){ //무한 반복
                int c=rd.read(); //int 형 변수 c에 키 입력 받는 것 대입
                if(c==-1//c==-1이면, 즉 Ctrl+z가 입력되면
                    break//무한루프 탈출
                if(c>='A'&&c<='Z'//c가 A이상 Z이하면 (실제로는 아스키코드(유니코드의 첫부분은 아스키코드와 같아서)값으로 논리 판단)
                    count++//카운트 증가
                System.out.print((char)c); //c 를 캐릭터 형으로 출력
            }
            System.out.println("대문자는 "+count+"개 입니다."); //count 를 정수형으로 출력
        }
        catch(IOException e){ //입출력 동작 실패시
            System.out.println("입력 오류 발생"); //해당문구 출력
        }
    }
}
 
cs



반응형

'컴퓨터 & 프로그래밍 & 전자공학 > JAVA' 카테고리의 다른 글

겜블링 게임  (0) 2017.06.19
가위바위보  (0) 2017.06.19
메소드 오버라이딩  (0) 2017.06.18
추상 클래스  (0) 2017.06.18
상속 클래스  (0) 2017.06.18
반응형

3.2> 키보드로부터 임의의 문자를 입력 받고 그 문자보다 알파벳 순위가 낮은 모든 문자를 출력하는 프로그램을 작성하라. 예를 들어 ‘e’를 입력 받았으면 그 결과는 다음과 같다.


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
29
30
31
package HW1_JAVA;
import java.io.*// InputStreamReader 를 사용 하기 위해 패키지 import
class Printing_alphabet{  // 클래스 선언
    void print_alpha(int num)  //메소드 선언, argument는 int형 변수 num
    {
        if(num<=97)  //97은 'a'의 아스키 코드 값이다.
            System.out.printf("%c",num); //'a'만 있으면 'a'만 출력
        else
            {for(int i=97;i<=num;(i)++// 'a'의 아스키 코드 값 97
            { //'a'부터 시작해서 어떤 알파벳의 아스키 코드 값으로 i가 증가할 때까지 루프 실행
                System.out.printf("%c ",i); //'a'부터 하나씩 출력
            }
            System.out.println(); //개행문자로 라인을 구분해준다.
            print_alpha(num-1); //recursive function 으로 반복하였습니다.
            }}}
 
public class LowerAlphabet {
    public static void main(String[] args) {
        InputStreamReader rd = new InputStreamReader(System.in); 
        //InputStreamReader 클래스의 오브젝트 생성 및 그것을 가리키는 레퍼런수 변수 rd
        Printing_alphabet p = new Printing_alphabet();
        //Printing_alphabet 클래스의 오브젝트 생성 및 그것을 가리키는 레퍼런스 변수 p
        try{
            System.out.print("알파벳 한 문자를 입력하세요>>"); 
        int a=rd.read(); //인트형 변수 a에 문자르르 하나 읽어 아스키 코드 값으로 넣어줌
        p.print_alpha(a); // print_alpha 메소드 실행
        }
        catch(IOException e){ //입출력 동작 실패 또는 인터럽트시 실행되는 부분
            System.out.println("입력 오류 발생");
        }}}
 
cs



반응형

'컴퓨터 & 프로그래밍 & 전자공학 > JAVA' 카테고리의 다른 글

2차원 배열  (0) 2017.06.18
정수 오름차순 정렬기  (0) 2017.06.18
직사각형 충돌  (0) 2017.06.18
윤년 판별기  (0) 2017.06.18
삼각형 만들기  (0) 2017.06.18

+ Recent posts