Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
arise
0 / 0 / 0
Регистрация: 15.10.2015
Сообщений: 11
#1

Как переделать код, чтобы программа принимала вещественные значения? - C++

27.10.2015, 19:08. Просмотров 152. Ответов 1
Метки нет (Все метки)

Как переделать код, чтобы программа принимала вещественные значения( просто при вводе 1.5 программа сходит с ума)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include "math.h"
#include <iostream>
#include "stdlib.h"
#define _USE_MATH_DEFINES
#define M_PI 3.14159265358979323846
int main()
{
    float x1(0.0), x2(0.0), x3(0.0), y1(0.0), y2(0.0), y3(0.0), a1(0.0), b1(0.0), c1(0.0), a, b, c;
    float EPSILON = 0.01;
    setlocale(LC_ALL, "Russian");
    while (1) {
        printf("\nВведите координаты треугольника:\n");
        printf("\nВведите x1:");
        scanf_s("%f", &x1);
        printf("\nВведите y1:");
        scanf_s("%f", &y1);
        printf("\nВведите x2:");
        scanf_s("%f", &x2);
        printf("\nВведите y2:");
        scanf_s("%f", &y2);
        printf("\nВведите x3:");
        scanf_s("%f", &x3);
        printf("\nВведите y3:");
        scanf_s("%f", &y3);
        a = sqrt(pow((x3 - x2), 2) + pow((y3 - y2), 2));
        b = sqrt(pow((x2 - x1), 2) + pow((y2 - y1), 2));
        c = sqrt(pow((x3 - x1), 2) + pow((y3 - y1), 2));
        a1 = ((acos((pow(b, 2) + pow(c, 2) - pow(a, 2)) / (2 * b * c))) * (180 / M_PI));
        b1 = ((acos((pow(a, 2) + pow(c, 2) - pow(b, 2)) / (2 * a * c))) * (180 / M_PI));
        c1 = ((acos((pow(a, 2) + pow(b, 2) - pow(c, 2)) / (2 * a * b))) * (180 / M_PI));
        if ((((a == 0) && (c == 0)) || ((a == 0) && (b == 0)) || ((b == 0) && (c == 0))) || (((a1 == 180) || (b1 == 180) || (c1 == 180))) || ((a1 == 0) || (b1 == 0) || (c1 == 0))) //условие проверки на прямую и точку
        {
            printf("\nКоординаты заданы не верно!\n");
        }
        else {
            if ((abs(a - b) < EPSILON) && (abs(a - c) < EPSILON) && (abs(a - b) < EPSILON) && (abs(b - c) < EPSILON)) {
                printf("\nТреугольник:\nравносторонний\n");
                printf("\n Длины сторон:\n\n а=%f,\n б=%f,\n с=%f", a, b, c);
            }
            else {
                printf("\nТреугольник: неравносторонний\n");
            }
        }
    }
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2015, 19:08     Как переделать код, чтобы программа принимала вещественные значения?
Посмотрите здесь:
Переделать код так, чтобы значения можно было задавать с клавиатуры C++
Как переделать код, чтобы изменить интерфейс до неузнаваемости? C++
C++ Как исправить код, чтобы выводил значения в порядке убывания?
Переделать код программы так, чтобы решалась через указатели и функцию C++
C++ Переделать код так, чтобы использовались диапазоны значений с помощью указателей
C++ Готовая программа, нужно переделать ее чтобы она работала с УКАЗАТЕЛЯМИ
Код написан в Dev C. Не работает в Visual. Как нужно переделать код? C++
Как через "IF" сделать чтобы программа закрывалась после ввода неверного значения C++
C++ Дописать программу так, чтобы в массив вводились как целые числа так и вещественные
Код чтобы программа работала на Windows и Mac OS C++
C++ Как переделать код с# в с++
Что дописать в код, чтобы программа не округляла результат? C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
228
4 / 4 / 0
Регистрация: 28.03.2015
Сообщений: 155
11.12.2015, 18:00     Как переделать код, чтобы программа принимала вещественные значения? #2
arise, в программе вводится сначало Х потом У, если вам нужна координата 1.5 введите сначала 1 а потом 5
Yandex
Объявления
11.12.2015, 18:00     Как переделать код, чтобы программа принимала вещественные значения?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru