2012-12-03 3 views
0

그 사이클에서 한 가지만하고 싶습니다 ... - IF 또는 ELSE .. (그 사실과 거짓 OFC가 아시다시피 ..) 내가 두 개 정보가있는 유형의 학생들과 그룹 1의 첫 번째 학생은 우수한 성적을 얻지 못했고 두 번째 학생은 우수한 성적을 받았습니다. 내 프로그램 인쇄물 : 1) 첫 번째 반복은 다음과 같습니다 : 거짓, 나머지는 거짓말 2 대한상의) 두 번째 루프 : 정보 없음 우수한 성적으로 학생 실수로 사이클을 멈추는 방법

내가 excelle 만 학생들을보고 싶어 ... : 그것은 경우

을하고 난 그래서 그건 사실이야 NT 학년 (내가 BREAK를 사용한다면; 나는 FOR 사이클을 멈출 것이다) 여기 내 코드가있다 :

int gr; 
cout<<"Enter group that you want to check: ";cin>>gr; 
cout<<"Students with excellent grade in group "<<gr<<":\n"; 
    for(i=0;i<n;i++) 
     { 
      if(m[i][2]==gr && m[i][3]>=5.500) 
      { 
       for(j=0;j<4;j++) 
        cout<<setprecision(8)<<m[i][j]<<"\t"; 
      } 
      else 
        cout<<"No students with excellent grade in this group"<<endl; 

     } 

나는 여기에서 같은 문제가있다. 난 (코드 구조체를 기반으로) 그 코드에서 "부울"유형과 방법을 사용할 수 :

int x; 
bool no_info=false; 
p: cout<<"| What personal id you want to search for: ";cin>>x; 

for(int i=0;i<n;i++) 
{ 
    if(pov[i].id==x) 
    { 
    no_info=true; 
    cout<<pov[i].id<<endl; 
    cout<<pov[i].name<<endl; 
    cout<<pov[i].lastname<<endl; 
    cout<<pov[i].department<<endl; 
    cout<<pov[i].salary<<endl; 
    } 
} 
    if(no_info){ 
    cout<<"No information"<<endl;} 
goto p; 

편집!

+0

알다시피, 숙제 태그는 [더 이상 사용되지 않습니다.] (http://meta.stackexchange.com/questions/147100/the-homework-tag-is-now-official-deprecated)입니다. – chris

+0

루프 외부에 배열을 만듭니다. 루프 내부에서 학생이 배열에 저장합니다. 루프가 끝나면 배열에 원하는 모든 학생들이 생겼습니다. – peacemaker

+0

숙제 태그에 대해 유감스럽게 생각하고 평화 주의자는 그것에 대해 생각했지만 ... 다른 것으로 할 수는 없습니까? – Koleto

답변

2

달성하고자하는 것을 이해하기가 어렵습니다. 그러나 나는 당신이 원하는 것은 생각 :

int gr; 
bool no_excellents = true; 
cout<<"Enter group that you want to check: ";cin>>gr; 
cout<<"Students with excellent grade in group "<<gr<<":\n"; 
for(i=0;i<n;i++) 
{ 
    if(m[i][2]==gr && m[i][3]>=5.500) 
    { 
     no_excellents = false; 
     for(j=0;j<4;j++) 
      cout<<setprecision(8)<<m[i][j]<<"\t"; 
    } 
} 

if(no_excellents) 
{ 
    cout<<"No students with excellent grade in this group"<<endl; 
} 

이 당신의 for 루프를 멈추지 않을 것입니다, 오직 우수한 성적을 가지고 학생들을 인쇄합니다. 우수한 성적을 가진 사람이 없다면 프로그램에서 그렇게 말할 것입니다.

+0

네,하지만 그 그룹에 우수한 성적을 가진 학생들이 없다면 저에게 보여주지 않을 겁니다. – Koleto

+0

@ Koleto : 두 가지리스트를 보여주고 싶습니까? 우수한 성적을 가진 사람들과 그렇지 않은 사람들? – dinkelk

+0

@chris 네 말이 맞습니다. 변경 사항. – dinkelk

관련 문제