2009-02-08 6 views
5

며칠 전에 시험을 보았습니다. 오늘 강사가 시험의 핵심 답변을주었습니다. 질문for 루프를 실행하는 동안 발생하는 작업 수를 계산하는 방법은 무엇입니까?

하나는

for (j = 9; j >= 1; j--) 

결과 작업

의 수를 계산이었다 (20)

사람은 그가 그에서 20 개 작업을 얻는 방법을 설명 할 수 있습니까?

+0

Maya의 반응은 좋았지 만 많은 노력이 들지 않았습니다. 이것은 숙제 포럼이 아닙니다. – duffymo

+0

아니,하지만 난 힘든 도우미 ;-). –

+0

@ spoon16 : 그것은 가장 도움이되지 않는 편집 인 IMHO입니다. 그것은이 사이트에서 제목을 찾기 어렵고 일반적으로 나쁜 제목으로 읽는 것을 어렵게 만듭니다. 질문은 텍스트 본문 전체에서 반복됩니다. 짧은 (!!!) 제목으로 그것을 집어 넣을 필요가 없습니다. –

답변

14

20 동작 :

set j = 9 
check if j(9) >= 1 
set j to 8 
check if j(8) >= 1 
set j to 7 
check if j(7) >= 1 
set j to 6 
check if j(6) >= 1 
set j to 5 
check if j(5) >= 1 
set j to 4 
check if j(4) >= 1 
set j to 3 
check if j(3) >= 1 
set j to 2 
check if j(2) >= 1 
set j to 1 
check if j(1)>=1 
set j to 0 
check if j(0)>=1 

대한 (j = N; J> = 0; j--)

확인, 두 동작 시작 :

  • (j = n)
  • 체크 (j> = 0).

모두 n < 0에서 멈 춥니 다.

N = 0, 당신은이 추가적으로 얻을 경우

  • j--
  • 검사 (J> = 0).

n = 1 인 경우 다른 세트를 얻습니다.

따라서 연산 수는 n0이면 2이고 n> = 0 인 경우 2n + 4입니다.

이러한 사항은 그리 어렵지 않습니다. 컴퓨터처럼 생각하고 상태 (변수 세트)에 대한 모든 변경 사항을주의 깊게 기록해야합니다.

+0

사실, 이것은 매우 설명입니다. 많은 은 당신이이 같은에서 explaine 수 있습니다 고맙습니다 :) – BobbyShaftoe

+0

이 중대하다 (J = N; J> = 0; j--)에 대한 (J = 1; J <10; J ++) –

+0

야 마야 이제는 물고기를 잡는 법을 배웠으므로 아마도 손을 잡을 때입니다. 방법론을 따르고 당신이 얻는 것을보십시오. – duffymo

3

첫 번째 반복에서 j9으로 설정됩니다. ,

  • 먼저 테스트 j >= 1 여부 및
  • j (j--) 감소 : 그 후, 각각의 반복은 기본적으로 같은 두 개의 명령어를 실행한다.

이것은 (9부터 0까지를 포함하여) 9 번 수행됩니다. 마지막 반복에서는 j >= 1인지 여부를 다시 테스트하고 이것이 거짓이므로 루프를 종료합니다. 따라서 우리는 1 + 9 * 2 + 1 = 20 반복을 얻습니다.

0

어떤 가치를 기록하셨습니까? 그냥 궁금해서.

마야, 이제 함께 계산하자 J = 1 9를 할당

for (j = 9; j >= 1; j--) 

하나; 루프의 각 반복에 대한 j의 현재 값과 1의 비교 = 10; 마지막 루프를 제외한 루프의 각 반복에 대해 하나의 감소분 = 9;

1 + 10 + 9 = 20 내 책에.

0

과제 (j = 9)가 1 개 있습니다. "j--"작업은 9 번 실행됩니다. 조건부 검사 "j> = 1"이 10 번 실행됩니다 ("j> = 1"이라는 질문을 반복 할 때마다) 마지막 명령은 실패합니다. 따라서 1 + 9 + 10 = 20이됩니다.

강사가 도움을 줄 수 없다는 뜻이라면 교사는 매우 나쁩니다. 이것은 당신이 얻는 것과하지 않는 질문 중 하나입니다. 강사가 도와야합니다. :)

+0

강사가 "평균"또는 "나쁨"이라고 결정하기 전에 더 많은 상황을 원합니다. – duffymo

+0

글쎄, 그건 절대적인 판단이 아니야. 당신이 논리를 사용한다면 나는 "조건부"를 사용했다. "조건부"는 "그가 매우 도움이되지 않을 정도로 의미가있다면 그는 매우 나쁘다"라고 말합니다. 그냥 기본 논리 101. :) 나는 이것과 같은 많은 profs를보고, 화를 내고있다. 그러나, OP가 잘못되면 아무런 해가 없으며 파울도 없습니다. :) – BobbyShaftoe

관련 문제