Форум программистов, компьютерный форум CyberForum.ru

машинный нуль - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Нужно доделать программку (найти наибольшее из нечетных и количество четных чисел) http://www.cyberforum.ru/cpp-beginners/thread739908.html
Всем привет! Помогите пожалуйста доделать програмку, скелет я сделал, сообразить не могу как дальше. вот условие: В последовательности а1 … аn найти наибольшее из нечетных и количество четных чисел. #include <iostream> int main() { const int n ; int a; int max=-9000, kol=0; cout << "n=" << endl;
C++ Структуры данных! Доброго времени суток!! Помогите разобраться начинающему с кодом. Если возможно с коментами заранее спасибо! typedef unsigned char byte; typedef struct { byte family; byte serial; byte crc; }trom; typedef struct { http://www.cyberforum.ru/cpp-beginners/thread739907.html
C++ Почему создатели языка C++ придумали такой странный синтаксис обращения к элементам одномерного массива?
К элементам массива можно обращаться разными способами. Обычно в квадратных скобках пишут номер элемента массива, а тут узнал что так же можно писать и имя самого массива. Но непонятно для чего все это сделано? int A; A = 0; 10 = 0;
C++ Пасьянс Колодец
Всем доброго времени суток! Я решила попробовать собрать пасьянс по книге Бобровского, но он у меня не работает. Никто случайно не пробовал? Может скините? Буду признательна. Выложу в архиве свой, может у кого будет возможность посмотреть.
C++ Вывести часть строки <<strarg>> до символа <<charg1>> или после него. http://www.cyberforum.ru/cpp-beginners/thread739870.html
плиз, мне завтра задачу надо сдать. зависимости от значения <<charg2>> вывести часть часть строки <<strarg>> до символа <<charg1>> или после него. Помогите, желательно с объяснением
C++ Структуры typedef struct Доброго времени суток!! Помогите разобраться начинаущему с годом. Если фозможно с коментами заранее спасибо! typedef unsigned char byte; typedef struct { byte family; byte serial; byte crc; }trom; typedef struct { union { подробнее

Показать сообщение отдельно
Tema11
0 / 0 / 0
Регистрация: 16.02.2012
Сообщений: 14

машинный нуль - C++

20.12.2012, 17:32. Просмотров 2059. Ответов 4
Метки (Все метки)

Добрый вечер. Есть программа для нахождения машинного нуля для типов данных float, double, long double.
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include <iostream> 
using namespace std;
 
float machine_zero(float e, int &k)
{
    float e1;
    k = 0;
 
    do {
        e /= 2.0;
        e1 = e + 1.0;
        k++;
    } while(e1 > 1.0);
 
    return e;
}
 
double machine_zero(double e, int &k)
{
    double e1;
    k = 0;
 
    do {
        e /= 2.0;
        e1 = e + 1.0;
        k++;
    } while(e1 > 1.0);
 
    return e;
}
 
long double machine_zero(long double e, int &k)
{
    long double e1;
    k = 0;
 
    do {
        e /= 2.0;
        e1 = e + 1.0;
        k++;
    } while(e1 > 1.0);
 
    return e;
}
 
int main(int argc, char *argv[])
{
    int k = 0;
 
    // Для float
    float f_e = machine_zero((float) 1.0, k);
    cout << "float" << endl;
    cout << "Число делений на 2: " << k << endl;
    cout << "Машинный нуль: " << f_e << endl;
 
    // Для double
    double d_e = machine_zero((double) 1.0, k);
    cout << "double" << endl;
    cout << "Число делений на 2: " << k << endl;
    cout << "Машинный нуль: " << d_e << endl;
 
    // Для long double
    long double ld_e = machine_zero((long double) 1.0, k);
    cout << "long double" << endl;
    cout << "Число делений на 2: " << k << endl;
    cout << "Машинный нуль: " << ld_e << endl;
 
    return 0;
 }
Но есть небольшая загвоздка , как сделать для float и double через шаблон типов данных?


C++
1
2
3
4
5
template <class type>
type MZ(type e, int &k)
{
... //Тело функции
}
для вот этой части кода

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
int main(int argc, char *argv[])
{
int k = 0;
 
// Для float
float f_e = machine_zero((float) 1.0, k);
cout « "float" « endl;
cout « "Число делений на 2: " « k « endl;
cout « "Машинный нуль: " « f_e « endl;
 
// Для double
double d_e = machine_zero((double) 1.0, k);
cout « "double" « endl;
cout « "Число делений на 2: " « k « endl;
cout « "Машинный нуль: " « d_e « endl;
 
// Для long double
long double ld_e = machine_zero((long double) 1.0, k);
cout « "long double" « endl;
cout « "Число делений на 2: " « k « endl;
cout « "Машинный нуль: " « ld_e « endl;
 
return 0;
}
Заранее благодарен.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru