Написал программу на С++ она пишет ошибку

программирование С++ програмирование

Вот она:"Warning 1 warning C4700: uninitialized local variable 'alf' used d:\my documents\visual studio 2005\projects\5\5\2.cpp 9"!!!
Что мне делать?вот код:#include <iostream>
#include <math.h>
double RadToDeg(double);
using namespace std;
int main()
{
double a,b=3,c=4,alf;

a=sqrt(pow(b,2)+pow(c,2)-2*b*c*cos(alf));
cout<<"a="<<a;
return 0;
}

double RadToDeg(double Radian)
{
const double PI=3.141592653589793;
return Radian*180./PI;
}


Примечание:
я ей давал значение!!таже фигня

Примечание:
делал я так:
#include <iostream>
#include <math.h>
double RadToDeg(double);
using namespace std;
int main()
{
double a,b=3,c=4,alf=pi/4,pi=3.14;

a=sqrt(pow(b,2)+pow(c,2)-2*b*c*cos(alf));
cout<<"a="<<a;
return 0;
}

double RadToDeg(double Radian)
{
const double PI=3.141592653589793;
return Radian*180./PI;
}
пишет:error C2065: 'pi' : undeclared identifier

Примечание:
теперь debug error пишет из-за этого pi

Примечание:
теперь debug error пишет из-за этого pi пишет что M_pi используется до иницилизации хоть вот код там же нормально все!
#include <iostream>
#include <math.h>
double RadToDeg(double);
using namespace std;
int main()
{
double a,b=3,c=4,M_Pi,alf=M_Pi/4;

a=sqrt(pow(b,2)+pow(c,2)-2*b*c*cos(alf));
cout<<"a="<<a;
return 0;
}

double RadToDeg(double Radian)
{
const double Pi=3.141592653589793;
return Radian*180./Pi;
}

Примечание:
программа работает!!просто учитель может пристать из-за этой ош
Ответы:
Вы описали переменную alf, но никакого значения ей не присвоили. А потом пытаетесь от неё косинус брать.
Надо сначала присвоить переменной какое-нибудь значение, а потом уже использовать.
> я ей давал значение!!таже фигня
Не верю. Если присвоить переменной значение, ошибка пропадёт.
Ну вот, пропала же ошибка? Теперь пишет другую. Вы сначала используете переменную pi, а потом только определяете. Конечно же, определение должно идти до использования. Поменяйте местами присваивания для alf и pi.
Так это же не ошибка. Это предупреждение, код должен компилироваться ни смотря ни на что. Конкретно в данном коде, суть скорее всего в том, что ты объявил локальную переменную, ничего ей не присвоил и передал значение косинусу. По-умолчанию локальная переменная принимает рендомное значение при объявлении.
З.Ы.
Число "пи" есть в math.h - называеться  "M_Pi".


14 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.