Plz i need ur help

A

abico

Write a program that reads in a sequence of words and prints them in
reverse order.Using STACK.
 
R

red floyd

abico said:
Write a program that reads in a sequence of words and prints them in
reverse order.Using STACK.

Sure. Just give me your instructor's name and email address so I can
send it to him directly.
 
R

red floyd

abico said:
(e-mail address removed)

Nice try. Your *INSTRUCTOR'S* email, not yours. I want to send it to
him directly, so he'll know you didn't write it.
 
R

rossum

Write a program that reads in a sequence of words and prints them in
reverse order.Using STACK.

As others have said, we won't do your homework for you. However we
can offer some guidance.

First you might clarify the question, are the words one to a line or
can more than one appear on a line? I will assume the second. Is
"STACK" a class that you have been working on in your course? If not
then I will assume you need to use std::stack.

You have not posted any of your own code. That is a pity because it
lets us see what sort of stage you have reached. That would enable us
to pitch our advice at the right level for you. As it is I have to
guess, and I might guess wrong.

A mistake many beginners make is to try to write too much code at
once. The more you write the more difficult it is to find the errors.
Develop your code in *small* steps, testing the code at each step.
Only go on to the next step when you are sure that it is working
correctly.

1 I suggest that you start by writing a piece of code to write a
message to the screen: "Enter some words to reverse: ". Just that.
Yes, I know that you can do that already but it is best to start with
something that you do know and only later extend into the parts that
are new. Test your code and get it working correctly. Do not go on
until it is working properly.

2 Amend your program to read one word and to copy that word to the
screen. Test your code and get it working correctly. Do not go on
until it is working properly.

3 Amend your program to read two words and print them out in the
correct order. This is more complex than it may appear at first since
the two words may be on the same line or on separate lines - you will
need to handle both cases. Test your code and get it working
correctly. Do not go on until it is working properly.

4 Amend your program to read an arbitary number of words, split over
one or more lines, and print them out in the same order. Again there
is a hidden complication since you will have to think of a way to tell
when the last word has been entered. You may want to amend the
message you used at step 1. Test your code and get it working
correctly. Do not go on until it is working properly.

5 Have a look at what your instructor has said about stacks. Make
sure that you understand it. If you don't then ask your instructor to
explain the bits you are not certain of. If needed read up in your
C++ textbook about std::stack and how to use it.

6 When you understand a stack, think about how to use it to reverse
the order of something. To check your understanding you might want to
write a short test program to reverse the order of some integers using
a stack:

7 Now use your knowledge of how a stack works to reverse the order of
the words in your program from step 4. Test your code and get it
working correctly.

If you get stuck at any point then post what you have written here and
we will help you with it.

Points to remember:
- Develop code in small steps.
- Test each step.
- Each step must work before you proceed.

As you get more skilled the steps might become larger but you should
still use the same general method.

rossum


The ultimate truth is that there is no ultimate truth
 
D

David Harmon

On 9 Dec 2005 10:33:23 -0800 in comp.lang.c++, "abico"
Write a program that reads in a sequence of words and prints them in
reverse order.Using STACK.

Is the requirement actually to use std::stack? Because the
restricted interface makes it harder than necessary. Using a
vector as a functional stack:

#include <string>
#include <vector>
#include <iostream>
#include <iterator>
using namespace std;

int main()
{
vector<string> foo;
copy( istream_iterator<string>(cin),
istream_iterator<string>(),
back_inserter(foo));
copy(foo.rbegin(), foo.rend(),
ostream_iterator<string>(cout, " "));
}
 
R

red floyd

David said:
On 9 Dec 2005 10:33:23 -0800 in comp.lang.c++, "abico"
Write a program that reads in a sequence of words and prints them in
reverse order.Using STACK.


Is the requirement actually to use std::stack? Because the
restricted interface makes it harder than necessary. Using a
vector as a functional stack:
[redacted]

David, don't do the guys homework for him. How else is he going to
learn? (Though technically, you didn't, since his instructor spec'ed
stack, and you didn't use one).
 
D

David Harmon

On Sun, 11 Dec 2005 20:48:31 GMT in comp.lang.c++, red floyd
David, don't do the guys homework for him. How else is he going to
learn?

If he can explain to his instructor how that code works then he has
learned something.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,053
Latest member
BrodieSola

Latest Threads

Top