-> 3일차에 배운 것 코드로 썼음.
9-6동안 수업 시간 너무 긴거 아닌가 했는데 전혀 아니었고, 타자치다보면 수업끝나있었다.
타자연습 많이 해야겠다.. 여기 치는거도 다 타자로 쳐서 작성해야겠다..
왜이렇게 .이랑 "이런거 오타가 나는지 빨리 촤라라락 멋지게 치고싶다고~!!
복습하자.💪
Test003~Test015
/* ==============================
■■■자바 기본 프로그래밍■■■
- 변수와 자료형
=================================*/
//tab하면 들여써지고 s+tab하면 들여써짐
public class Test003
{
public static void main(String[] args)
{
//변수 선언
int a;
//변수 초기화(변수 a에 10 대입)
a = 10;
//변소 선언 및 초기화(선언과 대입을 한 번에 처리)
int b = 20;
//변수 선언
int c;
//출력문을 통해 확인(테스트)
//System.out.println(c);
//에러 발생(컴파일 에러)
//연산 및 처리
c = a + b;
System.out.println(c);
//결과 : 30
/*----------------------여기부터 오늘시작-----------------------*/
//결과출력
//System.out.println(a b c);
//에러 발생(컴파일 에러)
//※덧셈 연산자(+)
/*피연산자 중 어느 하나라도 문자열 형태의 데이터가 존재한다면
산술연산자로써 기능을 수행하는 것일 아니라 문자열 결합 연산자로써의
기능을 수행하게 된다. */
//테스트
System.out.println(1+2);
//결과 : 3
//테스트
System.out.println("1" + 2);
//결과 : 12
//테스트
System.out.println(a + " " + b + " " + c);
//결과 : 10 20 30
System.out.println("a 의 값은 " +a+" 입니다.");
System.out.println("b 의 값은 2"+b+" 입니다.");
System.out.println("a 와 b 를 더한 결과값 : "+c);
/*
a 의 값은 10 입니다.
b 의 값은 20 입니다.
a 와 b 를 더한 결과값 : 30
+연산자를 사용하는 과정에서 피연산자 중 문자열이 포함되어 있을 경우
문자열 결합 연산자로 활용되며
처리 결과는 문자열의 형태로 반환된다.
*/
System.out.println(1+2);//산술연산자 +
System.out.println("1"+2);//문자연결합연산자+
System.out.println(1+"2");//문자연결합연산자+
System.out.println("1"+"2");//문자연결합연산자+
/* 결과
3
12
12
12
*/
}
}
System.out.printf("%d + %d = %d\n", 10, 20, 30); // \n : 개행
System.out.printf("%d + %d = %d%n", 10, 20, 30); // %n : 개행
System.out.printf("%d 와 %.4f\n", 10, 3.141592);
//결과 : 10 와 3.1416
int a;
a = 10;
System.out.println("a 의 결과 : " + a);
//결과 : a 의 결과 : 10
int a;
a = 10;
System.out.println("a 의 결과 : " + a);
int b = 20;
System.out.println("b 의 결과 : " + b);
short c;
-> 이러면 컴파일 에러남!
why? -> 기본적으로 자료형이 큰 것을 작은 것에 못넣음(int>short) -> 그래서 형 변환을 해야함!!
c = (short)a;
int a;
a = 10;
System.out.println("a 의 결과 : " + a);
int b = 20;
System.out.println("b 의 결과 : " + b);
//명시적인 형 변환(강제 형 변환)
c = (short)a;
//c = (short)a;
//c = a;
//a가 가지고 있는 데이터를 short형으로 형 변환을 수행한 후 변수 c에 대입한다.
// 00000000 00000000 00000000 00001010 -> int 형 변수 a -> 10
// ↓
// ↓형 변환
// ↓
//00000000 00001010 ->이렇게 바뀌는 것
System.out.println("c 의 결과 : " + c);
//long d = 10000000000; //백억 컴파일 에러
long d = 10000000000L;
int e = 030;
System.out.println("e 의 결과 : " + e);
//e 의 결과 : 24
int f = 0xa6;
System.out.println("f 의 결과 : " + f);
// 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15인데 10부터는 표현x니까
// 1 2 3 4 5 6 7 8 9 a b c d e f로 표현됨
//f 의 결과 : 166
//float g = 0.0; //컴파일 에러
float g = 0.0f;
System.out.println("g 의 결과 : " + g);
//결과 : g 의 결과 : 0.0
boolean a = true;
boolean b;
int c = 10, d = 5;
b = c < d
System.out.println("b : " + b);
//결과 : b : false
--------------------------------
b = c > d
System.out.println("b : " + b);
//결과 : b : true
char ch1, ch2, ch3;
int a; // check~!!
ch1 = 'A'; //"A"로 표현하면 안된다!
ch2 = \n;
ch3 = '대';
a = ch1; //-> 에러남
a = (int)ch1;
System.out.println("ch1 : " + ch1);
System.out.println("ch2 : " + ch2);
System.out.println("ch3 : " + ch3);
System.out.println("a : " + a);
/* 결과 값
ch1 : A
ch2 :
ch3 : 대
a : 65
계속하려면 아무 키나 누르십시오 . . .
*/
double a = 1/2;
System.out.println("double a : " + a);
double b = 1/2.0
System.out.println("double b : " + b);
/*실행값
double a : 0.0
double a : 0.5
*/
Q. 원의 넓이와 둘레를 구하는 프로그램을 구현하시오.
int r = 10;
final double PI = 3.141592; //final 키워드 check~!!
double area, length;
area = r * r * PI;
length = r * 2 * pI;
Sytem.out.println("넓이 : " + area);
System.out.println("둘레 : " + length);
/* 결과
원의 넓이 = 314.1592
원의 둘레 = 62.83184
계속하려면 아무 키나 누르십시오 . . .
*/
//자바에 키보드를 연결하는 부분
//키보드는 각각의 바이트 스트림으로 입력됨
//키보드를 통해 눌려오는 특정 입력값을 가져오는 것이 System.in
//문자를 읽어오는 장치(바이트를 입력해서 문자로 변환(키보드가 넘겨주는 키값을)) 우측부터 읽기
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
InputStreamReader isr = new InputstreamReader(System.in);
Buffered br = new BufferedReader(isr)
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Test011
{
public static void main(String[] args) throws IOException //입출력 문제가 발행하면 조치를 취하는(throws 던져) 명령어
{
//BufferedReader 인스턴스 생성
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int r;
final double PI = 3.14;
double a, b;
String name;
System.out.print("이름을 입력하세요 : "); //check~!! print사용 println 은 이름쓰기도 전에 띄어쓰기됨!!!
name = br.readLine(); //String 기본값이기 때문에 형변환 안해도됨!
System.out.println("원의 반지름 입력 : ");
r = Integer.parseInt(br.readLine()); //형변환!!
a = r * r * PI;
b = r * 2 * PI;
//println 과 printf 비교
System.out.println(">> 넓이 :" + a);
System.out.println(">> 둘레 : " + b);
System.out.printf(">> 넓이 : %.2f\n", a);
System.out.printf(">> 둘레 : %.2f\n", b);
}
}
/*결과 값
이름을 입력하세요 : 정효진
원의 반지름 입력 : 25
>> 넓이 : 1962.5
>> 둘레 : 157.0
>> 넓이 : 1962.50
>> 둘레 : 157.00
계속하려면 아무 키나 누르십시오 . . .
*/
Q. 삼각형의 밑변의 길이와 높이를 사용자로부터 입력받아 이 삼각형의 넓이를 구하는 프로그램을 구현한다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
//import java.lang.*;
public class Test012
{
public static void main(String[] args)
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int bottmLength, height;
double area;
System.out.println("■ 삼각형의 넓이 구하기 ■");
System.out.println("- 상각혐의 밑변 입력 : ");
bottomLength = Integer.parseInt(br.readLine());
System.out.println("- 삼각형의 높이 입력 : ")
height = Integer.parseInt(br.readLine());
area = bottomLength * height / 2.0 //area가 실수 기반이니까 2.0으로 입력해야함!
System.out.println(); // 매개변수 없음 -> 개행
// System.out.print(); ->매개변수 없음 -> 에러
System.out.printf(">> 밑변이 %d, 높이가 %d인 삼각형의 넓이 : %.2f\n", bottomLength, height, area);
}
}
/*결과 값
■ 삼각형의 넓이 구하기 ■
- 상각혐의 밑변 입력 : 5
- 삼각형의 높이 입력 : 3
>> 밑변이 5, 높이가 3인 삼각형의 넓이 : 7.50
계속하려면 아무 키나 누르십시오 . . .
*/
String strName;
int nKor, nEng, nMat;
int nTot;
// 사용자로부터 이름, 국어점수, 영어점수, 수학점수 를 입력받아
// 이름과 총점을 출력하는 프로그램을 구현한다.
// 실행 예)
// 이름을 입력하세요 : 정효진
// 국어 점수 입력 : 90
// 영어 점수 입력 : 80
// 수학 점수 입력 : 70
// ====[결과]====
// 이름 : 정효진
// 총점 : 240
// 계속하려면 아무 키나 누르세요...
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
String strName;
int nKor, nEng, nMat;
int nTot;
String strTemp;
System.out.print("이름을 입력하세요 : ");
strName = br.readLine();
System.out.print("국어 점수 입력 : ");
strTemp = br.readLine();
nKor = Integer.parseInt(strTemp);
System.out.print("영어 점수 입력 : ");
strTemp = br.readLine();
nEng = Integer.parseInt(strTemp);
System.out.print("수학 점수 입력 : ");
strTemp = br.readLine();
nMat = Interger.parseInt(strTemp);
nTot = nKor + nEng + nMat;
System.out.println("\n====[결과]====");
System.out.printf("이름 : %s\n", strName);
System.out.printf("총점 : %d\n", nTot);
/* 결과 값
이름을 입력하세요 : 정효진
국어 점수 입력 : 90
영어 점수 입력 : 80
수학 점수 입력 : 70
====[결과]====
이름 : 정효진
총점 : 240
계속하려면 아무 키나 누르십시오 . . .
*/