avva: (Default)
[personal profile] avva

Эта запись заинтересует только программистов, знающих язык C :)

Отличная задачка от [livejournal.com profile] yms, для разминки мозгов. Дан текст программы на C. Требуется найти три способа изменить в нем один символ (не добавить, не убрать, не переставить - изменить один символ), так, чтобы программа стала печатать 20 звездочек.

Программа:

main()
{
       int i, N=20;
       for(i = 0 ; i < N ; i--)
               printf("*");
}

В течение нескольких часов буду скрывать правильные ответы, потом все открою.

Update: несколько человек предложили один возможный ответ, причем правильно. Но один ответ найти относительно легко. Постарайтесь найти три разных.

Update: первым правильный ответ написал [livejournal.com profile] shigin, но он знал эту задачу раньше. Первым нашел все три ответа сейчас [livejournal.com profile] feuerbach и почти одновременно с ним [livejournal.com profile] squadette. Я не открываю правильные ответы еще несколько часов, потом открою.

Update: Все, раскрываю все комментарии, и перестаю отвечать, верно или нет, проверьте себя сами по комментариям - правильные ответы есть в них в изобилии (поэтому не заглядывайте туда, если хотите сами решить). Очень многие нашли три правильных ответа; предлагались также другие варианты, но все они по тем или иным причинам не работают, правильных ответа есть только три, насколько известно.

Date: 2006-09-03 10:02 am (UTC)
From: [identity profile] knooper.livejournal.com
заменить пробел на 4 :3

Date: 2006-09-03 10:05 am (UTC)
From: [identity profile] avva.livejournal.com
В смысле i =40? Нет, это не работает.

Date: 2006-09-03 10:20 am (UTC)
kostik: (Default)
From: [personal profile] kostik
Кроме очевидного N-- больше не вижу пока. А что, один символ можно заменить на несколько?

Date: 2006-09-03 10:34 am (UTC)
kostik: (Default)
From: [personal profile] kostik
Еще ;-i < N

Date: 2006-09-03 10:41 am (UTC)
kostik: (Default)
From: [personal profile] kostik
; i + N ; конечно.
Ходил за кофе = -10 мин, все равно долго думал. Хорошая задачка, спасибо.

January 2026

S M T W T F S
    1 2 3
45678910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 5th, 2026 03:43 am
Powered by Dreamwidth Studios