KoshakSB
@KoshakSB
студент ггту сухого

Почему '\xDA', '\xc4', и другие управляющие последовательности не работают?

По заданию нужно: Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, на интервале от с шагом dx с точностью .
Таблицу снабдить заголовком и шапкой. Каждая строка таблицы должна содержать значение аргумента, значение функции, вычисленной по формуле, значение функции, разложенной в ряд Тейлора, количество просуммированных членов ряда.
Указание. При вычислении суммы ряда использовать рекуррентные вычисления.

Вот скрин работы:
6586e4a0c816c607652765.png
вот код программы:
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <Windows.h>
#include <math.h>

int main(int argc, char* argv[])
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    float xn, xk, dx, e, sum, t, y;         
    int n;

    puts("Введите начальное значение x");
    scanf("%f", &xn);

    puts("Введите конечное значение x");
    scanf("%f", &xk);

    puts("Введите шаг");
    scanf("%f", &dx);

    puts("Введите точность");
    scanf("%f", &e);

    if (xn < -1 || xn>1 || xk < -1 || xk>1 || e == 0) {
        puts("Введены некорректные числа");

    }
    else {
        printf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n", '\xDA', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc2', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc2', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc2', '\xc4', '\xc4', '\xc4', '\xc4', '\xbf');
        printf("%c    xn    %c    y     %c   sum    %c  n %c\n", '\xb3', '\xb3', '\xb3', '\xb3', '\xb3');
        printf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n", '\xc3', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc5', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc5', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc5', '\xc4', '\xc4', '\xc4', '\xc4', '\xb4');

        for (; xn <= xk; xn += dx) {
            sum = 0;
            n = 0;
            do {
                t = (pow(xn, 2 * n + 1)) / (2 * n + 1);
                sum += t;
                n++;
            } while (t > e);
            y = atanh(xn);
            if (y < 0) {
                printf("%c %.5f %c %.5f %c %.5f %c %2d %c\n", '\xb3', xn, '\xb3', y, '\xb3', sum, '\xb3', n + 1, '\xb3');
                printf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n", '\xc3', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc5', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc5', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc5', '\xc4', '\xc4', '\xc4', '\xc4', '\xb4');
            }
            else if (y > 0) {
                printf("%c %.6f %c %.6f %c %.6f %c %2d %c\n", '\xb3', xn, '\xb3', y, '\xb3', sum, '\xb3', n + 1, '\xb3');
                printf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n", '\xc3', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc5', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc5', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc4', '\xc5', '\xc4', '\xc4', '\xc4', '\xc4', '\xb4');
            }
        }
    }
    getchar();
    return 0;
}
  • Вопрос задан
  • 92 просмотра
Решения вопроса 1
@Mercury13
Программист на «си с крестами» и не только
Потому что вы перевели консоль в кодировку Win-1251 и и ждёте в ней псевдографику.
Лучше всего работать в каком-то из вариантов Юникода.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы