Техника

Задам 2 вопроса)))

while(0) { ...} (Как долго будет выполняться данный цикл на Pentium 4 - 3,00 Ггц?) Около секунды Около часа Бесконечно Ни разу 2-й вопрос 1700-(550*3+4*1.5*2+4*2*(5-1))-4 =?
Первый - честно не знаю ^^
Второй - -2
Виктория Очаровашка
Виктория Очаровашка
995
Лучший ответ
Надежда Анатольевна Дзидзоева +2
Дважды вычислил в уме и дважды на калькуляторе
1. Ни разу (впрочем наиболее верный и точный ответ у Александра К). :
>> e=0
>> while 0, e=1; end
>> e
= 0

2. >> a=1700-(550*3+4*1.5*2+4*2*(5-1))-4
a =
2
По первому вопросу:
А в архитектуре процессора Pentium 4 (или вообще какого-нибудь) есть команда while???

Коли нет - так надо указать ещё язык программирования, на котором написан этот код.
Для C/С++ -согласен с Булатом - 0 интерптерируется как false и содерижмое цикла вообще не выполняется ни разу.
А вот для языка С# компилятор выдаст ошибку. Так как там с типами всё строго, он скажет, что ему нужна переменная типа System.Bool и без явного каста пошлёт подальше.
Более того, можно найти пример, в котором 0 будет именно true!!!. Так что.. .без дополнительной информации логично предполжить что "Ни разу", хотя это не всегда так.

По второму вопросу простой подсчёт даёт 2...

>^.^<
Маша Хачатурян
Маша Хачатурян
99 361
18 ответ ан второй вопрос
Кананов Архат
Кананов Архат
84 873
1. Ни разу (цикл с предпроверкой, 0 соответствует "ложь").
2. Навскидку, 2

Это что, опрос какой-то? Надо было оформить соответственно
Назначение второго вопроса не понял. А по первому – ни разу в том виде, в каком цикл в вопросе представлен. Если конец цикла добавить, то бесконечно. А вообще, надо смотреть, что вместо точек стоит. Цикл будет выполняться до тех пор, пока его результатом не станет ИСТИНА (True) или любое отличное от "ложь" значение
Надежда Анатольевна Дзидзоева Цикл ни разу не выполнится, ибо 0 соответствует "ложь". С первой же проверки обломится.
Надежда Анатольевна Дзидзоева Цикл будет выполняться до тех пор, пока его результатом не станет ЛОЖЬ