Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Serge666
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 25
#1

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

19.03.2014, 09:37. Просмотров 1084. Ответов 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));
}

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.03.2014, 09:37
Ответы с готовыми решениями:

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

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

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

Вывод только дробной части действительных чисел
Как вывести только числа после комы? Например 6.57, должно вывести 57 только...

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

9
Croessmah
++Ͻ
14360 / 8142 / 1533
Регистрация: 27.09.2012
Сообщений: 20,076
Записей в блоге: 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); //прототип функции
Функции возвращают целочисленное значение
0
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, и изменении типа в самой функции, ошибка.
0
Croessmah
++Ͻ
14360 / 8142 / 1533
Регистрация: 27.09.2012
Сообщений: 20,076
Записей в блоге: 3
Завершенные тесты: 1
19.03.2014, 09:51 #4
Цитата Сообщение от Serge666 Посмотреть сообщение
и изменении типа в самой функции, ошибка.
где и какая?
0
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));
}
0
Serge666
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 25
19.03.2014, 10:02  [ТС] #6
Вывод дробной части
0
Croessmah
++Ͻ
14360 / 8142 / 1533
Регистрация: 27.09.2012
Сообщений: 20,076
Записей в блоге: 3
Завершенные тесты: 1
19.03.2014, 10:04 #7
еще раз
Цитата Сообщение от Serge666 Посмотреть сообщение
и изменении типа в самой функции, ошибка.
Цитата Сообщение от Croessmah Посмотреть сообщение
где и какая?
И выделяйте код тегами. Для этого выделяете необходимый код и нажимаете:
0
Serge666
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 25
19.03.2014, 10:07  [ТС] #8
т.е тип прототипа функций и тип самих функций, заменить на void?
0
zss
Модератор
Эксперт С++
6985 / 6547 / 4151
Регистрация: 18.12.2011
Сообщений: 17,273
Завершенные тесты: 1
19.03.2014, 10:43 #9
Лучший ответ Сообщение было отмечено Serge666 как решение

Решение

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)));
}
1
Serge666
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 25
19.03.2014, 11:29  [ТС] #10
Большое спасибо
0
19.03.2014, 11:29
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.03.2014, 11:29

Определить равна ли сумма k цифр дробной части заданного вещественного числа сумме цифр целой части
Помогите доделать задание, исправьте пожалуйста код!!! Срочно! Задание:...

Определения, равна сумма цифр целой части вещественного числа сумме такого же количества цифр в дробной части
Нада написать 2 программки 1. Определения, равна сумма цифр целой части...

Вывести старшую цифру дробной части и младшую цифру целой части числа
Искал у вас, не нашел. Я новичок в этом деле, если вам не трудно напишите...


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

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

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