jungol > 문제 > Langauge_Corder > 선택제어문 - 자가진단 5~6 자가진단 5 문제 조건 조건 1 : 입력 받은 두 수 둘 다 4.0 이상 -> A출력 조건 2 : 입력 받은 두 수 둘 다 3.0 이상 -> B출력 조건 3 : 위의 조건을 만족하지 않을 시 -> C출력 조건 1은 조건 2에 종속된다! 그러므로 9) if(a >= 3.0 && b >= 3.0) { 10) if(a >= 4.0 && b >= 4.0) { 조건 2에 조건 1을 종속시켰다! 조건 3은 나머지(else) (조건 1의 역) 이므로 조건 3)로 적었다. (조건 1의 역 : 두 실수 중 하나라도 3.0이 아닌) 여기서 조건 2 을 조건 1에 종속시키긴 했으나 B와 A가 동시에 출력되는 오류를 방지하기 위해 goto..
jungol > 문제 > Langauge_Corder > 선택제어문 - 자가진단 1~4 자가진단 1 드디어 if 을 사용한다! if()에서 () 안에는 조건을 넣을 수 있고 조건을 만족하면 if()옆의 코드가 실행되나, 아닐 경우엔 실행되지 않고 그냥 지나친다. 문제 조건 정수를 입력받되 음수 일 경우 minus를 출력 이번 문제는 정수를 입력받되 음수 일 경우 minus를 출력하는 것이기 때문에 if의 조건을 입력받는 (정수 입력받은 수가 0보다 작으면 -> minus을 출력 잘 작동한다! 자가진단 2 문제 조건 문제에선 키와 몸무게를 정수로 입력받고 몸무게+100-키의 값과 몸무게+100-키의 값이 0보다 크면 Obesit..
jungol > 문제 > Langauge_Corder > 디버깅 - 형성평가 3~4 형성평가 3 a = a - 1에서 의 두 번째 a을 구해야 한다. #include int main(void) { int a = 5; a+=10; a = a - 1; ---> 출력해야 하는 값 (두번 째 a) printf("%d\n", 1); return 0; } 즉 우리가 출력하고자 하는 a은 코드 안에서 1 감소가 된 상태로 프로그램이 종료되므로 a을 출력시에 1을 더해주면 그때의 a을 구할 수 있다! 고로 위처럼 작성하면 된다! 형성평가 4 #include 에서 time.h는 c언어에서 시관과 관련된 기능이 있는 라이브러리이다! 조건 1) a = tt.tm_year; 에서의 a 구하기 2) a += tt.tm_mo..
jungol > 문제 > Langauge_Corder > 디버깅 - 형성평가 1~2 자가진단 1 이번에도 정수형을 실수형으로 바꾸면 된다. 11) printf("%.1f", (float)(a+b+c)/3); //세 변수값을 더한 걸 (a+b+c) 한꺼번에 실수형으로(float) 강제형변환 했다. (위의 실행결과를 보면 알 수 있드시, 변수값을 입력 할 때 space로 여백을 주는 것 또는 enter을 치는 것으로 다음 변수를 입력 할 수 있다) 형성평가 2 이번에는 자료형을 바뀌서 소수점을 버림하는 문제입니다. 문제 1 : 입력받은 3개의 실수의 정수부분만을 더한 값을 구하기 문제 2 : 실수의 평균을 먼저 구한 후 소수점 부분을 버림하기 문제 1은 입력받은 3개의 실수의 정수부분만을 더한 값을 구하라고..
jungol > 문제 > Langauge_Corder > 디버깅 - 자가진단 1~2 자가진단 1 이번에는 디버깅 문제다! 디버깅이란 버그를 찾고 해결하는 행위를 의미하며 기본적으론 프로그램을 돌릴 때 한 문장 한 문장씩 실행하는 등 어디에 문제가 발생했는지를 차근차근히 코드를 따가라면서 찾아내는 행동을 뜻한다. 변수의 자료형을 바꿔주고 싶을 땐 변수 옆에 괄호를 친 후 원하는 자료형을 넣어주면 된다. 문제에서의 조건은 1. 두 실수의 곱을 정수형으로 2. 두 실수를 각각 정수형으로 만든 뒤 이들의 곱을 이므로 10) printf("%d", (int)(a*b)); //(int)(a*b) 즉 두 실수의 곱을 구한 다음 자료형 변환을 했다. 11) printf("%d", (int)a*(int)b); //(in..
jungol > 문제 > Langauge_Corder > 연산자 - 형성평가 1~5 형성평가 1 조건 : 변수 4개를 받아서 합계와 평균을 구하기 (단 소수점 이하는 버림) 변수를 4개 초기화 한 뒤 입력을 받고, 합계와 평균을 구했다! (소수점 버림은 %d을 사용했다) 여러번 돌렸을 때의 모습이다. 형성평가 2 조건 : 두 수를 입력받고, 나눈 값과 나머지를 구한다 즉 /, %을 사용한다. 9) a, b, a/b, a%b //나누기와 나머지를 /, %을 통해서 구했다. // ex) 10 35 의 나머지 10%35 = 0×35 + 10 : 나머지는 10으로 나온다 잘 나왔다. 형성평가 3 조건 : 직사각형 넓이 구하기 직사각형 넓이 = 가로 × 세로 변수 a, b을 만들고, 가로는 a 세로는 b에 대입한..
jungol > 문제 > Langauge_Corder > 연산자 - 자가진단 7~8 자가진단 7 &&연산자 || 연산자 && 연산자 (논리곱) 이 연산자는 and의 의미를 가진다. 조건 a and 조건 b일 시 조건 a와 조건 b 둘 다 참으로 성립해야 참이다. 둘 중하나라도 거짓이면 조건 a and 조건 b는 거짓이다. || 연산자 (논리합) 이 연산자는 or의 의미를 가진다. 조건 a or 조건 b 일 시 조건 a 나 조건 b 중 둘 중 아무나 참이면 조건 a or 조건 b는 참이다. 둘 다 거짓일때가 조건 a or 조건 b의 거짓이다. 문제에선 정수를 입력받되 0인 경우 false 0이 아니면 true로 하라 했기에 10) printf("%d", a!=0 && b!=0); //논리곱 11) prin..
jungol > 문제 > Langauge_Corder > 연산자 - 자가진단 5~6 자가진단 5 이번엔 연산자 중에서도 비교연산자를 사용합니다! 비교연산자 == != 비교연산자 == ==는 두 개의 값이 같으면 참(1, true) 두개의 값이 다르면 거짓(0, false)을 비교해주는 연산자이다. 비교연산자 != 반대로 !=는 두 개의 값이 다를 때가 참(1, true) 서로의 값이 같을 때가 거짓(0, false)으로 비교해주는 연산자이다. a와 b 가 참인지를 알려면 == 를 사용하면 10) a==b //서로 같으면 1 다르면 0 a 와 b 가 다른 것이 사실인지 알려면 =! 를 사용하면 11) a=!b //서로 다르면 1 같으면 0 된다. if로 치환하면 이렇게 더 복잡하게 (굳이?) 만들 수 있다..
jungol > 문제 > Langauge_Corder > 연산자 - 자가진단 1~4 자가진단 1 드디어 연산자이다 다다다다다 연산자는 + * / - % == ? 등 여러 가지가 있다. 이번 자가진단 1에서 쓸 연산자는 더하기(+)와 나누기(/)이다. 변수 3개를 입력받고 이것들의 합과 평균을 구하는 문제다. (전에 입력에서 풀었던 것과 매우 비슷하다) 이번에도 소수점은 버림 하여 출력하라고 문제에서 말하고 있기에 (a+b+c)/3의 결과는 %d로 받으면서, 소수점 이하를 버림했다! 소수점 없이 잘 나왔다. 자가진단 2 이번엔 정수형 변수를 두 개 만든 다음 출력하면 된다! 문제에서 b에 10을 나눴을 때의 나머지를 요구하므로 나머지를 구할 수 있는 연산자인 %을 사용했다. 12) printf(%d, b%..
- Total
- Today
- Yesterday
- 스택
- union
- 1835번
- 세그먼트 트리
- 최대공약수
- 정렬
- 누적합
- 1835
- 그리디
- 그래프
- 16120번
- DP
- 6198번
- C++
- 오프라인 쿼리
- 6198
- 누적 합
- 덱
- C언어
- 플로이드
- 백준
- 최소 스패닝 트리
- Krustal
- Mo.s
- 카드
- BFS
- DFS
- java
- 트리
- find
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |