C++ 用C+制作正方形图案+;

C++ 用C+制作正方形图案+;,c++,C++,我的任务是制作一个半正方形图案,其中输入必须是偶数 例1 Enter row & column = 4 Output WWOO wWOO OOWW OOWW 例2 Enter row & column = 8 Output WWWWOOOO WWWWOOOO WWWWOOOO WWWWOOOO OOOOWWWW OOOOWWWW OOOOWWWW OOOOWWWW 这是到目前为止我的代码,我已经尝试显示偶数输出,但我没有任何ide来显示半正方形模式 int main () {

我的任务是制作一个半正方形图案,其中输入必须是偶数

例1

Enter row & column = 4
Output
WWOO
wWOO
OOWW
OOWW
例2

Enter row & column = 8
Output
WWWWOOOO
WWWWOOOO
WWWWOOOO
WWWWOOOO
OOOOWWWW
OOOOWWWW
OOOOWWWW
OOOOWWWW
这是到目前为止我的代码,我已经尝试显示偶数输出,但我没有任何ide来显示半正方形模式

int main ()
{
    int size;
    cout<<"Square Pattern\n";
    cout<<"==============\n";
    cout<<"Input :";cin>>size;
    
    if(size%2!=0)
    {
        cout<<"Input must be even number !";
    }
    else
    {
        for(int i = 0; i < size; i++)
        { 

            for(int j = 0; j < size; j++)
            {  
                if( ? )
                {
                    cout << "W";
                }
                else
                {
                    cout << "O";
                }

            }
            cout << endl;
        }
    }
        
int main()
{
整数大小;

cout这将返回您想要的模式:

#include <iostream>

using namespace std;

int main ()
{
    int size;
    cout<<"Square Pattern\n";
    cout<<"==============\n";
    cout<<"Input :";cin>>size;
    
    if(size%2!=0)
    {
        cout<<"Input must be even number !";
    }
    else
    {
        for(int i = 0; i < size/2; i++)
        { 

            for(int j = 0; j < size; j++)
            {  
                if( j<size/2 )
                {
                    cout << "W";
                }
                else
                {
                    cout << "O";
                }

            }
            cout << endl;
        }
        for(int i = size/2; i < size; i++)
        { 

            for(int j = 0; j < size; j++)
            {  
                if( j<size/2 )
                {
                    cout << "O";
                }
                else
                {
                    cout << "W";
                }

            }
            cout << endl;
        }
    }
}
#包括
使用名称空间std;
int main()
{
整数大小;

cout使用两个循环。保留两个字符c1和c2。在前半部分,c1设置为“W”,c2设置为“O”。在总迭代的前半部分后交换变量的内容。尝试以下操作:

#include<iostream>
using namespace std;
int main ()
{
    int size;
    cout<<"Square Pattern\n";
    cout<<"==============\n";
    cout<<"Input :";cin>>size;
    char c1,c2;
    if(size%2!=0)
    {
        cout<<"Input must be even number !";
    }
    else
    {
        for(int i = 0; i < size; i++)
        {
            if((i+1)<=size/2)
            {
                c1 = 'W'; c2 = 'O';
            }
            else
            {
                c1 = 'O'; c2 = 'W';
            }
            for(int j = 0; j < size; j++)
            {  
                if((j+1)<=size/2)
                {
                    cout << c1;
                }
                else
                {
                    cout << c2;
                }
            }
            cout << endl;
        }
    }
}
#包括
使用名称空间std;
int main()
{
整数大小;

cout我修改了您的代码片段,得到了所需的结果:

int main ()
{
    int size;
    cout<<"Square Pattern\n";
    cout<<"==============\n";
    cout<<"Input :";cin>>size;
    
    if(size%2!=0)
    {
        cout<<"Input must be even number !";
    }
    else
    {
        for(int i = 0; i < size; i++)
        { 

            for(int j = 0; j < size; j++)
            {  
                //Actual different part from your code
                /* There will be 2 nested if condition because your pattern is 
                dependent on both "i" and "j" */ 
                if(i<size/2){
                    if( j<size/2)
                    {
                        cout << "W";
                    }
                    else
                    {
                        cout << "O";
                    }
                }else{
                    if( j<size/2)
                    {
                        cout << "O";
                    }
                    else
                    {
                        cout << "W";
                    }
                }
            }
            cout << endl;
        }
    }
}
int main()
{
整数大小;

cout如果行数和行中字符数小于
size/2或
都大于或等于
size/2,则需要输出
'W'
;否则输出
'O'

    for(int row = 0; row < size; row++)
    {
        for(int column = 0; column < size; column++)
            if( (row < size/2) == (column < size/2) )
                cout << "W";
            else
                cout << "O";

        cout << endl;
    }
        
for(int row=0;row我无法用文字来描述它。假设我画了一个正方形,但没有填写字段,现在我指向一个特定的字段。你如何确定它是W还是O?首先用一个完整的句子回答这个问题。然后尝试将它转换成布尔表达式。两个循环如何,每个循环超过
大小/2
个字符?@Someprogrammerdude使用这种方法,最终可能会有两个循环,每个循环超过
size/2
行,每个循环中还有两个循环,每个循环超过
size/2
字符。