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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
yuliyayuliya28
4 / 4 / 0
Регистрация: 06.03.2011
Сообщений: 319
#1

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

23.05.2011, 21:26. Просмотров 893. Ответов 17
Метки нет (Все метки)

Здравствуйте не могу никак разобраться с числом пи.так как я его заданию выдаются ошибки...помогите исправить ошибки


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;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2011, 21:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция ошибка (C++):

Функция, где ошибка? - C++
После добавления сортировки через функцию, она перестала работать( сортировка по возрастанию сумм столбцов) //...

Ошибка: функция возвращает auto - C++
Поставил галочку на Have g++ follow the C++11 ISO C++ language standard . Но почему то не компилируется. auto compute() { ...

Функция поиска (ошибка в коде) - C++
void poisk_po_imeni() { if(!sch) { cout&lt;&lt;&quot;Сначала что-нибудь введите!&quot;&lt;&lt;endl; } else{ char w; cout&lt;&lt;&quot;Введите...

Функция. Где здесь ошибка? - C++
using namespace std; int main () { float x,y,z; cout &lt;&lt;&quot;x=&quot;; cin &gt;&gt;x; cout &lt;&lt;&quot;y=&quot;; cin &gt;&gt;y; ...

Функция sort и ошибка С2228 - C++
Доброго времени суток, пытаюсь постичь функцию sort на примере сортировки классов, но все время выдает ошибку С2228, не могу понять что...

Функция-член Ошибка класса - C++
Непонятная ошибка связанная с функцией-членом. Я в панике + почему-то не могу внести хедер с include ввожу #include &quot;header.h&quot; Работаю в...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ValeryLaptev
Эксперт С++
1040 / 819 / 48
Регистрация: 30.04.2011
Сообщений: 1,659
23.05.2011, 21:29 #2
А что у вас с Пи? Есть стандартная константа - поищите по имени M_PI.
yuliyayuliya28
4 / 4 / 0
Регистрация: 06.03.2011
Сообщений: 319
23.05.2011, 21:33  [ТС] #3
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
А что у вас с Пи? Есть стандартная константа - поищите по имени M_PI.
а как её вставить?
C++
1
return(M_PI*r*r*h);
так не работает как правильно?
ValeryLaptev
Эксперт С++
1040 / 819 / 48
Регистрация: 30.04.2011
Сообщений: 1,659
23.05.2011, 21:41 #4
Цитата Сообщение от yuliyayuliya28 Посмотреть сообщение
а как её вставить?
C++
1
return(M_PI*r*r*h);
так не работает как правильно?
Зависит от среды программирования. У вас какая?
asics
Freelance
Эксперт С++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
23.05.2011, 21:43 #5
Попробуйте дописать
C++
1
#define _USE_MATH_DEFINES
yuliyayuliya28
4 / 4 / 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
Эксперт С++
1040 / 819 / 48
Регистрация: 30.04.2011
Сообщений: 1,659
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
4 / 4 / 0
Регистрация: 06.03.2011
Сообщений: 319
23.05.2011, 21:59  [ТС] #9
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Неправильно добавили.
Надо #define _USE_MATH_DEFINES
поставить ПЕРЕД
#include <cmath>

#include <cmath> надо написать вместо
#include <math.h>
у меня библиотеки такой нет(
ValeryLaptev
Эксперт С++
1040 / 819 / 48
Регистрация: 30.04.2011
Сообщений: 1,659
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
4 / 4 / 0
Регистрация: 06.03.2011
Сообщений: 319
23.05.2011, 22:03  [ТС] #11
Она и #include <math.h> заработала)
ValeryLaptev
Эксперт С++
1040 / 819 / 48
Регистрация: 30.04.2011
Сообщений: 1,659
23.05.2011, 22:19 #12
Цитата Сообщение от yuliyayuliya28 Посмотреть сообщение
Она и #include <math.h> заработала)
Это - устаревшая форма написания. По стандарту С++ надо писать
#include <cmath>
Ведь у вас один инклуд написан правильно:
#include <cstdlib>
yuliyayuliya28
4 / 4 / 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
Эксперт С++
1040 / 819 / 48
Регистрация: 30.04.2011
Сообщений: 1,659
23.05.2011, 22:26 #14
Первый вариант - правильный.
А какую ошибку выдает - покажите.
valeriikozlov
Эксперт C++
4670 / 2496 / 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;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.05.2011, 22:34
Привет! Вот еще темы с ответами:

Ошибка: функция не принимает 1 аргумент - C++
Извините за нубский вопрос, но как с этого работающего кода double a,b; char op; cin &gt;&gt; a &gt;&gt; op &gt;&gt; b; switch(op){ ...

Функция меню - ошибка в коде - C++
Здравствуйте, уважаемое сообщество. Пожалуйста, укажите, в чем моя ошибка. Задание следующее. Нужно создать 4 функции - заполнение...

Ошибка: функция не принимает 1 аргумент - C++
Не пойму в чём дело. Ошибку выдаёт на этой строчке - timeinfo = localtime (&amp;now); Вот сам код: #include &lt;iostream&gt; #include...

Функция-член в структуре. В чём ошибка? - C++
#pragma hdrstop #pragma argsused #include &lt;tchar.h&gt; #include &lt;stdio.h&gt; #include &lt;iostream&gt; struct date { int...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
23.05.2011, 22:34
Ответ Создать тему
Опции темы

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