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

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

Войти
Регистрация
Восстановить пароль
 
Student15
0 / 0 / 0
Регистрация: 06.09.2013
Сообщений: 5
#1

Как изменить код программы чтобы все условия выполнялись должным образом? - C++

06.09.2013, 11:23. Просмотров 294. Ответов 8
Метки нет (Все метки)

Здравствуйте! Вот код программы:

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
51
52
53
54
55
56
57
58
#include <iostream>
#include <time.h>
#include <math.h>
using namespace std;
 
int t;
 
class temp
{
public:
void temperature()
 
   {
int y;
 
int x[4] = {1,2,3,4};
y = x[4]^2-x[4];
 
srand (unsigned (time(0)));
int t = rand()%(y+1)+5;
cout << "t = "  << t << endl;
   }
};
class externalsensor
{
public:
void external()
 
   {
cout << "external sensor \n" << endl;
temp mytemp;
mytemp.temperature();
   }
};
class radiator
{
public:
void heat()
   {
cout << "radiator "<< endl;
 
if ( t >= 25)
cout << "turn off" << endl;
 
else
cout  << "turn on" << endl;
   }
};
int main()
{
    externalsensor myexternalsensor;
    myexternalsensor.external();
 
    radiator myradiator;
    myradiator.heat();
 
    return 0;
}
При его выполнении условие if ( t >= 25) не выполняется при том что обратное действует при всех значениях. Помогите исправить это чтобы обе функции выполнялись по заданным им условиям. (если ответ окажется тривиальным прошу не обижаться, так как изучаю С++ не больше трех недель)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.09.2013, 11:23     Как изменить код программы чтобы все условия выполнялись должным образом?
Посмотрите здесь:

C++ Изменить код программы
Будет ли работать должным образом конструктор копирование с указателем? C++
C++ Есть код программы на вычисление количества слов, как изменить условие?
C++ Как изменить код, чтобы не было ошибки "expected initializer before void"
Изменить код программы C++
Как переделать код, чтобы изменить интерфейс до неузнаваемости? C++
C++ Изменить функцию, чтобы все условия выполнялись в цикле
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Raali
622 / 326 / 34
Регистрация: 06.07.2013
Сообщений: 1,049
Завершенные тесты: 1
06.09.2013, 11:26     Как изменить код программы чтобы все условия выполнялись должным образом? #2
Цитата Сообщение от Student15 Посмотреть сообщение
y = x[4]^2-x[4];
тут как я понял нужно в степень возвести ^2 в С++ не прокатит. y = x[4]*x[4]-x[4];
Student15
0 / 0 / 0
Регистрация: 06.09.2013
Сообщений: 5
06.09.2013, 11:35  [ТС]     Как изменить код программы чтобы все условия выполнялись должным образом? #3
Так программа то компилируется и числа выдаются правильно, дело в том что функции в классе radiator не выполняются должным образом.
Raali
622 / 326 / 34
Регистрация: 06.07.2013
Сообщений: 1,049
Завершенные тесты: 1
06.09.2013, 11:38     Как изменить код программы чтобы все условия выполнялись должным образом? #4
Цитата Сообщение от Student15 Посмотреть сообщение
классе radiator не выполняются должным образом.
то есть выводит t > 25 и не пишет "turn off"?
Student15
0 / 0 / 0
Регистрация: 06.09.2013
Сообщений: 5
06.09.2013, 11:41  [ТС]     Как изменить код программы чтобы все условия выполнялись должным образом? #5
Да, и при этом пишет "turn on"
Raali
622 / 326 / 34
Регистрация: 06.07.2013
Сообщений: 1,049
Завершенные тесты: 1
06.09.2013, 11:43     Как изменить код программы чтобы все условия выполнялись должным образом? #6
вот в чем ошибка. в классе temp создается новая своя переменная int t = rand....
она не меняет глобальную t
Student15
0 / 0 / 0
Регистрация: 06.09.2013
Сообщений: 5
06.09.2013, 11:49  [ТС]     Как изменить код программы чтобы все условия выполнялись должным образом? #7
И как это исправить?
Raali
622 / 326 / 34
Регистрация: 06.07.2013
Сообщений: 1,049
Завершенные тесты: 1
06.09.2013, 11:50     Как изменить код программы чтобы все условия выполнялись должным образом? #8
дак вместо объявления int t = rand... использовать уже созданную t = rand..
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.09.2013, 11:52     Как изменить код программы чтобы все условия выполнялись должным образом?
Еще ссылки по теме:

Условие цикла не работает должным образом C++
C++ Как сделать так , чтобы если все 3 условия не выполняются , то вывести что то
Поиск осущевствляется должным образом C++
C++ Как дополнить код Windows программы, чтобы она отобразила в окне геометрическую фигуру?
C++ Стек. Что добавить в код, или как изменить его, чтобы в нём были структуры ?

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

Или воспользуйтесь поиском по форуму:
Student15
0 / 0 / 0
Регистрация: 06.09.2013
Сообщений: 5
06.09.2013, 11:52  [ТС]     Как изменить код программы чтобы все условия выполнялись должным образом? #9
Спасибо тебе большое!
Yandex
Объявления
06.09.2013, 11:52     Как изменить код программы чтобы все условия выполнялись должным образом?
Ответ Создать тему
Опции темы

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