![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
odalun |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 16.4.2014 Репутация: нет Всего: нет |
Здравствуйте, не могу разобраться. Второй цикл первый раз не запускается т.к. по условию y <= (x/y), после этого инкрементируется первый цикл и x уже идет с тройкой, потом по условию y <= (x/y), три делиться на два и получается 1.5 но т.к. это тип инт он округляется до 2? Я правильно понял?
Почему тогда при выполнении программы выводится двойка, если по условию 11 строчки остача не должна равняться 0? не пойму как она может вывестись если при первом запуске цикла x идет с двойкой и условие y = (x/y) не удовлетворяется, это получается 2 <= (2/2)?
Модератор: не забываем пользоваться кнопочкой "Код" Это сообщение отредактировал(а) bsa - 16.4.2014, 17:40 |
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
нет. округление производится к ближайшему меньшему по модулю целому. Т.е. 1/2 = 0, 3 / 2 = 1, -5/2 = -2
|
|||
|
||||
odalun |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 16.4.2014 Репутация: нет Всего: нет |
Так почему тогда программа выводит числа 2 и 3?
|
|||
|
||||
feodorv |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 12 Всего: 45 |
Ну, 2 и 3 - простые числа, не?
Тупо подставим x равное 2:
Видно, что цикл по y вообще не выполнится ни разу (так как при стартовом y, равном 2, имеем условие выхода из цикла 2 <= 1, что есть false). y при этом есть 2. Поэтому нижнее условие приобретает вид 2 > 1, что есть true, поэтому происходит печать. Тупо подставим x равное 3:
Видно, что цикл по y вообще не выполнится ни разу (так как при стартовом y, равном 2, имеем условие выхода из цикла 2 <= 1, что есть false). y при этом есть 2. Поэтому нижнее условие приобретает вид 2 > 1, что есть true, поэтому происходит печать. Всё правильно ![]() -------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
||||||
|
|||||||
odalun |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 16.4.2014 Репутация: нет Всего: нет |
Спасибо, все ясно понятно
![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |