Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.06.2016, 14:47   #11
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,830
По умолчанию

Цитата:
Вот.
Так #define M_PI уберите, оно уже определено

Цитата:
Не подскажете как?
Код:
if((C > ...) && (C < ...))
p51x вне форума Ответить с цитированием
Старый 27.06.2016, 14:51   #12
Narsky
Форумчанин
 
Регистрация: 21.06.2016
Сообщений: 109
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Так #define M_PI уберите, оно уже определено


Код:
if((C > ...) && (C < ...))
Убрал, пишет ошибку, что идентификатор "M_PI" не определен.

А что делать в случае, если номер билет будет, допустим, 004142? Технически ведь такое может быть.
Narsky вне форума Ответить с цитированием
Старый 27.06.2016, 15:02   #13
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Чтобы пользоваться

M_PI

тебе надо прописать:

#define _USE_MATH_DEFINES // for C++
#include <cmath>

А вы такое учили? Преподаватель не будет лишних вопросов задавать?

Или лучше написать так const double Pi=3.14;
ura_111 вне форума Ответить с цитированием
Старый 27.06.2016, 15:02   #14
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,830
По умолчанию

Цитата:
Убрал, пишет ошибку, что идентификатор "M_PI" не определен.
Ну так прочитайте ссылку
Цитата:
To use them, you must first define _USE_MATH_DEFINES and then include cmath or math.h.
Цитата:
А что делать в случае, если номер билет будет, допустим, 004142? Технически ведь такое может быть.
И? Получите 4142 и сравнивайте... или что вам надо от этого числа?

Цитата:
А вы такое учили? Преподаватель не будет лишних вопросов задавать?
Не будет. Это стандартно для студии и везде описано. Гугл не так страшен.

Цитата:
Или лучше написать так const double Pi=3.14;
А почему не 3.142, или 3.1415, или float? А почему не дефайн? Не надо привыкать к вредному - потому смотришь на работу таких, а там в каждом модуле по разному стандартные константы определены... хорошо, если имена не пересекаются.

Последний раз редактировалось p51x; 27.06.2016 в 15:06.
p51x вне форума Ответить с цитированием
Старый 27.06.2016, 15:11   #15
Narsky
Форумчанин
 
Регистрация: 21.06.2016
Сообщений: 109
По умолчанию

Цитата:
Или лучше написать так const double Pi=3.14;
Сделал, все заработало, спасибо.
Цитата:
И? Получите 4142 и сравнивайте... или что вам надо от этого числа?
Вот задача:
Цитата:
Проверка для заданного числа, является ли оно номером «счастливого» билета. Пользователь вводит натуральное число. Программа определяет, является ли оно номером «счастливого» билета, и выводит соответствующее сообщение. «Счастливым» называется билет, в номере которого сумма трех первых цифр совпадает с суммой трех последних (номер шестизначный).
Т.е. если будет 004142, то не будет удовлетворять условиям, хотя должно.
Окончательный вариант 1 программы, посмотрите пожалуйста, все ли хорошо?
Цитата:
/*Нахождение объема конуса. Написать программу, которая запрашивает у пользователя высоту и радиус основания конуса, рассчитывает объем и выводит результат вычисления на экран. При составлении программы учесть, что высота и радиус основания конуса – положительные величины.*/
#include <iostream>
using namespace std;

int main()
{
setlocale(LC_ALL, "Russian");
double h, r, V;
const double Pi=3.14;
cout << "Введите высоту:" << endl;
cin >> h;
if (h > 0)
{
cout << "Введите радиус:" << endl;
cin >> r;
if (r > 0)
{
double r2 = pow ( r, 2 ) / 3;
V = Pi*r2*h;
cout << "Объем конуса равен:" << V << endl;
}
else cout << "Ошибка! Радиус не может быть отрицательным!" << endl;
}
else cout << "Ошибка! Высота не может быть отрицательной" << endl;
system ("pause");
return 0;
}
Narsky вне форума Ответить с цитированием
Старый 27.06.2016, 15:17   #16
Narsky
Форумчанин
 
Регистрация: 21.06.2016
Сообщений: 109
По умолчанию

Цитата:
А почему не дефайн?
Пробовал через дефайн, затем присваивал pi = M_PI, все равно выдает ошибку: требуется выражение.
Narsky вне форума Ответить с цитированием
Старый 27.06.2016, 15:21   #17
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,830
По умолчанию

Вы бред писали, а не пробовали. Вы константу объявляли пустой строкой и что вы хотели от этого получить?
p51x вне форума Ответить с цитированием
Старый 27.06.2016, 15:27   #18
Narsky
Форумчанин
 
Регистрация: 21.06.2016
Сообщений: 109
По умолчанию

Все сделал. Извините, думал, что константа должна сама принимать значение, раз уж подключили библиотеку cmath. Можно еще вопрос? Стоит ли в этой задаче использовать цикл while для ввода повторного значения при ошибочном первом?
Narsky вне форума Ответить с цитированием
Старый 27.06.2016, 15:32   #19
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,830
По умолчанию

Цитата:
Извините, думал, что константа должна сама принимать значение, раз уж подключили библиотеку cmath.
Она и примет, если вы все-таки прочитаете ссылку или мое цитирование.

Цитата:
Стоит ли в этой задаче использовать цикл while для ввода повторного значения при ошибочном первом?
Зависит от задания. Обычно при некорректном вводе переспрашивают, но и добавляют кнопку для выхода.
p51x вне форума Ответить с цитированием
Старый 27.06.2016, 15:51   #20
Narsky
Форумчанин
 
Регистрация: 21.06.2016
Сообщений: 109
По умолчанию

А можно ли как-нибудь сперва объявить номер билета как char, затем определить размер, выполнить проверку и привести тип к int, оставив числа прежними?
Narsky вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
OpenGL Основание конуса перетекает в вершину lnKod C++ Builder 0 03.06.2016 18:26
составить программу для вычисления обьема конуса arai uzbekova Паскаль, Turbo Pascal, PascalABC.NET 1 03.03.2013 21:57
Вычислить объём цилиндра и конуса shablakov Паскаль, Turbo Pascal, PascalABC.NET 2 18.12.2012 12:46
Рассчитать площадь поверхности конуса: Не найду ошибку в ассемблере Skender Помощь студентам 2 24.09.2011 12:08
Рисование тени конуса bill Gamedev - cоздание игр: Unity, OpenGL, DirectX 0 12.12.2010 17:43