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

Ошибка в функции (function: должна возвращать значение) - C++

Восстановить пароль Регистрация
 
andyoO
1 / 1 / 0
Регистрация: 19.12.2012
Сообщений: 68
01.06.2013, 19:06     Ошибка в функции (function: должна возвращать значение) #1
ребят, компилятор выдает error C4716: function: должна возвращать значение что это значит? как с этим бороться?
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
#include "stdafx.h"
#include <math.h> 
#include <string.h>
#include <conio.h>
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <time.h>
#include <windows.h> 
using namespace std;
double x;
long double fact(double k=0)
{
    if (k == 0) 
        return 1; 
    else
        return k * fact(k - 1); // делаем рекурсию.
}
double function(double x, double eps)
{
double func=1,funct=1,k=0; 
for (k=0;abs(funct-func)>=eps;k++)
{
func=funct;
funct=func+pow(x,k)/fact(k); 
}
};
//e^x=\sum_{n=0}^\infty \frac{x^n}{n!}
 
 
double epsil (double x,double fun)
{
return (sqrt(abs(3.1415926*3.1415926/16 - fun*fun)));
};
 
 
int main(void)
{ setlocale(LC_ALL,"Russian");
 
double eps ,fun=0, xna4, xkon, delta,x,xideal,m;
cout<<("Введите начальное Х\n");
cin>>xna4;
cout<<("Введите конечное X\n");
cin>>xkon;
while (xkon==xna4)
{cout << "Введите начальное Х\n";
cin>>xna4;
cout<<("Введите конечное X\n");
cin>>xkon;
}
cout<<("Введите шаг\n");
cin>>delta;
while (delta==0)
{cout << "Введите шаг\n";
cin >> delta;}
while (xna4>xkon && delta>0)
{ cout<<("Неверно, введите новые значения\n");
cout<<("Введите шаг\n"); 
cin>>delta;
cout<<("Введите начальное Х\n"); 
cin>>xna4;
cout<<("Введите конечное X\n"); 
cin>>xkon;}
while (xna4<xkon && delta<0)
{ cout<<("Неверно, введите новые значения\n");
cout<<("Введите начальное Х\n"); 
cin>>xna4;
cout<<("Введите конечное X\n"); 
cin>>xkon;
cout<<("Введите шаг\n"); 
cin>>delta;
}
 
while(abs(xna4-xkon)<delta) {
cout<<("Введите начальное Х\n");
cin>>xna4;
cout<<("Введите конечное X\n");
cin>>xkon;
cout<<("Введите шаг\n");
cin>>delta; }
if (xna4==xkon) 
{printf ("Неверно, введите новые значения\n"); 
cout<<("Введите корректное значение x начальное\n");
cin>>xna4;
cout<<("Введите корректное значение x конечное\n");
cin>>xkon;
cout<<("Введите корректное значение шаг\n");
cin>>delta;
}
 
cout<<"Введите точность в интервале от 0.0000001 до 0.1\n";
cin>>eps;
//if ((eps>0.1) (eps<0.0000001) || eps<0 || eps!=0) //1
while ((eps>1) || (eps<=0)) 
{
cout<<("Введите точность в интервале от 0.0000001 до 0.1\n");
cin>>eps;
}
cout<<"Введите Х идеальное\n ";
cin >> xideal;
printf ("----------------------------------------------------------------\n");
printf ("|     x      |  MyFunction(x) |     exp(x)     |      delta     |\n");
printf ("----------------------------------------------------------------\n");
for (x=xna4; x<=xkon; x=x+delta)
{
    m=exp(double(x));
printf("|%12.7f| %14.7f | %14.7f | %14.7f |\n",x,function(x,eps),m,epsil(x,function(x,eps)));
printf ("----------------------------------------------------------------\n");
}
x=0;
for (x=xna4; x>=xkon; x=x+delta)
{
m=exp(double(x));
printf("|%12.7f| %14.7f | %14.7f | %14.7f |\n",x,function(x,eps),m,epsil(x,function(x,eps)));
printf ("----------------------------------------------------------------\n");
}
 
printf ("----------------------------------------------------------------\n");
printf ("|     eps    |  MyFunction(x) |     exp(x)     |      delta     |\n");
printf ("----------------------------------------------------------------\n");
for (eps=0.1;eps>=0.0000001;eps=eps*0.1) // 1
{for (x=xna4; x>=xkon; x=x+delta)
{
m=exp(double(x));
printf("|%12.7f| %14.7f | %14.7f | %14.7f |\n",eps,function(xideal,eps),m,epsil(x,function(x,eps)));
printf ("----------------------------------------------------------------\n");
}
}
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.06.2013, 19:06     Ошибка в функции (function: должна возвращать значение)
Посмотрите здесь:

Функция должна возвращать указатель на первый элемент массива,удовлетворяющий условию C++
Как лучше возвращать значение из операции-функции C++
C++ error C4716: Distance::getdist: должна возвращать значение
C++ Правильно возвращать значение из функции
.Написать функцию, которая будет возвращать значение y=ln(x)+x при входящем параметре x. Построить таблицу значений этой функции C++
C++ Функция должна возвращать наименьший положительный элемент массива
C++ Функция должна возвращать новый массив, состоящий из отрицательных элементов исходного массива
C++ При вводе определенных переменных программа должна возвращать пользователя обратно к первому шагу

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ZaMaZaN4iK
Мой лучший друг-отладчик!
 Аватар для ZaMaZaN4iK
163 / 163 / 9
Регистрация: 24.06.2012
Сообщений: 662
Записей в блоге: 5
Завершенные тесты: 1
01.06.2013, 20:00     Ошибка в функции (function: должна возвращать значение) #2
andyoO, у вас функция function описана как возвращающая double.А в ней самой return нет - она ничего не возварщает.Вот и ругается
Issues
429 / 364 / 37
Регистрация: 06.08.2012
Сообщений: 961
01.06.2013, 20:03     Ошибка в функции (function: должна возвращать значение) #3
Цитата Сообщение от andyoO Посмотреть сообщение
double function(double x, double eps)
{
double func=1,funct=1,k=0;
for (k=0;abs(funct-func)>=eps;k++)
{
func=funct;
funct=func+pow(x,k)/fact(k);
}
};
return где?

Добавлено через 43 секунды
опоздал.
Yandex
Объявления
01.06.2013, 20:03     Ошибка в функции (function: должна возвращать значение)
Ответ Создать тему
Опции темы

Текущее время: 21:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru