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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
KeyGen
383 / 290 / 6
Регистрация: 07.08.2011
Сообщений: 789
Записей в блоге: 1
#1

Операции инкремента и декремента (префиксная и постфиксная версия). Подскажите. - C++

23.08.2011, 19:14. Просмотров 1172. Ответов 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
#include <iostream>
#include <string>
 
using namespace std;
 
int main ()
{
 
     setlocale(LC_ALL, "rus");
    
 
//////////////////////////////////////////////////////// 
    //Ïî÷åìó Г*ГҐ Г±Г°Г*ГЎГ*òûâГ*ГҐГІ Гў ïåðâîì ГўГ*ðèГ*Г*ГІГҐ?
 
 // 1  
    int n1 =3;
    ++n1; 
    int n2 =3;
    n2++;
    
    cout << "\n×èñëî ++n: " << n1;
    cout << "\n×èñëî n++: " << n2;
 
 // 2
    n1 =3;
    n2 =3;
    
    cout << "\n×èñëî ++n: " << ++n1;
    cout << "\n×èñëî n++: " << n2++;
////////////////////////////////////////////////////////    
    
    cout << endl;
    system("PAUSE");
    return 0;
Выполнение:
Миниатюры
Операции инкремента и декремента (префиксная и постфиксная версия). Подскажите.  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.08.2011, 19:14     Операции инкремента и декремента (префиксная и постфиксная версия). Подскажите.
Посмотрите здесь:

Постфиксная и префиксная форма инкремента и декремента. - C++
Само задание: Написать программу с примерами постфиксной и префиксной формами инкремента и декремента. Число вводится с клавиатуры. ...

Префиксная и постфиксная запись инкремента - C++
#include &lt;iostream&gt; using namespace std; int main() { setlocale(LC_ALL, &quot;rus&quot;); int х = 1; int a = 0;

Префиксные и постфиксные операции инкремента и декремента + наследование - C++
Дано: Два класса(Counter и CountDn), следует при помощи наследования добавить функцию постфиксных операций. На то, что я набросал выдает...

Использование инкремента(Декремента) - C++
Есть три кнопки и три индикатора(лампочки). Если нажимаю кнопку-1 тогда включается лампочка нажимаю еще раз выключается. Если по одному...

Операторы инкремента и декремента - C++
Создайте в классе Circle префиксный и постфиксный операторы инкремента и декремента, воздействующие только на член-данное радиус itsRadius.

Ассоциативность инкремента декремента - C++
Всем привет. Вот такую табличку недавно нашел - http://ru.cppreference.com/w/cpp/language/operator_precedence Почему префиксный...

Вывод в поток и операция инкремента / декремента - C++
При использовании следующего оператора вывода в поток: int n = 10; cout &lt;&lt; n++ &lt;&lt; ' ' &lt;&lt; n &lt;&lt; ' ' &lt;&lt; --n &lt;&lt; endl; получил такой...

Перегрузка операции инкремента - C++
Как известно, постинкремент возвращает r-value, а преинкремент - l-value. То есть: ++(++x); // допустимо (x++)++; // ошибка...

Перегрузка постфиксной и префиксной операции инкремента - C++
Здравствуйте! У меня возник вопрос: почему выводит разный результат, казалось бы, одинаковый код Вот здесь выводит как должно: ...

Префиксная польская запись - C++
Здравствуйте, очень нужна помощь умных людей( Задача: Написать код для преобразования инфиксной записи выражения в префиксную, вообще нет...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Сыроежка
Заблокирован
23.08.2011, 19:17     Операции инкремента и декремента (префиксная и постфиксная версия). Подскажите. #2
Цитата Сообщение от KeyGen Посмотреть сообщение
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
#include <iostream>
#include <string>
 
using namespace std;
 
int main ()
{
 
     setlocale(LC_ALL, "rus");
    
 
//////////////////////////////////////////////////////// 
    //Ïî÷åìó Г*ГҐ Г±Г°Г*ГЎГ*òûâГ*ГҐГІ Гў ïåðâîì ГўГ*ðèГ*Г*ГІГҐ?
 
 // 1  
    int n1 =3;
    ++n1; 
    int n2 =3;
    n2++;
    
    cout << "\n×èñëî ++n: " << n1;
    cout << "\n×èñëî n++: " << n2;
 
 // 2
    n1 =3;
    n2 =3;
    
    cout << "\n×èñëî ++n: " << ++n1;
    cout << "\n×èñëî n++: " << n2++;
////////////////////////////////////////////////////////    
    
    cout << endl;
    system("PAUSE");
    return 0;
Что у вас не работает в первом варианте? Какой результат вы ожидали? Должно выдать на печать, что n1 и n2 равны 4., а во втором случае соответственно 4 и 3.
KeyGen
383 / 290 / 6
Регистрация: 07.08.2011
Сообщений: 789
Записей в блоге: 1
23.08.2011, 19:24  [ТС]     Операции инкремента и декремента (префиксная и постфиксная версия). Подскажите. #3
Цитата из книги:
"... a++ означает "использовать значение а при вычислении, затем увеличить на единицу"...".
В первом варианте значение изменяется не зависимо от положение декремента, во втором не меняется n2 почему такая разница?
Сыроежка
Заблокирован
23.08.2011, 19:31     Операции инкремента и декремента (префиксная и постфиксная версия). Подскажите. #4
Цитата Сообщение от KeyGen Посмотреть сообщение
Цитата из книги:
"... a++ означает "использовать значение а при вычислении, затем увеличить на единицу"...".
В первом варианте значение изменяется не зависимо от положение декремента, во втором не меняется n2 почему такая разница?
Потому что в первом выражении при завершении полного выражения имеется точка последовательности. Это означает, что побочные эффекты, то есть изменение n2 будет в этом месте завершено, то есть в переменную n2
будет записано инкриментированное выражение.
Во-втором случае будет именно так, как описано в вашей книге.
ValeryS
Модератор
6550 / 5016 / 463
Регистрация: 14.02.2011
Сообщений: 16,728
23.08.2011, 19:35     Операции инкремента и декремента (префиксная и постфиксная версия). Подскажите. #5
Цитата Сообщение от KeyGen Посмотреть сообщение
В первом варианте значение изменяется не зависимо от положение декремента, во втором не меняется n2 почему такая разница?
сам то как думаешь???
C++
1
2
3
4
5
int n1 =3;// здесь три
    ++n1; // здесь четыре
 int n2 =3;// здесь три
    n2++;  // здесь три до точки с запятой
              // а здесь уже четыре
Yandex
Объявления
23.08.2011, 19:35     Операции инкремента и декремента (префиксная и постфиксная версия). Подскажите.
Ответ Создать тему
Опции темы

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