inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

문제로 배우는 C언어

최대공약수

20번 소수 판별하기에서 질문 있습니다.

426

김준범

작성한 질문수 3

0

3:14부터 설명하시는 내용에 대해서 질문 있습니다.

 

다른 부분은 예외로 치고 반복문에서만 봤을 때,

반복문이 최대한 조금 돌아가게 만드는 게 효율성이 높고 좋은 코드라고 볼 수 있는건가요??

 

그런 의미에서 21번 최대공약수 문제에서

for (i = 1; i <= a && i <= b; i++) {

if (a % i == 0 && b % i == 0) max = i;

}

printf("%d", max);

이렇게 작성하였는데 코드를 최대한 간결하게 작성하는 것에 중점을 두었습니다. 그런데 의문인 점이

a, b 중 작은 값이 30이라면 반복문이 무조건 30번 돌아가기 때문에 선생님께서 작성하신 코드에 비해 비효율적이고 안좋은 코드라고 볼 수 있을까요?

그렇다면 앞으로 반복문이 들어가는 코드를 작성 할 때 반복횟수를 고려하면서 작성하는 게 좋은 습관을 만드는 길인걸까요? 아니면 이렇게까지 신경 쓸 필요는 없나요? 궁금합니다!

c

답변 1

1

김태원

안녕하세요^^

네. 최대한 반복횟수를 줄이기위한 아이디어를 생각해내는 훈련을 하시면 좋습니다. 그러면서 코드도 간결하면 좋겠습니다.

0

김준범

답변 감사합니다. 좋은 하루 되십쇼!

음료수 자판기 출력이 이상하게 나옵니다

0

145

2

i 값 초기화 질문

0

73

2

recipe for targe 'AA.exe' failed

0

65

1

30과 10의 xor

0

196

1

커리큘럼 문의 드립니다

0

234

1

for문에서 sum 관련 질문

0

182

1

이렇게 풀어도 맞는걸까요?

0

257

2

이렇게 풀어도 맞는 풀이일까요?

0

304

1

20페이지 홀,짝,제로 문제에서 이 코드로 짜도 괜찮을까요?

0

259

1

24. 최솟값 구하기

0

334

1

질문 있습니다.

0

328

1

배열을 전역변수로 설정하는 이유

1

668

1

41. A를 #으로에서 질문 있습니다.

0

292

1

42번 bus error;;;

0

613

1

정수형 배열에서 배열 크기

0

396

1

38. 자리찾기 커지는 방향으로..

0

305

1

37. 배열의 회전에서 ...

0

282

1

1차원 배열에서

0

275

1

지수연산에서

0

301

1

7.연필 개수 문제

0

382

1

a=(int)a 에서 왜 괄호를 붙이나요 a=int a 는 왜안되나요

0

847

1

섹션 6. 소수

0

324

1

왜 2중for문을 두개 쓴건가요?

0

247

1

일곱난쟁이. 1차배열 질문

0

270

1