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

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

Войти
Регистрация
Восстановить пароль
 
Михаил Кричук
1 / 1 / 0
Регистрация: 14.04.2012
Сообщений: 42
#1

Немного не получается - C++

01.06.2012, 13:38. Просмотров 414. Ответов 7
Метки нет (Все метки)

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 "stdafx.h"
#include "iostream"
#include <locale.h>
using namespace std;
 
class terms { public:
double sum, razn, pow, div;
int n,*S;
double a1;
double a2;
terms (int =5);
void vvod();
void vuvod();
void summ();
void raznn();
void poww();
void divv();
};
 
terms::terms (int nn)
{n=nn;
S=new int [n];
}
void terms::vvod()
{cout << "Введите первое число: ";
    cin >> a1;
     cout << "Введите второе число: ";
    cin >> a2;
}
void terms::vuvod()
{   cout << a1<< "+" << a2 << "=" << sum <<  endl;
    cout << a1 << "-" <<a2 << "=" << razn << endl;
    cout << a1 << "*" << a2 << "=" << pow  << endl;
    cout << a1 << "/" << a2 << "=" << div  << endl;
}
void terms::summ()
{sum  = a1 + a2;  // операция сложения
}
void terms::raznn()
{razn = a1 - a2;  // операция вычитания
}
void terms::poww()
{pow  = a1 * a2;  // операция умножения
}
void terms::divv()
{div  = a1 / a2;  // операция деления
}
    void main()
{
    setlocale(LC_ALL,"RUS");
    terms S;
    S.vvod();
    cout << S.a1<< "+" << S.a2 << "=" << S.sum <<  endl;
    cout << S.a1 << "-" <<S.a2 << "=" << S.razn << endl;
    cout << S.a1 << "*" << S.a2 << "=" << S.pow  << endl;
    cout << S.a1 << "/" << S.a2 << "=" << S.div  << endl;
    system ("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.06.2012, 13:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Немного не получается (C++):

Немного о sizeof - C++
Не могу найти. Вот такая форма оператора, с несколькими параметрами: sizeof (323, 43241, 555) Что она возвращает?

Подправьте немного... - C++
Суть задачи: найти сумму ряда с точностью 0.001 общий член n!/3^n^n вот написал какой то бред #include &quot;stdafx.h&quot; #include...

подправить немного - C++
#include &lt;iostream&gt; using namespace std; int main() { int i, j, N, M; double *a,*b,*c; cout«&quot;N = &quot;; cin»N; cout«&quot;M = &quot;;...

Немного о списках - C++
Помогите разобраться со списками(хотя бы односвязными) Подскажите пример простого кода, где реализован список как можно проще. Вот пока...

немного теории - C++
Очень долго искал в инете определение методу Итерации чтоб так сказать было разжеванно но не нашел кто поможет дать ему определение на...

немного усовершенствовать... - C++
B]как сделать так чтобы пробег автобусов генерировался randomize а не вводился с клавиатуры...?...все время получаются какие то...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
DiffEreD
1430 / 767 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
01.06.2012, 13:56 #2
По моему проблема в
C++
1
2
#include "stdafx.h"
#include "iostream"
я б заменил на
C++
1
2
#include <stdio.h>
#include <iostream>
Добавлено через 7 минут
А конструктор должен обеспечивать инициализацию всех членов
C++
1
2
3
4
terms::terms (int nn): sum(0),razn(0),pow(0), n(nn), a1(0), a2(0)
{
   S=new int [n];
}
Михаил Кричук
1 / 1 / 0
Регистрация: 14.04.2012
Сообщений: 42
01.06.2012, 13:59  [ТС] #3
Цитата Сообщение от yuron_477 Посмотреть сообщение
#include <stdio.h>
#include <iostream>
Дело не в этом она и так работает только вот ответ он не понятно как считает какие бы числа потом не вводил ответ одинаковый, причем не могу понять откуда же он берется

Добавлено через 2 минуты
Цитата Сообщение от yuron_477 Посмотреть сообщение
terms::terms (int nn): sum(0),razn(0),pow(0), n(nn), a1(0), a2(0)
{
* *S=new int [n];
}
А если подставлять это то получается все ответы он выдает 0
zuq
95 / 95 / 2
Регистрация: 10.04.2011
Сообщений: 256
01.06.2012, 14:04 #4
Цитата Сообщение от Михаил Кричук Посмотреть сообщение
Дело не в этом она и так работает только вот ответ он не понятно как считает какие бы числа потом не вводил ответ одинаковый, причем не могу понять откуда же он берется
Вы не вызываете функции для расчета величин. Можно, например, изменить функцию ввода на:
C++
1
2
3
4
5
6
7
8
9
10
11
void terms::vvod()
{
    cout << "Введите первое число: ";
    cin >> a1;
    cout << "Введите второе число: ";
    cin >> a2;
    summ();
    raznn();
    poww();
    divv();
}
Михаил Кричук
1 / 1 / 0
Регистрация: 14.04.2012
Сообщений: 42
01.06.2012, 14:09  [ТС] #5
Цитата Сообщение от zuq Посмотреть сообщение
void terms::vvod()
{
* * cout << "Введите первое число: ";
* * cin >> a1;
* * cout << "Введите второе число: ";
* * cin >> a2;
* * summ();
* * raznn();
* * poww();
* * divv();
}
И так тоже не работает а ответ везде пишет такой =-9.25596е+061
Ganibal
Заблокирован
01.06.2012, 14:16 #6
Цитата Сообщение от Михаил Кричук Посмотреть сообщение
И так тоже не работает а ответ везде пишет
Все работает. Вначале надо вызвать функцию, а потом только пытаться получать ее результат.
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
59
60
61
62
63
64
65
66
67
#include "stdafx.h"
#include "iostream"
#include <locale.h>
using namespace std;
 
class terms { public:
double sum, razn, pow, div;
int n,*S;
double a1;
double a2;
terms (int =5);
void vvod();
void vuvod();
void summ();
void raznn();
void poww();
void divv();
};
 
terms::terms (int nn)
{n=nn;
S=new int [n];
}
void terms::vvod()
{cout << "Введите первое число: ";
    cin >> a1;
     cout << "Введите второе число: ";
    cin >> a2;
}
void terms::vuvod()
{   
    
    cout << a1<< "+" << a2 << "=" << sum <<  endl;
    cout << a1 << "-" <<a2 << "=" << razn << endl;
    cout << a1 << "*" << a2 << "=" << pow  << endl;
    cout << a1 << "/" << a2 << "=" << div  << endl;
}
void terms::summ()
{sum  = a1 + a2;  // операция сложения
}
void terms::raznn()
{razn = a1 - a2;  // операция вычитания
}
void terms::poww()
{pow  = a1 * a2;  // операция умножения
}
void terms::divv()
{div  = a1 / a2;  // операция деления
}
    void main()
  {
    setlocale(LC_ALL,"RUS");
    terms S;
    S.vvod();
    S.summ();
    S.raznn();
    S.poww();
    S.divv();
 
 
    
    cout << S.a1<< "+" << S.a2 << "=" << S.sum <<  endl;
    cout << S.a1 << "-" <<S.a2 << "=" << S.razn << endl;
    cout << S.a1 << "*" << S.a2 << "=" << S.pow  << endl;
    cout << S.a1 << "/" << S.a2 << "=" << S.div  << endl;
    system ("pause");
}
Михаил Кричук
1 / 1 / 0
Регистрация: 14.04.2012
Сообщений: 42
01.06.2012, 14:23  [ТС] #7
Цитата Сообщение от Ganibal Посмотреть сообщение
Все работает. Вначале надо вызвать функцию, а потом только пытаться получать ее результат.
Спасибо теперь на будущее буду знать, а то вчера часа три сидел не знал как сделать.
DiffEreD
1430 / 767 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
01.06.2012, 14:29 #8
А не проще бы было сделать перегрузку операторов?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.06.2012, 14:29
Привет! Вот еще темы с ответами:

Немного подправить. - C++
Имеется код программы. Он рабочий, но почему то при вводе данных в программу, в документе database.txt выводятся какие то символы, но ни...

Немного теории - C++
Доброго дня, форумчане! Пишу курсач на тему Системы программирования. Препод сказал, что у меня нет информации о видах систем...

немного об указателях - C++
есть код: #include &lt;iostream&gt; #include &lt;windows.h&gt; using namespace std; int main() { int inta=1234; int...

Немного шаблонов - C++
Добрый день форумчане, у меня в порядке бреда родилась такая идея class B//базовый класс, содержит указатель на void { public: ...


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

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

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