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

Функция ошибка - C++

Восстановить пароль Регистрация
 
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
23.05.2011, 21:26     Функция ошибка #1
Здравствуйте не могу никак разобраться с числом пи.так как я его заданию выдаются ошибки...помогите исправить ошибки


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
#include "stdafx.h"
#include <cstdlib>
#include <iostream>
#include <math.h>
const float pi = 3.14;
float ob(float h, float r)
{
    
return(pi**r*r*h);
}
using namespace std;
int main(int argc, char *argv[])
{ 
float r,h;
float V;
 
printf ("Вычисление объема цилиндра");
printf("Введите высоту и радиус основания ->");
scanf("%f%f", &h, &r) ;                               
V = ob(h,r);        
        printf("Объем цилиндра %3.2f\n", V);
 
system("PAUSE");
return EXIT_SUCCESS;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryLaptev
Эксперт С++
1012 / 791 / 46
Регистрация: 30.04.2011
Сообщений: 1,600
23.05.2011, 21:29     Функция ошибка #2
А что у вас с Пи? Есть стандартная константа - поищите по имени M_PI.
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
23.05.2011, 21:33  [ТС]     Функция ошибка #3
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
А что у вас с Пи? Есть стандартная константа - поищите по имени M_PI.
а как её вставить?
C++
1
return(M_PI*r*r*h);
так не работает как правильно?
ValeryLaptev
Эксперт С++
1012 / 791 / 46
Регистрация: 30.04.2011
Сообщений: 1,600
23.05.2011, 21:41     Функция ошибка #4
Цитата Сообщение от yuliyayuliya28 Посмотреть сообщение
а как её вставить?
C++
1
return(M_PI*r*r*h);
так не работает как правильно?
Зависит от среды программирования. У вас какая?
asics
Freelance
Эксперт C++
 Аватар для asics
2841 / 1778 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
23.05.2011, 21:43     Функция ошибка #5
Попробуйте дописать
C++
1
#define _USE_MATH_DEFINES
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
23.05.2011, 21:48  [ТС]     Функция ошибка #6
Цитата Сообщение от asics Посмотреть сообщение
Попробуйте дописать
C++
1
#define _USE_MATH_DEFINES
Дописала не заработала

Добавлено через 31 секунду
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Зависит от среды программирования. У вас какая?
ммм MVS2005

Добавлено через 2 минуты
Добавила так и заработало

C++
1
2
#define M_PI 3.14
return(M_PI*r*r*h);
-comrade-
355 / 356 / 42
Регистрация: 11.06.2010
Сообщений: 703
23.05.2011, 21:48     Функция ошибка #7
Цитата Сообщение от yuliyayuliya28 Посмотреть сообщение
C++
1
return(pi**r*r*h);
Исправьте:
C++
1
return(pi*r*r*h);
ValeryLaptev
Эксперт С++
1012 / 791 / 46
Регистрация: 30.04.2011
Сообщений: 1,600
23.05.2011, 21:56     Функция ошибка #8
Цитата Сообщение от yuliyayuliya28 Посмотреть сообщение
Добавила так и заработало
C++
1
2
#define M_PI 3.14
return(M_PI*r*r*h);
Неправильно добавили.
Надо #define _USE_MATH_DEFINES
поставить ПЕРЕД
#include <cmath>

#include <cmath> надо написать вместо
#include <math.h>
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
23.05.2011, 21:59  [ТС]     Функция ошибка #9
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Неправильно добавили.
Надо #define _USE_MATH_DEFINES
поставить ПЕРЕД
#include <cmath>

#include <cmath> надо написать вместо
#include <math.h>
у меня библиотеки такой нет(
ValeryLaptev
Эксперт С++
1012 / 791 / 46
Регистрация: 30.04.2011
Сообщений: 1,600
23.05.2011, 22:02     Функция ошибка #10
Как это нет?!!!
А в программе написано:
C++
1
2
3
4
#include "stdafx.h"
#include <cstdlib>
#include <iostream>
#include <math.h>
Вот вместо последнего и надо написать:
#include <cmath>
А перед ней - показанный #define
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
23.05.2011, 22:03  [ТС]     Функция ошибка #11
Она и #include <math.h> заработала)
ValeryLaptev
Эксперт С++
1012 / 791 / 46
Регистрация: 30.04.2011
Сообщений: 1,600
23.05.2011, 22:19     Функция ошибка #12
Цитата Сообщение от yuliyayuliya28 Посмотреть сообщение
Она и #include <math.h> заработала)
Это - устаревшая форма написания. По стандарту С++ надо писать
#include <cmath>
Ведь у вас один инклуд написан правильно:
#include <cstdlib>
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
23.05.2011, 22:20  [ТС]     Функция ошибка #13
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Это - устаревшая форма написания. По стандарту С++ надо писать
#include <cmath>
Ведь у вас один инклуд написан правильно:
#include <cstdlib>
Как я только и не писала

#include <cmath>
#include <cmath.h>
#include "cmath"
#include "cmath.h"
он ошибку выдает что такой нет
ValeryLaptev
Эксперт С++
1012 / 791 / 46
Регистрация: 30.04.2011
Сообщений: 1,600
23.05.2011, 22:26     Функция ошибка #14
Первый вариант - правильный.
А какую ошибку выдает - покажите.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
23.05.2011, 22:34     Функция ошибка #15
yuliyayuliya28, Вот так попробуйте:
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
#include "stdafx.h"
#include <cstdlib>
#include <iostream>
#include <math.h>
const float pi = 3.14;
float ob(float h, float r)
{
        
return(pi*r*r*h);
}
using namespace std;
int main(int argc, char *argv[])
{ 
float r,h;
float V;
 
printf ("Âû÷èñëåГ*ГЁГҐ îáúåìГ* öèëèГ*äðГ*");
printf("Ââåäèòå âûñîòó ГЁ Г°Г*äèóñ îñГ*îâГ*Г*ГЁГї ->");
scanf("%f%f", &h, &r) ;                               
V = ob(h,r);        
        printf("ГЋГЎГєГҐГ¬ öèëèГ*äðГ* %.2f\n", V);
 
system("PAUSE");
return EXIT_SUCCESS;
}
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
23.05.2011, 22:50  [ТС]     Функция ошибка #16
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Первый вариант - правильный.
А какую ошибку выдает - покажите.
Error 1 fatal error C1083: Cannot open include file: 'cmath.h': No such file or directory
ValeryLaptev
Эксперт С++
1012 / 791 / 46
Регистрация: 30.04.2011
Сообщений: 1,600
23.05.2011, 23:02     Функция ошибка #17
Цитата Сообщение от yuliyayuliya28 Посмотреть сообщение
Error 1 fatal error C1083: Cannot open include file: 'cmath.h': No such file or directory
Ну так нужно писать cmath
а не cmath.h
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.05.2011, 23:04     Функция ошибка
Еще ссылки по теме:

C++ Функция, где ошибка?
C++ Функция-член Ошибка класса
Функция-член в структуре. В чём ошибка? C++
функция не принимает 3 аргументов,в чём ошибка? C++
C++ Ошибка: функция возвращает auto

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

Или воспользуйтесь поиском по форуму:
yuliyayuliya28
3 / 3 / 0
Регистрация: 06.03.2011
Сообщений: 319
23.05.2011, 23:04  [ТС]     Функция ошибка #18
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Ну так нужно писать cmath
а не cmath.h
Заработало))раньше не рабоотало когда так ставила...спасибо большое)
Yandex
Объявления
23.05.2011, 23:04     Функция ошибка
Ответ Создать тему
Опции темы

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