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

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

Войти
Регистрация
Восстановить пароль
 
 
Zig_Stas
8 / 8 / 1
Регистрация: 26.10.2013
Сообщений: 55
#1

Не могу понять, почему? - C++

26.10.2013, 12:17. Просмотров 425. Ответов 16
Метки нет (Все метки)

Доброго времени суток=) Такая печаль. Создается класс Окружность с полями радиус, площадь и длина окружности. Нужно создать функции подсчета площади и окружности и функцию вывода информации об окружности. Функции считают правильно, но какие-то проблемы с выводом. Помогите, пожалуйста.
Вот код:
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
#include <iostream>
#include <math.h>
using namespace std;
class okr
{ 
protected: 
    int r; 
    float S,C;  
public:
 
float vichS (int r, float S);
float vichC (int r, float C);
float getS(){return S;};
float getC(){return C;};
int getr(){return r;};
void printokr();
};
 
float okr::vichS (int r, float S)
{
  S=3.14*r*r;
  return S;
}
 
float okr::vichC (int r, float C)
{
  C=2*3.14*r;
  return C;
}
void okr::printokr()
{
 cout<<"Радиус="<<getr()<<endl;
 cout<<"Площадь="<<getS()<<endl;
 cout<<"Длина="<<getC()<<endl;
}
 
 
void main ()
{
 setlocale (LC_ALL, "rus");
 int r;
 float S=0,C=0;
 cout<<"Введите радиус окружности"<<endl;
 cin>>r;
 okr ok;
 ok.vichS(r,S);
 ok.vichC(r,C);
 ok.printokr();
 system ("pause"); 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2013, 12:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не могу понять, почему? (C++):

Не могу понять почему - C++
Есть кода программы(код взят разобраться): #include&lt;iostream&gt; using namespace std; class coord { protected: public: int x,y; ...

Не могу понять почему... - C++
#include &quot;stdafx.h&quot; void main() { funct(); _getch(); } void funct() {

не могу понять,почему не идет - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;math.h&gt; struct crs Matrix { int N; int Nz;...

Не могу понять почему не вычисляет - C++
Ребят, помогите. Запускаю программу, все значения совпадают кроме -1, там напротив должен 0 стоят, а выдает такое: -3.2814e-015 XN=-3,...

не могу понять почему не работает - C++
Пожалуйста ,помоги,найти ошибку... услвие задачи Подсчитать количество вхождений букв и слов в тексте #include&lt;fstream.h&gt; ...

ошибка не могу понять почему ! - C++
#include &lt;iostream&gt; #include &lt;Windows.h&gt; using namespace std; const int col=20; //создание структуры для библиотеки struct...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
scotty
28 / 28 / 1
Регистрация: 09.09.2012
Сообщений: 131
26.10.2013, 12:32 #2
а зачем ты создал метод который вызывает другой метод\? выводи сразу переменные класса в одном просто методе класса.
skihipon
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 10
26.10.2013, 12:33 #3
Всем привет... Помогите нужно написать уравнение. Написал но все равно не работает
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <math.h>
#include <iostream.h>
#include <conio.h>
int main()
{
float s,t,y;
cout << (" vvod s:");
cin >>s;
cout << (" vvod t:");
cin >> t;
if (fabs(s)<1)
 {y=log(s+1)+t;} 
   else 
   {if (fabs(s)>1)
    {y=log(fabs(s));;}
       }
   cout << ("y=") <<(y);
  getch();
}
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
26.10.2013, 12:40 #4
Так-то лучше
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
#include <iostream>
#include <cmath>
using namespace std;
 
class Circle {
private:
    float r;
public:
    Circle(int r_);
    float getRadius();
    float getSquare();
    float getLength();
};
 
Circle::Circle(int r_) : r(r_) {}
 
float Circle::getRadius() {
    return r;
}
 
float Circle::getSquare() {
    return M_PI * pow(r, 2);
}
 
float Circle::getLength() {
    return 2 * M_PI * r;
}
 
int main() {
    setlocale(LC_ALL, "Russian");
    int r;
    cout << "Введите радиус окружности: ";
    cin >> r;
 
    Circle circle(r);
 
    cout << "Радиус=" << circle.getRadius() << endl;
    cout << "Окружность=" << circle.getLength() << endl;
    cout << "Площадь=" << circle.getSquare();
    cin.get();
}
Zig_Stas
8 / 8 / 1
Регистрация: 26.10.2013
Сообщений: 55
26.10.2013, 12:40  [ТС] #5
Цитата Сообщение от scotty Посмотреть сообщение
а зачем ты создал метод который вызывает другой метод\? выводи сразу переменные класса в одном просто методе класса.
Все, нашел ошибку=)
skihipon
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 10
26.10.2013, 12:43 #6
А мне помочь можно?) Пожалуйста
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
26.10.2013, 12:45 #7
Цитата Сообщение от skihipon Посмотреть сообщение
Всем привет... Помогите нужно написать уравнение. Написал но все равно не работает
#include <math.h>
#include <iostream.h>
#include <conio.h>
int main()
{
float s,t,y;
cout << (" vvod s:");
cin >>s;
cout << (" vvod t:");
cin >> t;
if (fabs(s)<1)
{y=log(s+1)+t;}
else
{if (fabs(s)>1)
{y=log(fabs(s));;}
}
cout << ("y=") <<(y);
getch();
}
В чем заключается проблема?
skihipon
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 10
26.10.2013, 12:51 #8
Цитата Сообщение от sovaz1997 Посмотреть сообщение
В чем заключается проблема?
пишет в visual ошибка где то в строке include вот лог
Add directive to 'stdafx.h' or rebuild precompiled header
1>c:\users\никита\documents\visual studio 2013\projects\consoleapplication10\consoleapplication10\consoleapplication10.cpp(2): warning C4627: '#include <iostream.h>': skipped when looking for precompiled header use
1> Add directive to 'stdafx.h' or rebuild precompiled header
1>c:\users\никита\documents\visual studio 2013\projects\consoleapplication10\consoleapplication10\consoleapplication10.cpp(3): warning C4627: '#include <conio.h>': skipped when looking for precompiled header use
1> Add directive to 'stdafx.h' or rebuild precompiled header
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
26.10.2013, 12:54 #9
Я так понял, надо было добавить одну директиву:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <math.h>
#include <iostream.h>
#include <conio.h>
#include <stdafx.h>
int main()
{
    float s, t, y;
    cout << (" vvod s:");
    cin >> s;
    cout << (" vvod t:");
    cin >> t;
    if (fabs(s) < 1){
        y = log(s + 1) + t;
    }
    else {
        if (fabs(s) > 1){
            y = log(fabs(s));
        }
    }
    cout << ("y=") << (y);
    getch();
}
P.S. Привык форматировать код
scotty
28 / 28 / 1
Регистрация: 09.09.2012
Сообщений: 131
26.10.2013, 12:54 #10
ты походу создалне пустой проект а с хедером stdafx.h, а потом удалил его, верно?

