![[백준] 10430 - 나머지](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSBZoS%2Fbtsyt0yBg8V%2FIOanMy3k4l8OdgO1TqzVk1%2Fimg.png)
• 문제
• 풀이
필자는 흔히 말하는 수포자이기때문에.. 식에 대한 증명이나 설명은 불가능하다..
하지만 코딩으로는 답을 구할 수 있다.
문제에 나와있는 위 식을 print메서드안에 연산자 우선순위를 주의하며 고대로 넣어주기만 하면된다!
사칙연산에서 우선순위는 () > *,/,% > +,- 순으로 우선순위를 갖는다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A = sc.nextInt();
int B = sc.nextInt();
int C = sc.nextInt();
System.out.println((A+B)%C);
System.out.println((A%C + B%C)%C);
System.out.println((A*B)%C);
System.out.println((A%C) * (B%C)%C);
}
}
int타입의 변수 A,B,C를 Scanner의 nextInt()메서드로 int값을 입력받고 저장한다.
그 후 출력문으로 해당하는 식들의 값을 출력한다.
A = 5, B = 8, C = 4로 입력하였을때 위와 같은 출력결과를 얻음으로써 문제의 식들은 '참'임을 확인할 수 있다.
•마무리
- 사칙연산의 우선순위를 알 수 있었다.
- 필자가 수포자임을 알 수 있었다.
필자는 이과임에도 불구하고 수포자이다.. 사실 수포자뿐만아니라 학창시절 공부자체를 포기하고 살았던 것 같다..
학창시절을 허송세월보낸 것에대해 지금은 뼈저리게 후회하였고 "미래에는 후회할 일이 없이 현재에 열심히 살아야겠다" 라는 마인드셋으로 시간을 보내고있다.
코딩쪽으로 취업을 준비하는 사람들이 코딩할 때 수학이 필요하냐 필요하지 않냐 라는 의문을 많이 품을텐데 필자도 그런 의문을 품었었고 그에 대한 답을 찾기위해 현업 프로그래머의 자서전도 여러권 읽어보고, 유튜브영상도 많이 찾아본 결과 케이스바이케이스라는 결론이 나왔다. 물론 수학적 지식을 통해 알고리즘을 효과적으로 짤 수 있고 효과적으로 짠다는 것은 메모리를 적게 사용한다거나, 시간을 단축시키는 효과를 가져다 줄 수 있다는 것이다.
수학적 지식이 필요한 물리엔진, 우주관련산업에서는 수학이 당연시된다.
프로그래머로써 일하며 수학이 1도 필요하지않다고 할순 없겠지만 "일단 가지고있는 것보다 좋은것은 없다"고 생각한다.
그래서 필자도 집합, 명제 등의 기초적인 수학은 조금씩 배워나가고 있다.
같은 취업준비생으로써 프로그래머를 준비하는 사람들이 수학이라는 벽에 가로막혀 꿈을 포기하지않았으면 하는바램에서 TMI를적어봤다..!!
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 11382 - 꼬마 정민 (1) | 2023.10.14 |
---|---|
[백준] 2588 - 곱셈 (1) | 2023.10.13 |
[백준] 10926 - ??! (1) | 2023.10.13 |
[백준] 10869 - 사칙연산 (0) | 2023.10.13 |
[백준] 1008 - A/B (0) | 2023.10.12 |
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!