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

Не понятно работает - C++

Восстановить пароль Регистрация
 
SenketsuKuro
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 5
28.10.2012, 23:28     Не понятно работает #1
программа должна выводить число, но выводит "nan". что это значит?
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
#include <iostream>
#include <math.h>
using namespace std;
 
class area_cl //базовый класс
 {
    public:
    double height, width;
 
 };
class rectangle:public area_cl //производный класс
{
     public:
     double rect;
}RK; //тег
     double area() //функция нахождения площади
     {
         area_cl ob;
         double r=ob.height*ob.width;
         return r;
     }
 
 
 int main()
 {
     area_cl ob1;
     cin>>ob1.height;
     cin>>ob1.width;
     RK.rect=area();
     cout<<RK.rect;
     return 0;
 }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2012, 23:28     Не понятно работает
Посмотрите здесь:

не понятно... C++
Не понятно C++
C++ не понятно
как i двигается понятно но вот не понятно как это делает j ? C++
Не понятно тз C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGrig
176 / 159 / 2
Регистрация: 08.10.2012
Сообщений: 422
29.10.2012, 00:01     Не понятно работает #2
Цитата Сообщение от SenketsuKuro Посмотреть сообщение
double area() //функция нахождения площади
* * *{
* * * * *area_cl ob;
* * * * *double r=ob.height*ob.width;
* * * * *return r;
* * *}
дело в том что вы инициализируете переменную базового класса и потом используете её переменные, хотя в них пустота

Добавлено через 2 минуты
Цитата Сообщение от SenketsuKuro Посмотреть сообщение
RK.rect=area();
опять же странно что компилятор это проглотил ведь класс RK не инициализирован
algoritm256
 Аватар для algoritm256
9 / 9 / 1
Регистрация: 05.02.2012
Сообщений: 147
Записей в блоге: 1
29.10.2012, 00:25     Не понятно работает #3
RK - это не класс, а объект класса rectangle
MrGrig
176 / 159 / 2
Регистрация: 08.10.2012
Сообщений: 422
29.10.2012, 05:23     Не понятно работает #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
double area(area_cl ob) //функция нахождения площади
     {
         double r=ob.height*ob.width;
         return r;
     }
 int main()
 {
     area_cl ob1;
     cin>>ob1.height;
     cin>>ob1.width;
     RK.rect=area(ob1);
     cout<<RK.rect;
     return 0;
 }
Yandex
Объявления
29.10.2012, 05:23     Не понятно работает
Ответ Создать тему
Опции темы

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