我的预期输出:打印指数方程的时间和细菌数量。我正在尝试打印直到时间 t 的每个数据点,例如,如果我发现直到 50 小时的增长,我想打印时间 0、1、2、...、49 的细菌数量, 50. 我也试图让每个输出都在一个新行上。
这是我的代码:
void MainWindow::on_pushButtonCalc_clicked()
{
QString s;
double t = ui->t->text().toDouble();
double k = ui->k->text().toDouble();
double n0 = ui->n0->text().toDouble();
/*double example;
example= k;
s = s.number(example);
ui->textOutput->setText(s);*/
for(int c = 0; c<t; ++c)
{
double nt = n0*exp(k*t);
s = s.number(nt);
ui->textOutput->setText(s);
}
}
我已经尝试了很多不同的输出,也一直在尝试将新点附加到数组并打印数组,但我也没有太多运气。我对 c++ 有点陌生,对 qt 也很陌生。
感谢您的任何建议。
最佳答案
QTextEdit::setText
函数将用您传入的参数替换文本编辑的内容。相反,您可以使用append
函数:
for(int c = 0; c<t; ++c)
{
double nt = n0*exp(k*t);
s = QString::number(nt);
ui->textOutput->append(s);
}
另请注意,由于 QString::number
是静态函数,因此您不需要实例来调用它。
或者,您可以在循环中创建字符串,然后使用 setText
将其设置为文本编辑:
for (int c = 0; c<t; ++c)
{
double nt = n0*exp(k*t);
s += QString("%1 ").arg(nt);
}
ui->textOutput->setText(s);
关于c++ - 我似乎无法在 qt creator 中打印几行数据。程序覆盖除最后一行以外的所有输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27348562/