Получение По Вещественному Числу Его Целой И Вещественной Части.

Тема в разделе "Общие вопросы по С и С++", создана пользователем EmptyR, 30 окт 2011.

  1. EmptyR

    EmptyR Веб мастер

    Регистрация:
    6 окт 2010
    Сообщения:
    221
    Симпатии:
    0
    Нужно ввести с клавы в Си вещественное число, и в целые переменные записать целую и вещественную часть этого вещественного числа. Вот моя заготовка:

    Код (Text):
    #include "stdio.h"

    void main (){
    float num;
    int cel=0,vesh=0;
    printf ("Vvedite chislo:\n");
    scanf("%f",&num);
    //............
    printf("Celaya chast = %i\n",cel);
    printf("Ctshestvennaya chast = %i\n",vesh);
    }
    P.S.: Если это необходимо указать, юзаю C-Free 4.0
     
  2. lazybiz

    lazybiz Well-Known Member
    C\C++ Team

    Регистрация:
    3 ноя 2010
    Сообщения:
    1.344
    Симпатии:
    0
    Вещественная часть может быть очень большой. Есть ограничения?

    P.S.: Я правильно понял, надо дробную часть представить целой!?
     
  3. EmptyR

    EmptyR Веб мастер

    Регистрация:
    6 окт 2010
    Сообщения:
    221
    Симпатии:
    0
    Да, имеется ввиду что вводится вещественное число типа num=15.40. Из него нужно получить два целого числа cel=15 и vesh=40
     
  4. EmptyR

    EmptyR Веб мастер

    Регистрация:
    6 окт 2010
    Сообщения:
    221
    Симпатии:
    0
    Длина вещественной части - 2 символа.
     
  5. lazybiz

    lazybiz Well-Known Member
    C\C++ Team

    Регистрация:
    3 ноя 2010
    Сообщения:
    1.344
    Симпатии:
    0
    Код (C++):
    #include <stdio.h>
    #include <math.h>

    void main () {
    double num, f_int, f_frac;
    int cel, vesh;

    printf( "Vvedite chislo: " );
    scanf( "%lf", &num );

    vesh = floor( modf( num , &f_int ) * 100 );
    cel = (int)f_int;

    printf( "Celaya chast = %i\n", cel );
    printf( "Ctshestvennaya chast = %i\n", vesh );
    }
     
Загрузка...

Поделиться этой страницей