задачку прислали
Sep. 3rd, 2006 12:07 pmДан сишный код:
main()
{
int i, N=20;
for(i = 0 ; i < N ; i--)
printf("*");
}
Найдите три способа поменять в этом коде один символ, чтобы в результате код печатал 20 звездочек.
Менять можно только по одному символу, ничего нельзя переставлять или передвигать.
Я не засекал время, сколько мне понадобилось, но, наверно, 10—15 минут...
upd: как оказалось, сам я один авторский вариант не нашел, а мой один был ошибочным.
main()
{
int i, N=20;
for(i = 0 ; i < N ; i--)
printf("*");
}
Найдите три способа поменять в этом коде один символ, чтобы в результате код печатал 20 звездочек.
Менять можно только по одному символу, ничего нельзя переставлять или передвигать.
Я не засекал время, сколько мне понадобилось, но, наверно, 10—15 минут...
upd: как оказалось, сам я один авторский вариант не нашел, а мой один был ошибочным.
no subject
Date: 2006-09-03 09:46 am (UTC)no subject
Date: 2006-09-03 10:00 am (UTC)1. i-- -> N--
2. i = 0 -> i =40 (поменял пробел на 4)
3. ; i < N -> ;-i < N (поменял пробел на -).
no subject
Date: 2006-09-03 10:07 am (UTC)no subject
Date: 2006-09-03 11:21 am (UTC)no subject
Date: 2006-09-03 11:24 am (UTC)no subject
Date: 2006-09-03 11:41 am (UTC)no subject
Date: 2006-09-03 10:52 am (UTC)3 - я этот вариант не учел... вариантов, похоже, есть четыре.
оставшиеся два (без замены пробелов) похожи между собой.
no subject
Date: 2006-09-03 11:15 am (UTC)no subject
Date: 2006-09-03 09:56 am (UTC)no subject
Date: 2006-09-03 10:46 am (UTC)я пробелы не менял, но, похоже, с пробелами вариантов таки четыре...
хинт: мой третий способ похож на твой второй.
мне задачку мылом задавали, на свои ответы я ответ еще не получил.
no subject
Date: 2006-09-03 10:52 am (UTC)no subject
Date: 2006-09-03 11:15 am (UTC)no subject
Date: 2006-09-03 11:18 am (UTC)no subject
Date: 2006-09-03 11:21 am (UTC)no subject
Date: 2006-09-03 11:23 am (UTC)for(i = 0 ; i ^ N ; i--)
но он на -20 не останавливается.
no subject
Date: 2006-09-03 11:41 am (UTC)no subject
Date: 2006-09-03 11:44 am (UTC)