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

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

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

Избавиться от погрешности в выделении дробной части - C++

18.11.2014, 20:55. Просмотров 442. Ответов 7
Метки нет (Все метки)

Нужно избавиться от погрешности в выделении дробной части
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
#include <stdio.h>
#include <math.h>
int main()
{
int x,n,summa1=0,b,c,summa2=0,t,e,u;
float l,p,r,y;
printf("Vvedite l :");
scanf("%f", &l );
p=(round(l));
t=(int)floor(p);
r=l-t;
y=r*10000;
 
e=(int)floor(p);
u=(int)floor(y);
printf("b = %d\n", e);
printf("r = %d\n", u);
{
 
x=e;
b=u;
for(n=1;x>9;n++)
{summa1+=x%10;
x/=10;
}
for(c=1;b>9;c++)
{summa2+=b%10;
b/=10;
}
summa1+=x;
printf("summa=%d\n",summa1);
summa2+=b;
printf("summa=%d\n",summa2);
return 0;
}
 
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2014, 20:55
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Избавиться от погрешности в выделении дробной части (C++):

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

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

Вывести старшую цифру дробной части и младшую цифру целой части числа - C++
Искал у вас, не нашел. Я новичок в этом деле, если вам не трудно напишите полностью решение ща контрольная ( 31. Даны натуральные...

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

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

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

7
nmcf
5754 / 5065 / 1732
Регистрация: 14.04.2014
Сообщений: 20,749
18.11.2014, 21:13 #2
Дробная часть - это u? Ну умножай на большее число в 12-й строке.
0
NAlt
0 / 0 / 0
Регистрация: 02.10.2014
Сообщений: 136
18.11.2014, 21:17  [ТС] #3
nmcf, я пробовала не выходило
0
nmcf
5754 / 5065 / 1732
Регистрация: 14.04.2014
Сообщений: 20,749
18.11.2014, 21:21 #4
Числа у тебя большие? Пример.
Длина мантиссы ограничена, дальше будут просто нули. Попробуй вместо float использовать double.
0
NAlt
0 / 0 / 0
Регистрация: 02.10.2014
Сообщений: 136
18.11.2014, 21:25  [ТС] #5
nmcf, пробовала использовать double
проблема осталась
ну к примеру ввожу 45.675
целое будет равно 46
а десятичная дробь =-3251
но это не во всех случаях такое происходит
0
nmcf
5754 / 5065 / 1732
Регистрация: 14.04.2014
Сообщений: 20,749
18.11.2014, 21:37 #6
Задачу опиши. Вводится число, что нужно получить?
0
ValeryS
Модератор
6749 / 5158 / 493
Регистрация: 14.02.2011
Сообщений: 17,327
18.11.2014, 21:44 #7
Цитата Сообщение от NAlt Посмотреть сообщение
ну к примеру ввожу 45.675
целое будет равно 46
а десятичная дробь =-3251
так так и будет
floor приводит по правилам математики а тебе нужно отбросить дробную часть
могу предложить такой вариант
C++
1
2
3
double a=12.34567
double b=(int)a;// приводим к int дробная часть отбрасывается
double c=a-b;
0
NAlt
0 / 0 / 0
Регистрация: 02.10.2014
Сообщений: 136
18.11.2014, 22:22  [ТС] #8
ValeryS, преподаватель сказал, чтобы я именно floor использовала, тогда значит и не надо что-либо менять?
а еще нужно выделить и целую часть
и суммы написать
0
18.11.2014, 22:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2014, 22:22
Привет! Вот еще темы с ответами:

Вывод дробной части - C++
Всем привет. Проблема собственно такая, не получается вывести дробную часть стороны треугольника, т.е 4,5(выводит только 4) уже не выводит,...

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

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

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


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

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

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