이 코드를 작성했으며 예상대로 출력되지 않습니다. 이 함수는 음수를 재귀 적으로 반환합니다. 그러나 그것이되어야하는 것을 되돌려주지는 않습니다.네거티브를 계산하는 방법은 무엇입니까?
size_t recursive_x(stack<int> mystack){
int count=0;
if(!mystack.empty()){
if(mystack.top()<0){
count+=1;
}
mystack.pop();
count+=recursive_x(mystack);
}cout<<count<<endl;
return count;
}
int main(){
stack<int> mystack;
mystack.push(9);
mystack.push(-2);
mystack.push(-2);
mystack.push(1);
mystack.push(-3);
mystack.push(-1);
mystack.push(99);
mystack.push(-1);
mystack.push(1);
mystack.push(1);
recursive_x(mystack);
}
출력은 5해야하지만이 같은오고있다 :
출력 : 함수를 호출 할 가정
0
0
1
2
2
3
4
4
5
5
5
당신은 심지어 함수를 호출하지 않습니다. – juanchopanza
죄송합니다. 여기에 작성하지 않았습니다. – user4032883
다음을 읽어보십시오 : http://sscce.org/ 그리고 질문을 업데이트하십시오. 제목을 좀 더 기술적 인 것으로 바꾸는 것도 좋습니다. 당신이 가진 것은이 사이트의 거의 모든 질문을 기술 할 수 있습니다. –