C/C++ How to Create a Four-Digit Student Identification Number in C++?

  • Thread starter Thread starter spinner
  • Start date Start date
  • Tags Tags
    C++
AI Thread Summary
The discussion revolves around creating a program to handle student identification numbers as four-digit integers, with the requirement that input terminates when the user enters 0. Participants clarify that the program can either accept a single ID and check if it's within the four-digit range or continuously accept IDs until 0 is entered. Key points include the importance of using the correct comparison operator (==) in if statements instead of the assignment operator (=) to ensure proper functionality. Participants emphasize the need to confirm the assignment's requirements with an instructor, especially since this is part of a midterm exam. Ultimately, the original poster expresses gratitude for the assistance and indicates that the problem has been resolved.
spinner
Messages
6
Reaction score
0
how can i make a student identification number to be a four digit integer and when you type 0 for the identification number it will terminates. thanks
 
Technology news on Phys.org
use an unsigned integer. when the id equals 0 break; or use a while loop.
 
while (idnum=4)
{
printf("Input ID number");
scanf("%d", &idnum);

if (idnum = 0)
break;
}
printf("ID number %d", idnum);

any correction from my while statement coz i can't get the exact 4 digit integer for the id number thanks in advance for your help
 
Last edited:
You shouldn't need a loop for this. Just read an integer and test it with an if-statement to see if it's in the proper range. What are the largest and smallest possible values for a four-digit ID number?
 
ok thanks jt ill try to work on it
 
oh i thought you wanted to keep taking in ID# until 0...other wise there's no point in using the word "termination". In the while loop do you know which equals sign to use? You want the comparative/relational operator. same with teh if statement. My bad you just want it within a range. you what jtbell said is correct
 
my problem states that "student identification numbers are four-digit integers. input should terminate when i type 0 for the student identification number" sorry guys I am having a hard time wth the problem need help..
 
Well there are two scenarios from the posed question.

[0] That you need only to accept 1 ID and check that it is within range
[1] That you keep accepting IDs within range until 0 is inputted.(thus a loop)
the sentence "input should terminate when i type 0" to me would imply the second scenario for loop. Perhaps you should ask your professor(i'm guessing this is a homework problem) to clarify
 
Yeah, I was focusing on the four-digit integer requirement and your first guess at a solution which looked like you were trying to read four digits, one digit at a time.

If you've been studying loops in class just now, then neurocomp2003's scenario [2] is probably what you want. But if that doesn't clearly agree with the full statement of the assignment, then you should definitely ask your instructor.
 
  • #10
to jt and neo thanks guys for the help...im almost near with solution...actually its my midterm exam. its the only one that i left unsolved the rest are doing fine...best regards to both of you guys...
 
  • #11
BE VERY CAREFUL with your equals signs in if and while statements. The following if statement:

if (idnum = 0)

WILL NOT WORK. The single '=' means assignment; the result of this statement is that idnum is actually assigned the value 0, not compared with 0. The if statement will never run, because 0 means false.

What you want, instead, is the '==' operator, which means comparison:

if (idnum == 0)

- Warren
 
  • #12
spinner said:
actually its my midterm exam.

Are you allowed to use outside assistance on exams?
 
  • #13
Hahahahaha.....
 
  • #14
the admin can close the thread. problem already been solved thanks for the help guys...
 

Similar threads

Back
Top