С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
 
p1ka4y777
2 / 2 / 0
Регистрация: 04.10.2013
Сообщений: 155
#1

Не учитывает дробные числа - C++

04.03.2014, 21:51. Просмотров 1154. Ответов 20
Метки нет (Все метки)

Помогите исправить программу, чтобы она учитывала ввод дробных чисел...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdio>
#include <iostream>
 
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    double a, b, c;
    double P, S;
    cout << "Введите три стороны треугольника: ";
    cin >> a >> b >> c;
    if ((a + b > c) && (a + c > b) && (b + c > a))
    {
        P = (a + b + c) / 2.0;
        S = sqrt(P *(P - a)*(P - b)*(P - c));
        cout << "Площадь треугольника: " << S << endl;
    }
    else
        cout << "Такой треугольник не существует..." << endl;
    system("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2014, 21:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не учитывает дробные числа (C++):

Дробные числа - C++
пишу в Builder C++ нужно дробное число отображать в едите получается примерно так: double x; x=0.55; String y; y=...

Дробные числа - C++
Всем привет. Подскажите - почему то значения ver2 и ver3 считает, как целые числа. Почему? #include &lt;iostream&gt; using namespace...

дробные числа - C++
Здраствуйте, народ! Есть глупый вопрос: как сделать проверку для ввода только дробных чисел? Заранее благодарен

Дробные числа, С++ - C++
Уважаемые знатоки, требуется ваша помощь. Передо мной стоит задача посчитать приблизительную сумму ряда, путем вычисления частичных сумм....

Дробные числа - C++
Дpoбныe числa oкpyглить дo 2 знaкoв пoслe зaпятoй как это можно сделать. к примеру число 23.333 его нужно округлить до 2 знаков или...

Дробные числа - C++
Задание: Напишите функцию main(), которая получает случайные дробные числа от пользова- теля, сохраняет их в массиве типа fraction,...

20
Байт
Нарушитель
Эксперт C
16688 / 10951 / 1685
Регистрация: 24.12.2010
Сообщений: 21,348
05.03.2014, 00:00 #16
Цитата Сообщение от ValeryS Посмотреть сообщение
так она и не решается на этом уровне
может если только свои типы вводить
Она не решается вообще. Ни на каком уровне. И никакие типы не помогут. Простейший пример. Вот у тебя есть супер-пупер комп, 5 террабайт диска и все остальное. Придумай-ка программку, которая выведет на консоль тривиальный корень из двух. Твой комп - всего лишь конечный автомат (хоть и очень большой). И наступит момент, когда он повторит свое состояние. И впадет в период. А вычисляемая нами штука - непериодическая.
2
ValeryS
Модератор
6729 / 5138 / 485
Регистрация: 14.02.2011
Сообщений: 17,247
05.03.2014, 00:13 #17
Цитата Сообщение от Байт Посмотреть сообщение
И наступит момент, когда он повторит свое состояние. И впадет в период. А вычисляемая нами штука - непериодическая.
не решаемая на перодичных/ непереодичных десятичных дробях( в случае с компом двоичных )
но
если перейти на другой уровень то легко решается, та же 1/3
число Пи как то ведь вычисляют

я не могу точно сказать, но мне кажется, что при каком то другом основании корень из двух может вполне стать конечной дробью
0
Байт
Нарушитель
Эксперт C
16688 / 10951 / 1685
Регистрация: 24.12.2010
Сообщений: 21,348
05.03.2014, 00:24 #18
Цитата Сообщение от ValeryS Посмотреть сообщение
число Пи как то ведь вычисляют
Не до конца... До какого-то знака. Все больше и больше. Но конечного.
Цитата Сообщение от ValeryS Посмотреть сообщение
я не могу точно сказать, но мне кажется, что при каком то другом основании корень из двух может вполне стать конечной дробью
Ты мне веришь? Если нет, то и не надо. Ответ - никогда! Never More! (Эдгар По)
0
ValeryS
05.03.2014, 00:29
  #19

Не по теме:

Цитата Сообщение от Байт Посмотреть сообщение
Ты мне веришь?
ага
но завязываю с офтопом

0
p1ka4y777
2 / 2 / 0
Регистрация: 04.10.2013
Сообщений: 155
05.03.2014, 00:56  [ТС] #20
ого, вот это называется попросил о помощи
0
zss
Модератор
Эксперт С++
6580 / 6142 / 2024
Регистрация: 18.12.2011
Сообщений: 16,010
Завершенные тесты: 1
05.03.2014, 08:50 #21
Замечание по поводу знака, отделяющего целую и дробную часть.
Если использовать сишный ввод, то
C++
1
setlocale(LC_ALL, "Russian");
устанавливает не только русскую кодировку, но и остальные русские приблуды.
В том числе то, что целая часть отделяется от дробной запятой, а не точкой:
C++
1
2
3
4
5
6
7
8
9
10
#include <locale.h>
#include <stdio.h>
int main()
{
    setlocale(LC_ALL, "Russian");
    double a, b, c;
    puts("Введите три стороны треугольника: ");
    scanf("%lf%lf%lf",&a,&b,&c); // вводить надо используя запятую
    ...
}
1
05.03.2014, 08:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.03.2014, 08:50
Привет! Вот еще темы с ответами:

Целые и дробные числа - C++
на языке С как делить и умножать целое число и дробное. например 2 * 3,5 . и 2/3,5. интересует именно запись в обьявлении...

Оператор while и дробные числа? - C++
Учусь по специальности машиностроение. Работаю над программой для расчета асинхронного двигателя, но возникла проблема: я в циклах while...

Дробные числа в одномерном массиве - C++
Доброе время суток, подскажите как с оператором sran считаются дробные числа? За ранее благодарен Найти число с самой большой...

Дробные числа - плавающая и фиксированная точки - C++
Считал, что float - с фиксированной точкой, а double - с плавающей. То, что у float была точность для меня было доказательством, ведь, если...


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

Или воспользуйтесь поиском по форуму:
21
Ответ Создать тему
Опции темы

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