我不知道如何在A中进行转变 在B中我不知道如何离开01。 你需要你的帮助。我摆脱了自己如何去做每件事。
我需要像这样在屏幕上显示数字。
A. ****
****
****
B. 1
01
101
我的程序输出这个。而这不是我需要输出的。
A. ****
****
****
B. 01
0101
010101
代码:
std::cout << "Enter row: ";
int row;
std::cin >> row;
std::cout << "Enter col: ";
int col;
std::cin >> col;
if (row > 1 && col > 1)
{
for (int index = 0; index < row; ++index)
{
for (int j = 1; j < column; ++j)
{
std::cout << "*";
}
std::cout << "\n";
}
}
else
std::cout << "Sorry number must be greater than 1 \n";
if (row > 1 && col > 1 && row == col)
{
for (int row = 0; row <= col; ++row)
{
for (int col = 0; col < row; ++col)
std::cout << "0" << "1";
std::cout << "\n";
}
}
else
std::cout << "Sorry number must be greater than 1 \n";
如果我理解正确,在第一部分(
A
)你需要在每行星星之前打印空格。所以你需要添加一个循环来打印空格(在外循环内部但在内循环外部)
for (int i=0; i<index; ++i) {
std::cout<<" ";
}
如果我理解得很好,你需要在第二次打印时交替使用 0 和 1。最简单的方法是使用模 (
%
) 运算符,因此 a % 2
将是
0
如果 a
是偶数 1
如果 a
是奇数。所以你应该写 std::cout << "0" << "1";
而不是
std::cout << (row + col + 1) % 2;