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

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

Войти
Регистрация
Восстановить пароль
 
555shiro
8 / 8 / 1
Регистрация: 01.12.2009
Сообщений: 227
#1

Сложение двух элементов - C++

18.05.2010, 21:47. Просмотров 495. Ответов 5
Метки нет (Все метки)

Здравствуйте!
произошла какая то ошибка в коде,а именно...указано внизу ввиде комментария...как исправить?

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
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
class array {
int size;
char *p;
public:
array(){p=NULL;}
array(int num);
~array (){if(p)delete[]p;}
 
char& put(int i);
char get(int i);
 
};
 
array::array (int num )
{
        p=new char[num];
        if(!p)
        {       cout<<"oshibka";
        getch();
                exit(1);
        }
        size=num;
}
 
char & array::put(int i)
{
        if(i<0 || i>=size)
        {
                cout<<"naryshenie graniz";
                getch();
                exit(1);
        }
        return p[i];
}
 
char array :: get(int i)
{
        if(i<0 || i>=size)
        {
                cout <<"oshibka v narushenii graniz";
                getch();
                exit(1);
 
        }
        return p[i];
}
int main()
{        int x;
        array a(5);
 
        a.put(4)='2';
        a.put(2)='1';
 
        cout<<a.get(4)<<a.get(2)<<"\n";
 
       x=a.get(4)+a.get(2);     //  сложение двух элементов..почему не работет такой вариант?
        
cout<<"x=";
 
  getch();
        return 0;
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2010, 21:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сложение двух элементов (C++):

Сложение элементов двух векторов с записью в третий - C++
Есть код функции (не дописанная), которая получает в качестве аргументов 2 вектора произвольных типов: template&lt;class T&gt; T&amp;...

Конкатенация двух нибблов (сложение двух полубайт в байт) - C++
Как из этих двух полубайт получить полноценный байт со значение &quot;0x3e&quot;? unsigned char first_nibbl = 0x03 unsigned char last_nibbl =...

Сложение двух массивов - C++
Вот условие задачи: Your friend is the person who does not like any limitations in the life. And when you said to him that it is totally...

Сложение двух матриц - C++
Сложение двух матриц. Приведите пожалуйста простой пример...

Сложение двух указателей - C++
Как сложить 2 указателя? Если нельзя, то почему?

Сложение двух строк - C++
Добрый вечер. Написал программу, которая переводит два числа из десятичной в двоичную систему. Необходимо теперь эти два двоичных числа...

5
IchMors
97 / 93 / 4
Регистрация: 16.05.2010
Сообщений: 310
18.05.2010, 21:51 #2
Возможно потому что х у тебя int а a.get() возвращет указатель на char?
0
Genius Ignat
1236 / 774 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
18.05.2010, 21:53 #3
cout<<"x="<<x;

Добавлено через 1 минуту
Возможно потому что х у тебя int а a.get() возвращет указатель на char?
Все там правильно возвращает, и разницы бы ни какой не было, ссылка или нет.
у меня все компилируется без проблем.
1
555shiro
8 / 8 / 1
Регистрация: 01.12.2009
Сообщений: 227
18.05.2010, 22:09  [ТС] #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main()
{        int x;
        array a(5);
 
        a.put(4)='2';
        a.put(2)='1';
 
        cout<<a.get(4)<<a.get(2)<<"\n";
 
       x=a.get(4)+a.get(2);     
        
\cout<<"x="<<x;
 
  getch();
        return 0;
 
}


теперь всё работает..только я не понял почему выводтися 99? вместо 3,ведь 2+1=3

C++
1
a.put(4)='2'; a.put(2)='1';
0
Genius Ignat
1236 / 774 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
18.05.2010, 22:12 #5
Каждый символ кодируется кодом, вот коды и слаживаются, см таблицу кодировок ASCII

Добавлено через 48 секунд
Цифра 1 это код 49 цифра 2 это код 50
1
555shiro
8 / 8 / 1
Регистрация: 01.12.2009
Сообщений: 227
19.05.2010, 18:39  [ТС] #6
теперь понятно,большое спасибо всем!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2010, 18:39
Привет! Вот еще темы с ответами:

Сложение двух матриц - C++
Даны две матрицы 2х2: а и е, которые нужно сложить. У меня при сложении в результате выводит только первый столбец, помогите найти ошибку)...

Сложение двух чисел - C++
Написать программу сложения двух чисел на Visual c++. Вот мой код. #include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; ...

Сложение двух строк - C++
вот написал что то вроде так... но не получается... что дополнить или изменить? int _tmain(int argc, _TCHAR* argv) { char a =...

Сложение двух чисел - C++
Сложение двух чисел. Как, если оба числа в диапазоне от 0 до 2*10^9 ? Если складывать 2*10^9 + 2*10^9 то long int не справляется((


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

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

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