Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

C++, Combing programs into one

  1. Oct 11, 2011 #1
    Hello all, I am still new to C++ and was instructed to write four programs all a bit different and eventually combine them into one using a series of nested for loops to get an out put that resembles but goes to 10 lines of output not 5: *NOTE* all these will be separated by a tab cout<<"\t"

    * ***** ***** *
    ** **** **** **
    *** *** *** ***
    **** ** ** ****
    ***** * * *****

    **Sorry for this the spaces were not showing up between the outputs, they are essentially 4 right triangles rotated and spaced by a tab.**

    I have all of the individual programs written, and I can combine the second two with out any hiccups yet when I try to combine the first two I begin to run into trouble.

    My code for the first two is as follows;

    #include<iostream>
    using namespace std;
    int main ()
    {
    int i,j,k, range=10;
    for (i=0;i<10;i++)
    {
    for (j=0; j<=i; j++)
    {
    cout<<"*";
    }
    cout<<endl;
    }

    system("pause");
    return 0;
    }

    and the second is:

    #include<iostream>
    #include <iomanip>
    using namespace std;
    int main ()
    {
    int i,j,k, range=10;
    for (i=0;i<10;i++)
    {
    for (j=10; j>i; j--)
    {
    cout<<"*";
    }
    cout<<endl;
    }
    system("pause");
    return 0;
    }


    I'm starting to think maybe my programs for the first two outputs are incorrect? For the second two I simply removed the "cout<<endl;" and replaced it with cout<<"\t"; but this doesn't seem to work for the first two.

    Any advice would be greatly appreciated!
    Thanks,
    Z

    p.s sorry for the lengthy post :/
     
  2. jcsd
  3. Oct 11, 2011 #2

    Borek

    User Avatar

    Staff: Mentor

    It won't hurt if you will explain what the four programs should do, and what the combined program should do.

    Post you sources using code tags:

    [noparse]
    Code (Text):
    int main()
    {
      return 0;
    }
    [/noparse]

    is displayed as

    Code (Text):
    int main()
    {
      return 0;
    }
     
  4. Oct 11, 2011 #3
    Sorry about that, the four codes will combine which produces an output of four right triangles rotated and printed on the same lines. Such as was in my original post, yet for some reason those got pushed together and made it seem as one block of *'s not four triangles.


    My first program is the initial triangle.
    Code (Text):
     #include<iostream>
    using namespace std;
    int main ()
    {
    int i,j,k, range=10;
    for (i=0;i<10;i++)
    {
    for (j=0; j<=i; j++)
    {
    cout<<"*";
    }
    cout<<endl;
    }

    system("pause");
    return 0;
    }
    My second program is the second triangle
    Code (Text):
     #include<iostream>
    #include <iomanip>
    using namespace std;
    int main ()
    {
    int i,j,k, range=10;
    for (i=0;i<10;i++)
    {
    for (j=10; j>i; j--)
    {
    cout<<"*";
    }
    cout<<endl;
    }
    system("pause");
    return 0;
    }
    My goal is to combine them into one program using for loops while they remain in triangle shape separated by a tab.

    Thanks,
     
  5. Oct 11, 2011 #4

    Mark44

    Staff: Mentor

    Now that you're using code tags, your code would be more understandable if you indented it in a way that shows the logical structure, rather than having every line start at the left margin. I have done this with your code.
     
  6. Dec 14, 2011 #5
    May be help with you.
    Code (Text):

    #include <iostream>

    using namespace std;

    #define MATRIX_SIZE 10  //change it to any size you want to show at here

    int main()
    {
        int i,j;
        for (i = 0;i < MATRIX_SIZE;i++)
        {
            for (j = 0 ; j < i+1; j++)
            {
                cout<<"*";
            }

            //cout<<" ";   //I think may be this line is what you want
            cout<< "\t";
     
            for ( ;j <= MATRIX_SIZE ; j++)
            {
                cout<<"*";
            }
            cout<<endl;
        }
        system("pause");
        return 0;
    }
     
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook