본문 바로가기

분류 전체보기215

입출력 스트림 스트림 입출력- 스트림(Stream): 연속적인 데이터의 흐름 or 데이터를 전송하는 소프트웨어 모듈- 자바에서 입출력 스트림은 응용프로그램과 입출력 장치를 연결- 응용프로그램은 입력 스트림과 연결- 입력 스트림은 키보드 장치를 제어하여 사용자의 키 입력을 받아 응용프로그램에 전달- 응용프로그램은 출력 스트림과 연결, 출력 스트림에 출력- 출력 스트림은 다른 끝에 연결된 출력 장치를 제어하여 출력 완성 >>자바 응용프로그램은 입출력 장치를 직접 제어하는 대신 입출력 스트림 객체와 연결하여 데이터 입출력을 쉽게 실행스트림을 사용하지 않고 자바 응용프로그램이 입출력 장치를 직접 제어했다면, 응용프로그램 작성과 다양한 입출력 장치 사용이 어려웠을 것입출력 스트림의 특징 1. 스트림의 양 끝에는 입출력 장치와 .. 2024. 6. 19.
[명품자바] 6장 오픈챌린지 영문자 히스토그램 만들기 텍스트를 키보드로 입력알파벳이 아닌 문자는 제외하고 영문자 히스토그램으로대문자와 소문자는 모두 같은 것으로 취급세미콜론(;)만 있는 라인을 만나면 입력의 끝으로 간주 키보드로부터 텍스트를 입력받아 하나의 문자열로 리턴하는 코드는 다음 코드를 이용하라고 합니다String readString() { StringBuffer sb=new StringBuffer(); Scanner scanner=new Scanner(System.in); while(true) { String line=scanner.nextLine(); if(line.equals(";")) break; //';'만 있는 라인이면 입력 종료 sb.append(line); //읽은 문자열을 스트링버퍼에.. 2024. 6. 19.
[명품자바] 5장 오픈챌린지 Bear의 Fish 먹기 게임 만들기 Bear와 Fish 객체10행 20열의 격자판에서 각각 정해진 규칙에 의해 이동Bear는 사용자의 키에 의해(wasd) 상하좌우로 한 칸씩 이동fish는 다섯 번 중 세 번은 제자리에 있고 나머지 두 번은 4가지 방향 중 랜덤한 방향으로 한 칸씩 이동Bear가 Fish를 먹으면(Fish의 위치로 이동하면) 종료 각 객체의 이동을 정의하는 move()와 각 객체의 모양을 정의하는 getShape()를 추상 메소드로 가진 다음의 추상 클래스 GameObject를 이용Bear와 Fish는 GameObject를 상속전체적인 게임을 진행하는 Game 클래스와 main() 메소드를 작성public abstract class GameObject { protected int dis.. 2024. 6. 19.
[명품자바] 4장 오픈챌린지 끝말잇기 게임을 만들어보자 "아버지"로 시작n명의 참가자(n을 입력받아야 함)들은 순서대로 자신의 단어를 입력끝말이 틀린 경우 게임을 끝내고 패배한 참가자를 출력main()을 포함하는 WordGameApp 클래스와 각 선수를 나타내는 Player 클래스 작성WordGameApp 객체 하나와 선수 숫자만큼의 Player 객체 생성 WordGameApp 클래스에 생성자, main(), 게임을 진행하는 run() 메소드Player 클래스는 게임 참가자의 이름 필드와 사용자로부터 단어를 입력받는 gewWordFromUser() 메소드, 끝말잇기 성공여부와 게임을 계속하는지 판별하는 checkSuccess() 메소드 Player 클래스import java.util.Scanner;public class Player.. 2024. 6. 19.
[명품자바] 3장 오픈챌린지 숨겨진 카드의 수를 맞추는 게임을 만들어보자 0에서 99까지 임의의 수를 가진 카드를 한 장 숨기고 이 카드의 수를 맞추는 게임숨겨진 수보다 더 낮은 수가 입력되었을 경우 "더 높게" 출력더 높은 수가 입력되었을 경우 "더 낮게" 출력범위를 좁혀가며 수를 맞춤 정답을 찾았을 경우 게임을 반복할지 질문(yes/no)y일 경우 반복, n일 경우 종료 이중 반복문을 사용하라네요난수 생성을 위해 Random 클래스도 사용해야 할 것 같습니다(import java.util.Random)import java.util.Scanner;import java.util.Random;public class CardGame { public static void main(String[] args) { Scanner scanne.. 2024. 6. 19.
[명품자바] 2장 오픈챌린지 가위바위보 게임'철수'와 '영희'의 가위바위보 게임을 만들어보자 먼저 "철수"를 출력하고 "가위", "바위", "보" 중 하나를 문자열로 입력그 다음 "영희"를 출력하고 마찬가지로 입력입력받은 문자열을 비교하여 누가 이겼는지 판별승자를 출력 if-else문을 써 보라고 낸 문제 같아서 그렇게 풀었습니다import java.util.Scanner;public class RockPaperScissorsGame { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("가위바위보 게임입니다. 가위, 바위, 보 중에서 입력하세요"); System.out.print("철수 >> ".. 2024. 6. 19.