이 사이트에서 권장하는대로 "C++ Primer 5th Edition"을 사용할 것입니다. For 루프와 While 루프를 거치면서 거의 동일하다는 결론을 내 렸습니다. 적어도 그것이 내가 수집 한 것입니다. 나는 "For 루프는 얼마나 많은 시간을 반복하는지 알고있을 때 for while 루프는 조건이 충족 될 때까지 반복 할 때를위한 것"이라고 말할 때 가장 잘 설명한다고 생각합니다. 그러나 본질적으로 컴파일러는이 둘을 구별하지 않으며 서로 교환 할 수 있습니다.While 루프를 For 루프로 쓰는 방법?
<iostream>
int main()
{
int sum = 0, value = 0;
// read until end-of-file, calculating a running total of all values read
while (std::cin >> value) {
sum += value; // equivalent to sum = sum + value
std::cout << "Sum is: " << sum << std::endl;
return 0;
}
}
첨부 운동 의 합을 출력하는 프로그램의 자신의 버전을 쓰기 "로 말했다 :
이 책은 (심지어 끝까지 그것을 설명을 작동하지 않는)이 코드를 발표 cin에서 읽은 정수 세트. " 나는 그들이 For 루프를 사용하기를 원한다고 가정하고있다. 그래서 그 일을 시도했습니다. 나는 힘든 시간을 보내고있다.
"The For 루프는 initstatement, condition 및 expression으로 구성되어 있습니다. while 루프에서"std :: cin >> value "는 내 조건이고 표현이 없었습니다. 나는 모두가 initstatement 및 조건의 경우 루프를 사용하는 가정?
#include <iostream>
int main()
{
int sum = 0;
for (int value = 0; std::cin >> value; "EXPRESSION GOES HERE")
sum += value;
std::cout << "The sum is: " << sum << std::endl;
return system("pause");
}
'for'표현의 * 일부는 비워 둘 수 있습니다. –
사이드 노트 : 연습은 * 반복 횟수 *를 알고있을 때 사용하는 루프에 대한 것이지만 특정 조건에서 * 중단 할 위치를 선호합니다. –
@Grijesh : 아니오, for-loop는 모든 루프에서 필요한 "초기화", "조건"및 "업데이트"단계가있는 곳입니다. 예 : 연결된 목록은'for (T * p = head; p; p = p-> next) ... '로 반복 될 수 있습니다 - 어떤 숫자로 몇 개가되는지를 알지 못합니다. . 숫자를 나누기 위해 숫자를 나누는 것은'for (int x = n; x; x/= 10) ...'등으로 할 수 있습니다. –