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

Помогите с действительно простой задачкой. - C++

Восстановить пароль Регистрация
 
Leeto
 Аватар для Leeto
7 / 7 / 0
Регистрация: 23.12.2011
Сообщений: 372
Записей в блоге: 1
27.12.2011, 12:57     Помогите с действительно простой задачкой. #1
Дан код:

Код
/* Conditional expressions */
#include <stdio.h>
#include <iostream>
int main()
{
int x=1;
int y=1;
int z=1;
x+=y+=x;
printf("%d\n\n", (x<y)?y:x); // Number 1
printf("%d\n", (x<y)?x++:y++); // Number 2
printf("%d\n", x); // Number 3
printf("%d\n", y); // Number 4
system ("pause");
return 0;
}
Надо предсказать, что будет выведено на экран и объяснить почему так происходит.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.12.2011, 12:57     Помогите с действительно простой задачкой.
Посмотрите здесь:

C++ Помогите с задачкой на С++
Помогите с олимпиадной задачкой ( C++
C++ помогите с задачкой((
C++ Помогите с задачкой.
Помогите с Задачкой C++
Помогите с простой задачкой. C++
C++ Помогите с задачкой, пожалуйста. (С++)
Помогите пожалуйста с простой задачей C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
27.12.2011, 13:13     Помогите с действительно простой задачкой. #2
Leeto, а что собственно такого происходит? после оператора
C++
1
x+=y+=z;
x = 3, y = 2, z = 1 -> первый принтф выдаст 3(вполне логично, терн. условие), ii выдаст 2 (y = 2, потом к нему прибавляется 1 по правилам постинкремента), iii выдаст 3 и последний 3(постинкрементированный y)
Yandex
Объявления
27.12.2011, 13:13     Помогите с действительно простой задачкой.
Ответ Создать тему
Опции темы

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