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

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

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

Разбить число на целую и дробную часть - C++

08.04.2014, 00:40. Просмотров 878. Ответов 6
Метки нет (Все метки)

Возможно-ли разбить число x, допустим, это- "3.142", на целую и дробную часть. Именно чтобы было "3" и "14", а не "3.000" и "0.142" как на скрине . При этом x обязательно должен иметь 3 знака после запятой.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <fstream.h>
#include <string>
#include <math.h>
using namespace std;
 
int main(){
int n;
double x, y1, y2, y3;
cout.setf(ios::fixed);
cout.precision(5);
 
for (n= 1; n<= 10; n++){
x= 3.14159265359* n;
y2= modf(x, &y1);
y3=y2*100000;
cout << x<<"   "<< y1<<"   "<< y2<< "  -  "<< y3<< "\n";}
system("pause >> void");
}
Разбить число на целую и дробную часть
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.04.2014, 00:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Разбить число на целую и дробную часть (C++):

Разделить число на дробную и целую часть - C++
как можно разделить число на дробную и целую часть void main() { long a1; // a1 = целая часть числла double a; // а число ...

Напишите программу, которая получает число типа long double и выводит его целую и дробную части - C++
мое решение #include&lt;stdio.h&gt; #include&lt;math.h&gt; int main() { long double x;// = 23.234; scanf(&quot;%Lf&quot;, &amp;x); long...

Дано действитёльное число х. Получить целую часть *) числа х; затем — число х, округленное до ближайшего целого; затем — число х без дробных цифр. - C++
Здравствуйте помогите написать программу. Дано действитёльное число х. Получить целую часть *) числа х; затем — число х, округленное до...

Разделение числа на целую и дробную части - C++
Добрый день! Можно ли разделить число например 95.05 на 95 и 05 и как это сделать?

Поменять местами дробную и целую части числа - C++
Дано действительное число R вида nnn. ddd (три цифровых разряда в дробной и целой частях). Поменять местами дробную и целую части числа...

Преобразовать double в два int: целую и дробную части - C++
Если найдется добрый человек, который напишет небольшую функцию, которая float поделит на 2 int, целую часть и дробную соответственно,...

6
YDS
11 / 11 / 5
Регистрация: 29.03.2014
Сообщений: 61
08.04.2014, 00:54 #2
Могу подать такую идею вывода целой части, ну а по той же схеме можно сделать дробную часть, но при этом переменную которая принимает значение 0,14, просто перед выводом домножать на 100, и будет выводить "14") Попробуйте это сделать, а не выйдет пишите)
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
#include <iostream>
#include <string>
#include <math.h>
using namespace std;
 
int main(){
int n;
double x, y1, y2, y3;
cout.setf(ios::fixed);
 
 
for (n= 1; n<= 10; n++){
    cout.precision(5);
x= 3.14159265359* n;
y2= modf(x, &y1);
 
cout << x<<"   ";
cout.precision(0);
cout << y1 <<"   ";
cout.precision(2);
cout << y2<< "   ";
 
y3=y2*100000;
cout << "  -  "<< y3<< "\n";}
system("pause >> void");
}
0
ValeryS
Модератор
6709 / 5118 / 482
Регистрация: 14.02.2011
Сообщений: 17,213
08.04.2014, 01:02 #3
Цитата Сообщение от bacujiuca1 Посмотреть сообщение
Возможно-ли разбить число x, допустим, это- "3.142", на целую и дробную часть. Именно чтобы было "3" и "14", а не "3.000" и "0.142" как на скрине . При этом x обязательно должен иметь 3 знака после запятой.
ну например вот так
C++
1
2
3
4
double x=3.142
 
int a=(int)x;
int b=(x-a)*100;
1
bacujiuca1
0 / 0 / 0
Регистрация: 20.05.2013
Сообщений: 17
08.04.2014, 02:20  [ТС] #4
Спасибо
для целого числа использовала:
cout.precision(0);
cout << y1 <<" ";
и для дробного:
int a=(int)x;
y2=(x-a)*100;
Теперь другой вопрос Если количество символов после запятой вводится с клавиатуры:
C++
1
2
cin >> m;
cout.precision(m);
Как будет правильнее всего 100 заменить на 1 и m нулей.
Например если вводить с клавиатуры число 5, то будет умножать на 100000. -)
0
ValeryS
Модератор
6709 / 5118 / 482
Регистрация: 14.02.2011
Сообщений: 17,213
08.04.2014, 02:35 #5
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
(x-a)* pow(10.0,m);
1
bacujiuca1
0 / 0 / 0
Регистрация: 20.05.2013
Сообщений: 17
08.04.2014, 02:40  [ТС] #6
Большое Спасибо!!!
0
IrineK
Заблокирован
08.04.2014, 03:13 #7
Преобразовать double в два int: целую и дробную части
0
08.04.2014, 03:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.04.2014, 03:13
Привет! Вот еще темы с ответами:

Из числа float получить два int-a: целую и дробную части - C++
Всем привет. Как можно из числа float получить два inta. приведу пример: есть 1,45 и 2,397. из первого нужно получить 1 и 45, из второго 2...

Разбить число на целую и дробную часть - C++
Определить равна ли сумма цифр целой части действительного числа сумме такого же количества цифр в дробной части. Привет форумчане! ...

Оставить дробную часть - C++
Допустим, имеем число 12,345. Необходимо это число преобразовать в 0.345. Просто отбросить целую часть не годится, уже пробовал через: ...

Вывести дробную часть числа - C++
Подскажите пожалуйста как в С++ вывести остаток после запятой... Т.Е. 5/2=2.5 мне нужно что-бы вывело 5 Гуглил, не нашел...


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

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

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