Big looping problem in C - help

Thread Solved

Join Date: Oct 2008
Posts: 48
Reputation: atman is an unknown quantity at this point 
Solved Threads: 0
atman atman is offline Offline
Light Poster

Big looping problem in C - help

 
0
  #1
Nov 3rd, 2008
Hey Guys!
I have a weired one here, it must be a post-test loop, and here is how result has to look like:



Enter the Section Code: 0

Invalid value entered. Must be 1 to 4, please re-enter: 1

Enter the Student's ID: 456789

Enter mark#1: 10

Enter mark#2: -20

Invalid grade entered. Must be 0.0 to 100.0, please re-enter: 20

Enter mark#3: 5.5

Enter mark#4: 5

Enter mark#5: 10

Enter mark#6: 6

Enter mark#7: 7

000456789's total mark is: 63.5


Enter the Student's ID ['0' to quit]: 123654987

Enter mark#1: 1

Enter mark#2: 2

Enter mark#3: 3

Enter mark#4: 4

Enter mark#5: 5

Enter mark#6: 6

Enter mark#7: 7
123654987's total mark is: 28.0


Enter the Student's ID ['0' to quit]: 0

The average for the section is 45.75%


Enter the Section Code [0 to quit]: 5

Invalid value entered. Must be 0 to 4, please re-enter: 2

Enter the Student's ID: 987654

Enter mark#1: 7

Enter mark#2: 6

Enter mark#3: 5

Enter mark#4: 4

Enter mark#5: 3

Enter mark#6: 2

Enter mark#7: 1

000987654's total mark is: 28.0


Enter the Student's ID ['0' to quit]: 0

The average for the section is 28.00%


Enter the Section Code [0 to quit]: 0


The average for the course is 39.83%


i got everything working except looping the main sequence, take a look at my results:


Enter the Section Code:44

Invalid value entered. Must be 1 to 4, please re-enter:1


Enter Student's ID:11

Enter Mark#1:5
Enter Mark#2:5
Enter Mark#3:5
Enter Mark#4:5
Enter Mark#5:5
Enter Mark#6:5
Enter Mark#7:5
000000011's total mark is: 5.0

Enter Student's ID[0 to Quit]:0


Enter the Section Code[0 to quit]:3

Enter Mark#1:

everything works fine if i hit 0 at "Enter the Section Code[0 to quit]:"
but just like the log shows, when i hit anything but 0 it goes to "Enter Mark1:" instead of "Enter Students ID:", i just cant loop it properly.,
here comes my code a part of my main():

  1. section=PreSecCode();
  2. student_id=PreStudentId();
  3.  
  4. do
  5. {
  6. do
  7. {
  8.  
  9. mark=Mark();
  10. PrintIt(student_id, mark);
  11.  
  12. student_id=StudentId();
  13. }while(student_id!=0);
  14.  
  15. section=SecCode();
  16.  
  17. }while(section!=0);


any help would be greatly appreciated!!
chheers
Reply With Quote Quick reply to this message  
Join Date: Aug 2005
Posts: 5,264
Reputation: iamthwee is a splendid one to behold iamthwee is a splendid one to behold iamthwee is a splendid one to behold iamthwee is a splendid one to behold iamthwee is a splendid one to behold iamthwee is a splendid one to behold iamthwee is a splendid one to behold iamthwee is a splendid one to behold 
Solved Threads: 377
Featured Poster
iamthwee's Avatar
iamthwee iamthwee is offline Offline
Posting Expert

Re: Big looping problem in C - help

 
0
  #2
Nov 4th, 2008
Is your program accepting integers as well as strings(letters)?
*Voted best profile in the world*
Reply With Quote Quick reply to this message  
Join Date: Oct 2008
Posts: 48
Reputation: atman is an unknown quantity at this point 
Solved Threads: 0
atman atman is offline Offline
Light Poster

Re: Big looping problem in C - help

 
0
  #3
Nov 4th, 2008
Originally Posted by iamthwee View Post
Is your program accepting integers as well as strings(letters)?
integers only
Reply With Quote Quick reply to this message  
Join Date: Sep 2008
Posts: 1,561
Reputation: BestJewSinceJC is a name known to all BestJewSinceJC is a name known to all BestJewSinceJC is a name known to all BestJewSinceJC is a name known to all BestJewSinceJC is a name known to all BestJewSinceJC is a name known to all 
Solved Threads: 196
BestJewSinceJC BestJewSinceJC is offline Offline
Posting Virtuoso

Re: Big looping problem in C - help

 
0
  #4
Nov 4th, 2008
Identify the portion of the code that isn't working and explain what it is supposed to do and I will gladly try to help you. Also, if we're supposed to identify your problem based on that 100 lines of input & output and that small segment of code, how are we going to do so if you didn't post the code for your functions that were called in that segment of code?
Reply With Quote Quick reply to this message  
Join Date: Nov 2008
Posts: 19
Reputation: bionicseraph is an unknown quantity at this point 
Solved Threads: 6
bionicseraph bionicseraph is offline Offline
Newbie Poster

Re: Big looping problem in C - help

 
0
  #5
Nov 4th, 2008
The problem is that your outer loop is checking for 0 to exit. So when you have an error condition you are exiting the loop. Is there a char you enter to exit the program? That's the value that you'll want to use in that loop. I think you'll want to do something like this...
  1. while(c != SENTINAL){
  2. if(c == 0){
  3. PrintIt("error must be 1-4");
  4. continue;
  5. }
  6. //other loop code
  7. }
SENTINAL is the value the user enters to exit your program
Reply With Quote Quick reply to this message  
Reply

This thread has been marked solved.
Perhaps start a new thread instead?
Message:


Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC