отображать значения из цикла for в табличном порядке, чтобы сделать его более понятным и чистым? - PullRequest
0 голосов
/ 03 марта 2019

информация: большая часть моей проблемы решена до сих пор.пожалуйста, прокрутите до самого конца ", вот мой прогресс ", чтобы помочь мне, если хотите.спасибо!

у меня есть следующий код, и я хотел бы отобразить скомпилированные результаты этого кода в чистом табличном порядке, чтобы сделать его более понятным для пользователей, рассматривающих скомпилированную программу командной строки.

#include <iostream>
#include <cmath>
using namespace std;

int main()
{double x;
for(x=-10;x<=10;x+=0.5)
    cout << "x=" << x << 3*x*x-7*x+5 << endl;
    return 0;
}

Я немного торопился, поэтому не мог понять, что на доске написала учительница, как добавить к ней табличный порядок.я помню только что-то вроде этого:

#include <iostream>
#include <cmath>
using namespace std;

int main()
{double x;
for(x=-10;x<=10;x+=0.5)
    cout << "x=" << x << "|*|" << 3*x*x-7*x+5 << endl;
    return 0;
}

я знаю, что 2-й код, вероятно, совершенно неверен, но это был код с этим символом: |

делает этоесть ли смысл для кого-то?Может быть, кто-то может понять, что именно пытался мой учительили, может быть, есть другой способ отобразить значения в хорошем и четком порядке.

позвольте мне привести вам пример того, что я имею в виду под ясным порядком.следующий пример покажет вам скомпилированные результаты (в cmd) первого кода (хаотично, без порядка и т. д.)

x=-10 375 
x=-9.5 465 
x=-9 123 
x=-8.5 124

вместо приведенного выше результата, я хотел бы иметь что-токак ..

x=  -  10.0     375 
x=  -   9.5     465 
x=  -   9       123 
x=  -   8.5     124

к сожалению, я не знаю, как это сделать.Я посмотрел некоторые методы, но я подумал: может быть, то, что мой учитель пытался показать, проще, чем методы, которые я искал.так что, возможно, кто-то здесь знает, как это делается так, как я пытался сделать во втором коде.в противном случае я был бы рад, если бы кто-то мог сказать мне самый короткий и самый простой способ отсортировать вывод.

заранее спасибо

.----------------------------------.

вот мой прогресс .я использовал setw, чтобы добавить ширину к линиям.измененный код будет выглядеть следующим образом (с добавлением include iomanip):

cout << std::setw(10) << x << std::setw(10) << 3*x*x-7*x+5 << endl;

Проблема в том, что диапазоны номеров не соответствуют.как ... одиночные цифры, десятишаговые цифры, сто-шаговые цифры не в одной строке.они выглядят примерно так:

      -10.0         375  
      -9.5       342.25

и т. д.

Мне бы хотелось, чтобы результат получился примерно таким, вы можете четко видеть первую цифру, 2-ю цифру и т. д.из чисел:

      - 10.0         375  
      -  9.5         342.25

кто-то может быть знает, как я даю команду, чтобы заказать это так?

1 Ответ

0 голосов
/ 04 марта 2019

Вы объединяете std::setw с std::setprecision и std::fixed:

#include <iostream>
#include <iomanip>

int main() {
    std::cout << std::setprecision(2) << std::fixed;
    for(double x = -10.0; x <= 10.; x += 0.5) {
        std::cout << std::setw(10) << x << std::setw(10) << 3 * x * x - 7 * x + 5 << "\n";
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...