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

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

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

Вывод дробной части - C++

19.03.2014, 09:37. Просмотров 823. Ответов 9
Метки нет (Все метки)

Всем привет. Проблема собственно такая, не получается вывести дробную часть стороны треугольника, т.е 4,5(выводит только 4) уже не выводит, менял тип переменных, тип вычисления на float, высчитывает но почему-то длина стороны получается еще меньше чем в первом случае(при выводе целой части). Помогите, в чем проблема?
вот код:

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
47
48
49
50
51
52
#include <iostream.h>
#include <math.h>
#include <stdio.h>
int dlina_a(int,int,int,int,int); //прототип функции
int dlina_b(int,int,int,int,int); //прототип функции
int dlina_c(int,int,int,int,int); //прототип функции
main()
{system("chcp 1251>0");
int x1,x2,x3,y1,y2,y3;
double a,b,c;
 
 
cout<<"Введите координаты первой точки, первого треугольника:"<<endl;
cin>>x1>>y1;
cout<<"Введите координаты второй точки, первого треугольника:"<<endl;
cin>>x2>>y2;
cout<<"Введите координаты третьей точки, первого треугольника:"<<endl;
cin>>x3>>y3;
 
 
cout<<"Длина стороны а 1 го треугольника = "<<dlina_a(x1,x2,y1,y2,a)<<endl;
cout<<"Длина стороны b 1 го треугольника = "<<dlina_b(x3,x2,y3,y2,b)<<endl;
cout<<"Длина стороны c 1 го треугольника = "<<dlina_c(x1,x3,y1,y3,c)<<endl<<endl;
 
 
cout<<"Введите координаты первой точки, 2 го треугольника:"<<endl;
cin>>x1>>y1;
cout<<"Введите координаты второй точки, 2 го треугольника:"<<endl;
cin>>x2>>y2;
cout<<"Введите координаты третьей точки, 2 го треугольника:"<<endl;
cin>>x3>>y3;
 
cout<<"Длина стороны а 2 го треугольника = "<<dlina_a(x1,x2,y1,y2,a)<<endl;
cout<<"Длина стороны b 2 го треугольника = "<<dlina_b(x3,x2,y3,y2,b)<<endl;
cout<<"Длина стороны c 2 го треугольника = "<<dlina_c(x1,x3,y1,y3,c)<<endl<<endl;
 
 
 
system ("pause");
return 0;
}
 