P.S. Привык форматировать код
Тебе можно кидать просто код почитать, а в ответ получить уже более читабельный код?)
skihipon
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 10
26.10.2013, 13:00 #11
не робит... да я создал новый проект, вставил код, больше ничего не трогал.
ссылка на уравнение
https://www.dropbox.com/s/jvdypsbv48...2022.04.15.png
15-ое уравнение
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
26.10.2013, 13:10 #12
Цитата Сообщение от scotty Посмотреть сообщение
ты походу создалне пустой проект а с хедером stdafx.h, а потом удалил его, верно?



Тебе можно кидать просто код почитать, а в ответ получить уже более читабельный код?)
Если исправляю ошибки, то форматирую код. Если код ужасен и трудно понять даже его смысл, то переписываю
skihipon
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 10
26.10.2013, 13:12 #13
Цитата Сообщение от sovaz1997 Посмотреть сообщение
Если исправляю ошибки, то форматирую код. Если код ужасен и трудно понять даже его смысл, то переписываю
У вас ваша версия заработала?
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
26.10.2013, 13:16 #14
Цитата Сообщение от skihipon Посмотреть сообщение
У вас ваша версия заработала?
Смотря о чем. У меня VS даже нет. Я просто посмотрел ошибку и подумал, как ее исправить)
Если об окружности, то работает
skihipon
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 10
26.10.2013, 13:22 #15
Цитата Сообщение от sovaz1997 Посмотреть сообщение
Смотря о чем. У меня VS даже нет. Я просто посмотрел ошибку и подумал, как ее исправить)
Если об окружности, то работает
Ну я про свою у меня так и не заработало...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.10.2013, 13:22
Привет! Вот еще темы с ответами:

Не могу понять почему не присваивает?( - C++
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; #include &lt;windows.h&gt; #include &lt;tchar.h&gt; #include &lt;string.h&gt; using...

Не могу понять почему не работает - C++
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; const int arrSize = 15; int main() { string Phone; ...

Не могу понять почему не работает - C++
#include &lt;iostream&gt; using namespace std; int main() { double a; double b; cout&lt;&lt;&quot;vvedite sumu deposita&quot;; cin&gt;&gt;a; ...

Не могу понять почему не работает - C++
#include &quot;stdio.h&quot; #include &quot;math.h&quot; #include &quot;conio.h&quot; #define E 1e-6 int main() { float x,y,a; int n; ...


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

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

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