Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 1070235
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 16, 20262026-05-16T20:32:01+00:00 2026-05-16T20:32:01+00:00

Back learning after silly life issues derailed me! I decided to switch my learning

  • 0

Back learning after silly life issues derailed me! I decided to switch my learning material and I’m now working through Accelerated C++.

Chapter 2, Exercise 5:
Write a set of “*” characters so that they form a square, a rectangle, and a triangle.

I tried but just couldn’t get the triangle down exactly. A quick google found the following answer:

// draw triangle
    int row = 0;
    int col = 0;
    int height = 5;

// draw rows above base
    while (row < height - 1)
    {
        col = 0;
        while (col < height + row)
        {
            ++col;
            if (col == height - row)
                cout << '*';
            else
            {
                if (col == height + row)
                    cout << '*';
                else
                    cout << ' ';
            }
        }
        cout << endl;
        ++row;
    }

// draw the base
    col = 0;

    while (col < height * 2 - 1)
    {
        cout << '*';
        ++col;
    }

I wanted to disect this and fully understand it as I had trouble coming up with my own answer. It doesn’t matter how many times I go through it I cannot see how it’s drawing the right side of the triangle:

- - - - *
- - - *
- - *
- *
*
* * * * * * * * * * 

That’s what I get going through this loop on paper. Where on earth is that right side coming from? I have a gut feeling the expressions are doing something I’m not seeing. The code works.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-16T20:32:01+00:00Added an answer on May 16, 2026 at 8:32 pm

    In the nested while loop, inside the else clause:

    else
    {
        if (col == height + row)
            cout << '*';  // This draws the right side
        else
            cout << ' ';
    }
    

    The trick is that the while loop doesn’t quit until the column reaches height + row, which is the position of the right side. It prints the left side (at height - row) earlier, in the if clause that comes before this one.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm working with someone who's looking to get back into programming after several years
I have no clue about trigonometry, despite learning it in school way back when,
After seeing the 13th Floor back in the day I have been obsessed to
Hey, I'm learning an ecommerce package (Spree). The problem arises after I delete a
I have a personal learning project that I shelved for awhile but recently decided
Well..I am learning java now and I am curious to know will this yield
Back in the old days, Help was not trivial but possible: generate some funky
Back in VB6, I wrote a few functions that would let me code without
Back in the days of Unix, you couldn't even close a software without reading
Back in the 90s when I first started out with MFC I used to

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.