//сами функции
int dlina_a(int x1,int x2, int y1, int y2, int a)
{a=sqrt(float((x1-x2)*(x1-x2))+float((y1-y2)*(y1-y2)));
}
int dlina_b(int x3, int x2, int y3, int y2, int b)
{b=sqrt(float((x3-x2)*(x3-x2))+float(y3-y2)*(y3-y2));
}
int dlina_c(int x1, int x3, int y1, int y3, int c)
{c=sqrt(float((x1-x3)*(x1-x3))+float(y1-y3)*(y1-y3));
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.03.2014, 09:37     Вывод дробной части
Посмотрите здесь:

Вывод дробной и целой части - C++
Вывод дробной и целой части. Вводим число с = 1,5 ; Выводит целое: а = ; и дробное: в = ;

Вывод целой и дробной части - C++
&quot;Вводятся числитель и знаменатель дроби. Вывести: знак, целую часть, сокращенные числитель и знаменатель.&quot; со знаком разобрался,а вот...

Ошибки в компиляторе и вывод дробной части - C++
Есть следующее задание: Дано действительное число y, натуральное число n и генерированное случайное действительное число число x....

Формирование двоичного кода для целой и дробной части + вывод в файл - C++
Упростила программу, но суть ясна. Выводит число, потом его целую и дробную часть, после чего переводит обе части в двоичную систему...

Отброс дробной части - C++
как можно отбросить дробную часть(не округлить) от переменной?

Погрешность дробной части - C++
Сначала опишу задание, потом проблему. Задание: Дан первый элемент, остальную часть последовательности чисел надо вычислить по...

Округление дробной части - C++
Помогите пожалуйста!!! Как реализовать метод округления дробной части до 0,1 (0,36 -&gt; 0,4; 0, 33333 -&gt;0,3 и т.д.)????

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13054 / 7317 / 815
Регистрация: 27.09.2012
Сообщений: 18,053
Записей в блоге: 3
Завершенные тесты: 1
19.03.2014, 09:39     Вывод дробной части #2
C++
1
2
3
int dlina_a(int,int,int,int,int); //прототип функции
int dlina_b(int,int,int,int,int); //прототип функции
int dlina_c(int,int,int,int,int); //прототип функции
Функции возвращают целочисленное значение
Serge666
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 25
19.03.2014, 09:47  [ТС]     Вывод дробной части #3
C++
1
2
3
int dlina_a(int,int,int,int,int); //прототип функции
int dlina_b(int,int,int,int,int); //прототип функции
int dlina_c(int,int,int,int,int); //прототип функции
при изменении их на тип float, и изменении типа в самой функции, ошибка.
Croessmah
Модератор
Эксперт CЭксперт С++
13054 / 7317 / 815
Регистрация: 27.09.2012
Сообщений: 18,053
Записей в блоге: 3
Завершенные тесты: 1
19.03.2014, 09:51     Вывод дробной части #4
Цитата Сообщение от Serge666 Посмотреть сообщение
и изменении типа в самой функции, ошибка.
где и какая?
Serge666
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 25
19.03.2014, 10:01  [ТС]     Вывод дробной части #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream.h>
#include <math.h>
#include <stdio.h>
float dlina_a(int,int,int,int,int);
float dlina_b(int,int,int,int,int);
float dlina_c(int,int,int,int,int);
main()
{system("chcp 1251>0");
int x1,x2,x3,y1,y2,y3;
double a,b,c;
 
// ..................................................
 
float dlina_a(int x1,int x2, int y1, int y2, int a)
{a=sqrt(float((x1-x2)*(x1-x2))+float((y1-y2)*(y1-y2)));
}
float dlina_b(int x3, int x2, int y3, int y2, int b)
{b=sqrt(float((x3-x2)*(x3-x2))+float(y3-y2)*(y3-y2));
}
float dlina_c(int x1, int x3, int y1, int y3, int c)
{c=sqrt(float((x1-x3)*(x1-x3))+float(y1-y3)*(y1-y3));
}
Serge666
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 25
19.03.2014, 10:02  [ТС]     Вывод дробной части #6
Вывод дробной части
Croessmah
Модератор
Эксперт CЭксперт С++
13054 / 7317 / 815
Регистрация: 27.09.2012
Сообщений: 18,053
Записей в блоге: 3
Завершенные тесты: 1
19.03.2014, 10:04     Вывод дробной части #7
еще раз
Цитата Сообщение от Serge666 Посмотреть сообщение
и изменении типа в самой функции, ошибка.
Цитата Сообщение от Croessmah Посмотреть сообщение
где и какая?
И выделяйте код тегами. Для этого выделяете необходимый код и нажимаете:
Serge666
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 25
19.03.2014, 10:07  [ТС]     Вывод дробной части #8
т.е тип прототипа функций и тип самих функций, заменить на void?
zss
Модератор
Эксперт С++
6321 / 5905 / 1913
Регистрация: 18.12.2011
Сообщений: 15,184
Завершенные тесты: 1
19.03.2014, 10:43     Вывод дробной части #9
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
float dlina(float,float,float,float);
main()
{
    system("chcp 1251>0");
    float x1=1.,x2=2.,x3=3.,y1=4.,y2=5.,y3=6.;
    float a,b,c;
    a=dlina(x1,x2,y1,y2);
    cout<<a;
    b=dlina(x1,x3,y1,y3);
    cout<<b;
    c=dlina(x2,x3,y2,y3);
    cout<<c;
  ....
// ..................................................
} 
float dlina(int x1,int x2, int y1, int y2)
{
    return sqrt(float((x1-x2)*(x1-x2))+float((y1-y2)*(y1-y2)));
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.03.2014, 11:29     Вывод дробной части
Еще ссылки по теме:

Выделение дробной части из числа - C++
Дано число, например, х=124,556 нужно найти его целую и дробную части, чтобы получилось так: int a(целая),b(дробная) а=124 b=556 ...

Разделитель целой и дробной части - C++
Как получить текущий разделитель целой и дробной части ? visual studio 2013.

Отделение дробной части от числа - C++
у меня такое задание: Функци принимает в себя дробное число и возвращает только его дробную часть мне нужно вывести на экран только...

Сумма цифр дробной части - C++
Всем привет! Весь день пытаюсь найти ошибку в своей программе. Задача вот такая: Найдите сумму первых трех цифр дробной части...

Рассмотрение дробной части чисел - C++
Здравствуйте! :) Подскажите, пожалуйста, с решение одной задачки. Сама задача:Дана строка. Если строка содержит целое число – вывести 0,...


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

Или воспользуйтесь поиском по форуму:
Serge666
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 25
19.03.2014, 11:29  [ТС]     Вывод дробной части #10
Большое спасибо
Yandex
Объявления
19.03.2014, 11:29     Вывод дробной части
Ответ Создать тему
Опции темы

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