Выделение дробной и целой части - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Задание стоит так: определение равна ли сумма цифр из целой части действительного числа сумме такого же количества цифр из дробной части. Нужно сделать чтобы дробная часть отделялась до такого же кол-ва знаков как и целая. У меня есть программа, но она не верно работает
#include <stdio.h>
#include <stdlib.h>
#include<conio.h>
#include <math.h>
int main()
{
int x,n,summa1=0,b,c,summa2=0,t,e,u;
double g,p,r,y;
printf("Vvedite chislo :");
scanf("%lf", &g );
p=floor(g);
r=g-p;
t=(int)floor(g);
y=r*100000000;
e=(int)floor(p);
u=(int)floor(y);
{for(n=1;e>9;n++)
{summa1+=e%10;e/=10;}
for(c=1;u>9;c++)
{summa2+=u%10;u/=10;}
summa1+=e;
printf("summa=%d\n",summa1);
summa2+=u;
printf("summa=%d\n",summa2);
if(summa1=summa1)
printf("Rivni");
else
printf("Ne rivni");
return 0;
}}

Решение задачи: «Выделение дробной и целой части»

textual
Листинг программы
#include <stdio.h>
#include <math.h>
 
int main(void) {
    double n;
    
    while ( printf("N = ") && scanf("%lf", &n) == 1 && n > 0.0 ) {
        double i, f;
        
        f = modf(n, &i);
        printf("I = %d; F = %d\n", (int)i, (int)(f * pow(10.0, floor(log10(i)) + 1.0)));
    }
    
    return 0;
}

Объяснение кода листинга программы

  1. Подключение необходимых библиотек: iostream.h и math.h
  2. Объявление переменной типа double с именем n, которая будет использоваться для ввода числа с плавающей точкой.
  3. Запуск цикла while, который будет выполняться до тех пор, пока пользователь не введет ноль или отрицательное число. Внутри цикла находятся команды для ввода числа и его обработки.
  4. Объявление двух переменных типа double с именами i и f. Переменная i будет использоваться для хранения целой части числа, а переменная f — для дробной.
  5. Вычисление дробной и целой части числа с помощью функции modf. Результат сохраняется в переменных i и f соответственно.
  6. Вывод на экран целой части числа (i) и дробной части (f), умноженной на 10 в степени, равной количеству цифр в целой части числа.
  7. Проверка условия завершения цикла while и выход из программы при его выполнении.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.333 из 5
Похожие ответы