170 похожих чатов

Подскажите в чем может быть проблема, есть две функции которые

последовательно печатают таблички с помощью cout, в режиме релиза, строки печатаются вперемешку, как будто они работают асинхронно?

3 ответов

15 просмотров

Делай в конце строчки flush

Более сказать ничего нельзя, надо код

Антон- Автор вопроса
Ilya Zviagin
Более сказать ничего нельзя, надо код

запусти у себя на горячую #include <iostream> #include <iomanip> #include <cmath> #include <vector> #include <Windows.h> #include <algorithm> #include <cstdlib> using namespace std; struct Point { double x, y; }; const int C = 8; const double H = 0.007; double targetFunc(double x) { return pow(C, 3) * cos((x + 10 * C) / C); } double linearInterpolation(const double x, const Point& startP, const Point& endP) { double deltaY = endP.y - startP.y; double q = (x - startP.x) / H; return startP.y + q * deltaY; } void printTargetFuncTable(const vector<Point>& arr) { ios init(0); init.copyfmt(cout); const int HCell = 15; const int HRow = 34; const int HTitle = 25; //---------------HEADER------------------------- cout << setw(HTitle) << setfill(' ') << "Значение функции" << endl; cout << setw(HRow) << setfill('-') << ' ' << endl; cout << '|' << setw(HCell) << setfill(' ') << 'x' << '|'; cout << setw(HCell) << setfill(' ') << 'y' << '|' << '\n'; cout << setw(HRow) << setfill('-') << ' ' << '\n'; cout << flush; //----------------BODY-------------------------------- for (auto target = arr.begin(); target != arr.end(); target += 1) { cout << fixed << setprecision(4); cout << '|' << setw(HCell) << setfill(' ') << target->x << '|'; cout << setw(HCell) << setfill(' ') << target->y << '|' << '\n'; cout << setw(HRow) << setfill('-') << ' ' << endl; cout << flush; } cout.copyfmt(init); } void printLinearInterpolationTable(const vector<Point>& arr) { ios init(0); init.copyfmt(cout); const int HCell = 25; const int HRow = 80; const int HTitle = 60; //---------------HEADER------------------------- cout << setw(HTitle) << setfill(' ') << "Таблица линейной интерполялции" << endl; cout << setw(HRow) << setfill('-') << ' ' << endl; cout << '|' << setw(HCell) << setfill(' ') << 'x' << '|'; cout << setw(HCell) << setfill(' ') << "y приближ." << '|'; cout << setw(HCell) << setfill(' ') << "y точн." << '|' << endl; cout << setw(HRow) << setfill('-') << ' ' << endl; //----------------BODY-------------------------------- for (auto target = arr.begin(); target != arr.end(); target += 1) { cout << fixed << setprecision(4); cout << '|' << setw(HCell) << setfill(' ') << target->x << '|'; cout << setprecision(14); cout << setw(HCell) << setfill(' ') << target->y << '|'; cout << setw(HCell) << setfill(' ') << targetFunc(target->x) << '|' << endl; cout << setw(HRow) << setfill('-') << ' ' << endl; cout << flush; } cout.copyfmt(init); } int main() { SetConsoleOutputCP(1251); // создание таблицы с результатом расчетов функции vector<Point> TfRes; for (int i = 0; i <= 15; i++) { double x = C + i * H; TfRes.push_back({ x, targetFunc(x) }); } // печать таблицы printTargetFuncTable(TfRes); // нахождение значений линейной интерполяции в точке vector<Point> interpolArr; for (int i = 1; i <= 14; i++) { double x = C + 0.6 * i * H; // поиск близжайшей точки меньше x auto PointPtr = find_if( TfRes.begin(), TfRes.end(), [&x](Point p) -> bool {return x > p.x; } ); interpolArr.push_back({ x, linearInterpolation(x, *PointPtr, *(PointPtr + 1)) }); } // печать таблицы линейной интерполяции printLinearInterpolationTable(interpolArr); system("pause"); return 0; }

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта