ok guys I need your help. What i need to do is create a program that prints out a user specified pattern. the user specifies the size and which pattern.
the patterns should llok like this
Patter 1 Pattern 2 Pattern 3 Pattern 4
5$$$$ $$$$5 $$$$$ $$$$$
$5$$$ $$$5$ $$$$5 5$$$$
$$5$$ $$5$$ $$$55 55$$$
$$$5$ $5$$$ $$555 555$$
$$$$5 5$$$$ $5555 5555$
so as you can see if a user picks pattern 4 with size 5 they get 5 rows and 5 columns or if they picked size 2 it would be 2 rows 2 columns. I have the code for the first two patterns working but the next two i cant get. I know i could get number 4 if I got number 3 but im stuck this is what i have so far mind the mess.
#include <iostream> // Need for cout,cin
#include<iomanip> // need setf,fixed,showpoint,setprecision
#include <stdio.h> // Need for getchar
using namespace std;
int greet(int pattern);
int pick_size(int size);
int main()
{
int user_choice;
int pattern;
int user_size;
int size;
int i;
int j;
int s;
int n;
n = 0;
user_choice = 0;
user_size= 0;
pattern = greet(user_choice);
size = pick_size(user_size);
s = size;
// Loop for pattern 1
if ( pattern == 1)
{
for ( j = 1; j <= size; j++ )
{
{
cout << "\n";
n++;
}
for ( i = 1 ; i <= size ; i++)
if (i == n )
cout << s ;
else if ( i != n )
{
cout << "$" ;
}
}
}
// loop for pattern 2
if ( pattern == 2)
{
n = size+1;
for ( j = 1; j <= size; j++ )
{
{
cout << "\n";
n--;
}
for ( i = 1 ; i <= size ; i++)
if (i == n )
cout << s ;
else if ( i != n)
{
cout << "$" ;
}
}
}
// Loop for pattern 3
if ( pattern == 3)
{
n = size;
for ( j = 1; j <= size; j++ )
{
{
cout << "\n";
}
for ( i = 1 ; i <= size ; i++)
if ( j == 1)
{
cout << "$" ;
}
else if ( i == n )
{
cout << size ;
n--;
}
else if (i!= n)
cout << "$" ;
}
}
//cout << " pattern" << pattern << endl; //test to see if pattern was returned correctly
//cout << " size" << size << endl; //test to see if pattern was returned correctly
cout.setf (ios::showpoint );
cout.setf( ios::fixed);
cout << setprecision(2);
cout << " Press enter to continue" << endl;
cin.ignore();
char ch = getchar();
return 0;
}
/*********************************************
** Greet Function
**
** Description: Greets the user and asks them to select an option from the menu
**
**
**
**
**
**
*************************************************/
int greet(int pattern)
{
int option;
do
{
cout << " Hello please pick an option from the menu: \n 1. Pattern one \n 2. Pattern two \n 3. Pattern three \n";
cout << " 4. Pattern four \n 5. Quit" << endl;
cin >> option;
if (option < 1 && option > 5)
cout << " Please enter the correct number from the menu " << endl;
else
{
switch(option)
{
case 1:
cout << " You have selected pattern: 1" << endl;
break;
case 2:
cout << " You have selected pattern: 2" << endl;
break;
case 3:
cout << " You have selected pattern: 3" << endl;
break;
case 4:
cout << "you have selected pattern: 4" << endl;
break;
case 5:
cout << " You have selected to quit" << endl;
break;
}
}
}
while (option < 1 && option > 6);
return option;
}
/*
/*********************************************
** Size Function
**
** Description: Asks the user to select an size option from the menu
**
**
**
**
**
**
*************************************************/
int pick_size(int size)
{
int size_num;
cout << " Please select a size 2-9" << endl;
cin >> size_num;
do
{
if (size_num < 2 && size_num > 9)
cout << " Please enter the correct size from the menu " << endl;
else
{
switch(size_num)
{
case 2:
cout << " You have selected size: 2" << endl;
break;
case 3:
cout << " You have selected size: 3" << endl;
break;
case 4:
cout << "you have selected size: 4" << endl;
break;
case 5:
cout << "you have selected size: 5" << endl;
break;
case 6:
cout << "you have selected size: 6" << endl;
break;
case 7:
cout << "you have selected size: 7" << endl;
break;
case 8:
cout << "you have selected size: 8" << endl;
break;
case 9:
cout << "you have selected size: 9" << endl;
break;
}
}
}while (size_num < 2 && size_num > 9);
return size_num;
}