전체 글 19

Java 응용 (4. 숫자 위치 맞추기)

1에서 9까지 난수 3개를 발생하고 (중복허용안됨) 사용자로부터 1에서 9사이의 정수 3개를 입력 받는다. 같은 위치에 같은 숫자면 PASS, 위치는 다르지만 숫자가 같으면 FAIL 일 때 PASS 와 FAIL의 총 카운트를 출력하시오 ex) 컴퓨터의 난수가 1, 3, 5 라면 case 1 : 사용자의 입력이 1 5 9 라면 1 PASS | 1 FAIL 출력 case 2 : 사용자의 입력이 3 5 9 라면 0 PASS | 2 FAIL 출력 [코딩순서] 1. 난수 3개 발생 2. 중복 제거 3. 사용자 입력 4. PASS, FAIL 로직 같은 포지션이면 PASS com[i] == user[i] 그 외 FAIL com[1] = user[2] Code import java.util.Scanner; public..

Java 응용 2024.03.06

Java 응용 (3. 로또 번호 추첨하기)

로또 번호 6개를 출력해보자 1. 범위는 1 ~ 45 까지 랜덤으로 번호를 생성 2. 생성된 번호를 배열에 저장 3. 중복 저장이 되지 않도록 한다. 4. 배열에 저장된 6개의 번호를 출력 첫 번째 방법 public class LottoRandom { public static void main(String[] args) { int[] lotto = new int[6]; for(int i = 0; i < 6; i++){ var randNum = (int)(Math.random()*45) + 1; var checkFlag = false; for(int j = 0; j < 6; j++){ if(lotto[j]==randNum){ checkFlag = true; i--; break; } } if(!checkFl..

Java 응용 2024.03.05

Java 응용 (2. 타자 연습 게임)

타자 연습 게임을 만들어보자 3개의 문장을 배열에 저장하고, 각 문장을 보여주고 사용자가 해당 문장을 입력하고 각 문장별 정확도와 타자시간을 출력해보자 정확도 = (맞춘 글자수 / 총 글자수) * 100 1. 배열에다가 문장을 추가 2. 사전에 저장된 문장을 하나씩 출력한다. 3. 출력된 문장과 같은 사용자의 입력을 받는다. 4. 입력 받은 문장과 배열에 저장된 문장을 검증 public class PracticeGame { public static void main(String[] args) { String[] sentences = new String[3]; sentences[0] = "안녕하세요"; sentences[1] = "나는 누구 입니다"; sentences[2] = "안녕히 가세요"; Syst..

Java 응용 2024.03.04

Java 응용 (1. 가위바위보 게임)

가위 (1), 바위 (2), 보 (3)게임을 만들어보자 게임 후 전적표시 (승리, 무승부, 패배) 게임 후 사용자로부터 한 게임 더 혹은 종료메뉴를 보여주고 한 게임 더를 선택시 전적이 계속 누적되어야함 1~3까지 랜덤으로 숫자하나를 생성하고, 사용자로 부터 숫자하나를 입력 받아 게임을 진행 import java.util.Random; import java.util.Scanner; public class RockScissorPaper { public static void main(String[] args) { Random random = new Random(); Scanner sc = new Scanner(System.in); while (true) { var target = random.nextInt(..

Java 응용 2024.03.04

Java 기초 (3. Switch문, While문)

지식에 대한 투자는 최고의 보상을 가져다 줄 것이다. - 벤자민 프랭클린 Switch if문과 비슷하지만 좀 더 일정한 형식이 있는 조건 판단문 // 입력변수에 올 수 있는 값은 문자, 숫자, enum type switch (입력변수){ case (입력값): ... break; case (입력값): ... break; default: ... } ======================================================= enum GENDER{ MALE, FEMALE, } public class EnhancedSwitch { public static void main(String[] args) { GENDER gender = GENDER.FEMALE; String result = s..

Java 기초 2024.02.29

Java 기초 (2. 형변환과 연산자, 조건문)

성공은 우연이 아니다. 노력, 인내, 배움, 공부, 희생, 그리고 무엇보다 자신이 하고 있는 일에 대한 사랑, 하는 법을 배우는 것이다. 형변환 서로 다른 타입간에 연산을 수행 할 경우 수행전에 타입을 맞추어 주는 행위 → 하나의 자료형으로 통일 묵시적 형변환 → 컴파일러가 수행 작은 타입에서 큰 타입 갈 때 byte b = 10; int i = b; 명시적 형변환 → 개발자가 수행 큰타입에서 작은 타입으로 int j = 12345; short s = (short)j; public class TypeTest { public static void main(String[] args) { int intVal = 10; double doubleVal = intVal; System.out.println(doubl..

Java 기초 2024.02.28

Java 기초 (1. 메모리와 데이터 타입)

현재 Java 공부 중 입니다...! main() 메소드 → JRE에서 ClassLoader라는 모듈이 main함수를 찾습니다. 하나의 자바 애플리케이션은 반드시 하나의 main() 함수를 가지는 클래스가 존재해야 한다. public static void main(String[] args) { statements ... } 자바 클래스 파일 (*.java)에 public class가 존재하면 소스 파일 이름은 반드시 해당 public class의 이름과 같아야 합니다 → public class 는 자바 클래스 파이마다 단 한개만 가질 수 있다. 메모리 Method 영역, Stack영역, Heap영역 Method 영역 : 프로그램이 종료될 때 까지 메모리를 차지한다. (static 변수, static 함수..

Java 기초 2024.02.27

인스타그램 해시태그 웹 크롤링

Instagram Post Hashtag Web Crawling 학교에서 파이썬을 배우는 과정 중 웹 크롤링에 대해서 배웠는데 배운걸 써먹어보면서 만들어본 코드를 간단하게 작성해 봅니다. 아래 코드는 인스타그램의 게시물에 있는 해시태그를 크롤링하는 코드입니다. 설명을 위해서 코드를 잘라 놓았는데 한번에 합쳐서 실행이 가능합니다. 라이브러리 불러오기 : time, pandas: 시간 지연, 데이터의 데이터 프레임화를 위한 필수 라이브러리를 불러옵니다. selenium.webdriver: 웹 자동화를 위한 Selenium WebDriver를 불러옵니다. BeautifulSoup: HTML 파싱을 위해 BeautifulSoup을 불러옵니다. import time import pandas as pd from s..

Python 2024.02.26

Java 개론

프로그램은 set of instruction Q. 프로그램이 실행된다는 의미 프로그램, 프로그래밍 → 컴퓨터가 일을 수행하도록 프로그래밍 언어로 명령어를 만드는 것 프로그래밍을 통해서 프로그램이 실행된다 → Memory에 탑재된다 프로그램 실행과정 fetch decoding excution write back 컴파일이란? 텍스트로 작성한 프로그램을 시스템이 이해할 수 있는 기계어(byte code:0,1)로 변환하는 과정 보통 컴파일 과정과 라이브러리 링크 과정을 묶어서 수행하는 것을 의미 compile을 하기위해서는 compiler가 필요 ex) Linux : gcc int i = 10 String str = "Kim" Java에서 Compiler JVM (Java Virtual Machine) → W..

Java 기초 2024.02.26