Solved

Having Trouble with Nested Loops

Posted on 2001-06-21
13
330 Views
Last Modified: 2011-10-03
Can anyone help me? I'm totally lost.

I'm trying to write a nested loop code segment that produces the following ouput:

1
1 2
1 2 3
1 2 3 4

Thanks for your help.
0
Comment
Question by:Michelle21221
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
  • 2
  • +2
13 Comments
 

Accepted Solution

by:
johnbrewer1980 earned 25 total points
ID: 6216180
easy:
for (int i = 1; i <= 4; ++i) {
   for (int j = 1; j <= i; ++j) {
      cout << j;
   }
   cout << endl;
}
0
 
LVL 7

Expert Comment

by:KangaRoo
ID: 6216191
Looks a bit like homework. We can (may) not provide complete solutions to homework, but we can assist you.

Is there any code you've tried or written so far? Even when it's not working (yet), we can help you to get it right.
0
 
LVL 1

Expert Comment

by:glebspy
ID: 6217299
This is the correct answer

for (int i = 1; i <= 4; ++i) {
                for (int j = 1; j <= i; ++j) {
                   cout << j << " ";
                }
                cout << endl;
              }

cout<<endl<<"Thanks for you help."<<endl
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Expert Comment

by:johnbrewer1980
ID: 6217313
Hey glesby, that's the same as my answer!
0
 
LVL 1

Expert Comment

by:glebspy
ID: 6217321
I'd like to acknowledge johnbrewer1980, whose answer was highly influential in helping to construct this answer.
0
 
LVL 49

Expert Comment

by:DanRollins
ID: 6217407
#include "stdafx.h"
#include <iostream.h>

void OutputIt( int n ) {
    if ( n != 0 ) {
       OutputIt(n-1);
       cout << n << ' ';
    }
}

int main(int argc, char* argv[])
{
    OutputIt( 1 ); cout << endl;
    OutputIt( 2 ); cout << endl;
    OutputIt( 3 ); cout << endl;
    OutputIt( 4 ); cout << endl;
    return( 0 );
}

Thank you, thank you!  I'd like to thank all of the little people who contributed, however insignificantly to this production.  You LIKE me! you REALLY LIKE Me!

-- Dan
0
 
LVL 9

Expert Comment

by:ShaunWilde
ID: 6218052
#include "stdafx.h"

#include <string>
#include <iostream>

using namespace std;

int main(int argc, char* argv[])
{
     std::string szString;
     for (int n=1;n<=4;n++)
     {
          char szBuffer[32];
          itoa(n,szBuffer,10);
          szString+=szBuffer;
          cout << szString <<endl;
          szString += " ";
     }
     return 0;
}

my contribution to this party :) - this was all my own work and I will thank no one except the great almighty - whomever that might be
0
 
LVL 49

Expert Comment

by:DanRollins
ID: 6219418
I've improved my algorithm:

#include "stdafx.h"
#include <iostream.h>

int main(int argc, char* argv[])
  cout << "Nested loop example:" << endl;
  cout << "1" << endl;
  cout << "1 2" << endl;
  cout << "1 2 3" << endl;
  cout << "1 2 3 4" << endl;
}

Simpler is always better.  Just be sure to keep the first line or the professor won't know how hard you worked.

-- Dan

0
 
LVL 9

Expert Comment

by:ShaunWilde
ID: 6220098
Dan - I hate to tell you this but - YOU made a mistake :)

your forgot your {

is that your first mistake this century ?
0
 
LVL 49

Expert Comment

by:DanRollins
ID: 6221100
Just seeing if YOU were paying attention. Ha! made ya look! :---}

-- Dan
0
 
LVL 7

Expert Comment

by:KangaRoo
ID: 6221485
// Okay, you asked for it...

#include <iostream>

template<int N>
struct print_numbers
{
   ostream& print(ostream& out) const
   {
       print_numbers<N-1>().print(out);
       out << " " << N;
       return out;
   }
};

template<>
struct print_numbers<1>
{
   ostream& print(ostream& out) const
   {
       out << 1;
       return out;
   }
};

template<int K>
struct print_lines
{
   ostream& print(ostream& out) const
   {
      print_lines<K-1>().print(out);
      print_numbers<K>().print(out);
      out << endl;
      return out;
   }
};

template<>
struct print_lines<1>
{
   ostream& print(ostream& out) const
   {
      print_numbers<1>().print(out);
      out << endl;
      return out;
   }
};

int main()
{
   print_lines<4>().print(cout);
}
0
 
LVL 49

Expert Comment

by:DanRollins
ID: 6221676
Michelle21221,
Ignore KangRoo's post.  It is one thing to bring a polished apple to the teacher.  It's quite another to backup a truck full of them to the classroom door...

-- Dan
0
 
LVL 9

Expert Comment

by:ShaunWilde
ID: 6221703
I'd fail it due to lack of comments myself
0

Featured Post

On Demand Webinar: Networking for the Cloud Era

Did you know SD-WANs can improve network connectivity? Check out this webinar to learn how an SD-WAN simplified, one-click tool can help you migrate and manage data in the cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In days of old, returning something by value from a function in C++ was necessarily avoided because it would, invariably, involve one or even two copies of the object being created and potentially costly calls to a copy-constructor and destructor. A…
IntroductionThis article is the second in a three part article series on the Visual Studio 2008 Debugger.  It provides tips in setting and using breakpoints. If not familiar with this debugger, you can find a basic introduction in the EE article loc…
The viewer will learn how to pass data into a function in C++. This is one step further in using functions. Instead of only printing text onto the console, the function will be able to perform calculations with argumentents given by the user.
The viewer will learn how to use the return statement in functions in C++. The video will also teach the user how to pass data to a function and have the function return data back for further processing.

687 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question