c++ - 有什么想法可以像读取代码一样读取用户输入吗?
问题描述
我正在尝试使用主要操作制作一个布尔矩阵计算器:'^','v','*'。我已经做到了,因此您可以通过要求输入每个矩阵框来填充它。但是当您尝试填充 10x10 矩阵时,它会变得乏味。所以我想有一个可以按条件填充的选项(比如 i=row 和 j=column)。
我希望用户能够输入自己的填充选项。喜欢:
if (5 <= 3i+2j <=8)
m[i][j] = 1;
else m[i][j] = 0;
或者
m[i][j] = [pow(-1,i+j)+pow(-1,i*j)]/2;
编写代码很容易,但这些条件应该由用户输入。所以我正在考虑将所有输入存储在一个字符串上,然后从那里解释它,但我发现它很复杂。你会说这是一个糟糕/不可行的解决方案吗?
解决方案
考虑将所有输入存储在一个字符串上,然后从那里解释它,但我发现它很复杂。
与其将所有输入存储在一个字符串上,为什么不显示两个选项,然后让用户填写变量值?像这样 :
Your matrix fill options :
[A]
if (a <= b*i+c*j <= d )
m[i][j] = 1;
else m[i][j] = 0;
[B]
m[i][j] = [pow(-1,i+j)+pow(-1,i*j)]/2;
然后如果用户选择“A”,请他们输入 a、b、c、d 值。“B”也是如此。您也可以添加简单的视觉效果。( :
你会说这是一个糟糕/不可行的解决方案吗?
恕我直言,坏是相对的。如果您希望此代码可维护,请不要忘记注释代码关键点。如果您正在为附加约束的任务进行此操作..看起来您做得对。
在我个人看来,500 行代码可以自信地运行良好,比 5 行代码让我内心深处感到不安要好得多。如果您清楚要执行的计划算法,剩下的就是正确编码,并在适用的情况下改进/简化 GUI。
希望有帮助..(:
推荐阅读
- windows - mingw32:cmake 在 Windows 上找不到提升
- c++ - 在 std::optional 中访问 std::vector 方法
- c# - 如何使用 WinAPI 获取缩放感知窗口大小
- amazon-web-services - aws lambda 容器图像调用
- flutter - 仅在包含数据时显示 Listile
- reactjs - 尝试使用自定义类定位 Storybook 中的 Material UI 元素
- powerbi - Power Query:需要在变量中获取 API 返回的总记录
- javascript - 将两个对象数组合并在一起
- apache-spark - Spark skewedPartitionThresholdInBytes 未得到强制执行
- c# - 使用 Visual Studio 代码作为在线解释器来控制 excel 和 AutoCAD