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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ ребят как переделать код чтобы он определял координату 1.5 например http://www.cyberforum.ru/cpp-beginners/thread1563963.html
Сформулируйте задачу попонятнее. #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;
C++ Указатель на многомерный массив Можно ли создать и передать указатель одной строкой или как-то попроще? int main() { int m; int *pa = m; int** a = &pa; cout << n(a,3,4); return 0; } int n(int **p,int r,int s) { .......} http://www.cyberforum.ru/cpp-beginners/thread1563962.html
C++ Создать программу, выполняющую математические действия
Доброе время суток. Товарищи програмисты или любители кто может помочь ?? проблемма такая дали задание и надо сделать его в visual studio а я в нем вообще никогда не работал ((( Прошу о помощи. Без шуток или плохих слов в коментариях. Кто сделаю буду презнательным и отблагодарю словесно )) Заранее спасибо друзья )
C++ связные списки
12. Використовувати (лінійні) односпрямовані списки без заголовної ланки (мал. а) або з заголовною ланкою (мал. б) при наступному їхньому описі Параметр L позначає список, а параметри Е, Е1 — дані типу ТЕ, до яких можна застосовувати операції присвоювання і перевірки на рівність. {ТЕ = char*} Визначити функцію, що: а) перевіряє на рівність списки L1 і L2; б) визначає, чи входить список L1 у...
C++ С чего НАЧАТЬ изучение С++? http://www.cyberforum.ru/cpp-beginners/thread1563906.html
Посоветуйте книгу для новичка. В программирование знаю только самую базу Javascript
C++ Сортировка массива строк по алфавиту c++ project raised exception class eaccessviolation with message 'access violation at address 32657E3B.Read of address 00000022. Process stoped. В чем проблема, компилятор мне подсвечивает строку в которой я вызываю функцию. sort (arr,n) #include <vcl.h> #include <iostream> #include <conio.h> #include <string.h> подробнее

Показать сообщение отдельно
arise
0 / 0 / 0
Регистрация: 15.10.2015
Сообщений: 11

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

27.10.2015, 19:08. Просмотров 157. Ответов 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;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru