Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
aleksand
21 / 9 / 0
Регистрация: 18.06.2011
Сообщений: 185
0

Число не входит по размеру в тип данных

09.10.2012, 10:05. Просмотров 392. Ответов 5
Метки (Все метки)

При вводе вводим следующее: выбираем первый пункт, затем x=2, E = 30. Когда факториал доходит до числа 35, то выводится #INFOO; Как можно исправить проблему?
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#include <iostream>
#include <stdio.h>
#include <math.h>
using namespace std;
 
double MachineZero();
int function();
 
int main()
{
    int count, n, q, sum, number;
    unsigned int factor;
    float x;
    double y, z, w;
    double b;
    float E; //это наша точность
    w = 0; // для подсчёта суммы ряда
 
    printf("Choose number 1 or 2\n");
    printf("1).E-zaday sam; X - zaday sam\n");
    printf("2).E-max; X - zaday sam\n");
    scanf("%d", &number);
 
    switch(number) {
 
    case 1: // 1-й случай
    printf("Enter x:\n");
    scanf("%f", &x);
    printf("Enter E:\n");
    scanf("%f", &E);
 
    for(n=1;;n++) {
    y = pow(x, 2*n+1);
    z = pow(-1.0, n);
    printf("y: %.0f\nz: %.0f\n", y, z);
 
    q = 2*n+1;
    factor=1;
    for(count=1;count<=q;count++) factor= factor*count;
    printf("Faktorial chisla %d raven %d\n", q, factor);
 
    b = z/factor*y;
    printf("%f\n\n", b);
 
    w = b+w;
 
    if(E<fabs(b)) {
    printf("Sum ryada do tochnosty %f ravna: %f\n", E, w);
    break;
    }
 
    }
 
    break;
    
    case 2: // 2-й случай
 
    printf("Enter x:\n");
    scanf("%f", &x);
    E = MachineZero();
    printf("Our E: %e\n", E);
 
    for(n=1;;n++) {
    y = pow(x, 2*n+1);
    z = pow(-1.0, n);
    printf("y: %.0f\nz: %.0f\n", y, z);
 
    q = 2*n+1;
    factor=1;
    for(count=1;count<=q;count++) factor= factor*count;
    printf("Faktorial chisla %d raven %d\n", q, factor);
 
    b = z/factor*y;
    printf("%f\n\n", b);
 
    w = b+w;
 
    if(E<fabs(b)) {
    printf("Sum ryada do tochnosty %e ravna: %f\n", E, w);
    break;
    }
 
    }
    break;
 
    default: // по default
        printf("wrong number\n");
 
    } //end of switch
    
 
 
    system("pause");
    return 0;
}
 
 
double MachineZero(){
    float v,u=1;
    do{
        v=u;
        u/=2;
    }while (u);
    return v;
}


Вернуться к обсуждению:
Число не входит по размеру в тип данных
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.10.2012, 10:05
Готовые ответы и решения:

Символьный тип данных, выяснить входит ли в последовательность s1, s2, …, sn буква j
Даны символы s1, s2, … . Известно, что символ отличен от восклицательного...

Дано четырехзначное число.Определить 1)входит ли туда 5 и 6 2) и вывести наибольшее число которое туда входит
Помогите пожалуйста, я начинающий. есть такая задача. Дано четырехзначное...

Создать тип данных Многоразрядное число
Создать тип данных Многоразрядное число. Разработать следующие функции: •...

Определить, входит ли в заданное число "5" и "6", а также вывести наибольшую цифру, которая в него входит.
Дано четырехзначное число.Определить 1)входит ли туда 5 и 6 2) и вывести...

Создать абстрактный тип данных (структура) - вектор, который имеет указатель на short и число элементов
Создать абстрактный тип данных (структура) - вектор, который имеет указатель на...

5
Другие темы раздела
C++ В 1d массиве уменьшить в двое элементы кратные 2 и стоящие перед max элементам http://www.cyberforum.ru/cpp-beginners/thread666837.html
В 1d массиве уменьшить в двое элементы кратные 2 и стоящие перед max элементам 332947=>431947
C++ Описать строку "number" (как массив символов) и переменную вещественного типа Помогите пожалуйста с заданием.... Надо Описать строку “number” (как массив символов) и переменную вещественного типа. Ввести значение переменной с клавиатуры. Очистить экран и вывести на экран ... http://www.cyberforum.ru/cpp-beginners/thread666827.html
C++ Вывод строки на экран: код не показывает обратную косую черту
Срочно нужна помощь.... по заданию надо вывести на экран сообщение: \\Это комментарий? //Нет, это комментарий дан код, но не показывает обратную косую черту. #include "stdafx.h" #include...
C++ Вычислить сумму ряда с заданной точностью
на языке си++. даны действительные числа -1<x<1,1<ε <0, составить программу вычисления с точностью ε следующие суммы ((2^2)*(x^2))/(2*4) +((2^3)*(x^3))/(2*4*6)+....
C++ istream, ostream http://www.cyberforum.ru/cpp-beginners/thread666754.html
Есть задача по сохранению в файл и восстановлении из файла объекта. Функции надо сделать такие: void Serialize(std::ostream & stream); // сохранение в файл void Deserialize(std::istream &...
C++ Имеется строка, содержащая число в экспоненциальной форме помогите пожалуйста !!!!.... никак не могу придумать как решить эту задачу.. очень нужно.. Прочитать в переменные целого типа два действительных числа со знаком в экспоненциальном представлении... подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru