(Tip: Best to use reply-to-all when responding to an email on the list) On Tue, 2006-05-02 at 21:34 -0400, MICHELLE EVANS wrote: > number1 = int(raw_input("Run number 1 (-1 to end) : ")) > number2 = int(raw_input("Run number 2 (-1 to end) : ")) > number3 = int(raw_input("Run number 3 (-1 to end) : ")) > number4 = int(raw_input("Run number 4 (-1 to end) : ")) > number5 = int(raw_input("Run number 5 (-1 to end) : ")) Good. You collect the string from raw_input and convert it to an integer.
This will prompt for 5 inputs, but it is missing any logic to actually break if -1 is entered. With a language like BASIC, you could stick in tests sort of like: if number1 == -1 goto done: BUT Python does not have a goto. So we actually need some "flow control" around the block of code where you collect inputs. while blocks process an indefinite number of times while a test condition is True. for blocks iterate through a sequence until they reach the end. By providing a sequence with the correct count, you can repeat the block the correct number of times. The range (and xrange for big sequences) functions provide a sequence of integers that can be used conveniently with for. The easiest way to fix your code above would be something like: ask_for_number = True while ask_for_number: number1 = .... if number1 == -1: break ... number5 = ... ask_for_number = False HOWEVER, that is not a good approach in the long run. A better approach is to have a single container to hold all of the inputs. For this, Python provides lists. Rather than have 5 separate variables, use a single list variable to hold all of the inputs. Then use a "for block" to ask for the input and put the result into the list. You already know how to convert the input from a string to a number. If you have trouble figuring out lists and for blocks, ask for help. (Sorry about the extra email. I forgot and used ad editor hot-key combo in my email program which sent the email.) > > > # The following will sum the numbers and then print the answer > sum = number1 + number2 + number3 + number4 + number5 > print > print "The total number of parts produced was:", sum,"." > > I need this to ask the user to enter their number per each run. That is why > I have 5 different input numbers. I need this break if a -1 is entered. > Would I use "if-else" to break this if -1 is entered? I need to be able to > count the number of lines entered. > > Thanks > Rick > > > ----- Original Message ----- > From: "Python" <[EMAIL PROTECTED]> > To: "MICHELLE EVANS" <[EMAIL PROTECTED]> > Cc: "Tutor Python" <tutor@python.org> > Sent: Tuesday, May 02, 2006 7:56 PM > Subject: Re: [Tutor] counting number of inputs > > > > On Tue, 2006-05-02 at 19:25 -0400, MICHELLE EVANS wrote: > > > I am trying to count the number of times a positive number is entered > > > from the user. But, the program must stop after 5 user inputs or a > > > negative number. > > > > > > Can anyone help. > > Yes, but you need to help yourself also. > > > > Do you know how to get input from the user? > > Do you know how to count things in Python? > > Do you know how to test a number to see if it is positive or negative? > > > > Why don't you post your code for any part of this problem and explain > > how it is supposed to work and where you are having difficulty. If > > necessary, review some of the tutorials to get some pointers on writing > > Python programs. > > > > We're happy to help you learn, but do not want to simply write your > > program for you. > > > > > Rick > > > _______________________________________________ > > > Tutor maillist - Tutor@python.org > > > http://mail.python.org/mailman/listinfo/tutor > > -- > > Lloyd Kvam > > Venix Corp > > > > > -- Lloyd Kvam Venix Corp _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor