У попа была собака...
От: Chichikadze Израиль http://mika0x65.livejournal.com
Дата: 03.03.05 03:40
Оценка: 3 (1) -10 :))
Мое почтение всем.


#include <stdio.h>

void PrintAPoem();

int main(int argc, char **argv)
{
    PrintAPoem();
    return 0;
}

void PrintAPoem()
{
    printf("У попа была собака.\n");
    printf("Он ее любил.\n");
    printf("Она украла кусок мяса.\n");
    printf("Он ее убил.\n");
    printf("Убил и закопал.\n");
    printf("А на памятнике написал:\n\n");

    PrintAPoem();
}


Re: У попа была собака...
От: Pavel Dvorkin Россия  
Дата: 03.03.05 07:19
Оценка: 1 (1) +1 :))) :))) :))
Здравствуйте, Chichikadze, Вы писали:

C>Мое почтение всем.


Ты про рекурсию сегодня только узнал ? Поздравляю!
With best regards
Pavel Dvorkin
Re: У попа была собака...
От: Денис Майдыковский Россия http://www.maydyk.com
Дата: 03.03.05 07:56
Оценка: +1
Здравствуйте, Chichikadze, Вы писали:

Stack Overflow!
Re[2]: У попа была собака...
От: Chichikadze Израиль http://mika0x65.livejournal.com
Дата: 03.03.05 08:02
Оценка: +1 -1
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Здравствуйте, Chichikadze, Вы писали:


C>>Мое почтение всем.


PD>Ты про рекурсию сегодня только узнал ? Поздравляю!


Трудно вас понять, батенька. Соблаговолите оценить уж в терминах баян/не баян

И в целях самообразования прочтите:
http://en.wikipedia.org/wiki/Tail_recursion
Re[3]: У попа была собака...
От: Аноним  
Дата: 03.03.05 08:30
Оценка:
Здравствуйте, Chichikadze, Вы писали:


C>Трудно вас понять, батенька. Соблаговолите оценить уж в терминах баян/не баян


не... это надо оценивать в других терминах: лажа/не лажа
Re[4]: У попа была собака...
От: Chichikadze Израиль http://mika0x65.livejournal.com
Дата: 03.03.05 08:42
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Chichikadze, Вы писали:



C>>Трудно вас понять, батенька. Соблаговолите оценить уж в терминах баян/не баян


А>не... это надо оценивать в других терминах: лажа/не лажа


Оценивай. Только залогиниться не забудь
Re[5]: У попа была собака...
От: Nose Россия  
Дата: 03.03.05 08:48
Оценка:
Здравствуйте, Chichikadze, Вы писали:

C>Здравствуйте, Аноним, Вы писали:


А>>Здравствуйте, Chichikadze, Вы писали:



C>>>Трудно вас понять, батенька. Соблаговолите оценить уж в терминах баян/не баян


А>>не... это надо оценивать в других терминах: лажа/не лажа


C>Оценивай. Только залогиниться не забудь


о.. действительно. авторизация слетела.
Оцениваю: лажа!
Re[3]: У попа была собака...
От: Pavel Dvorkin Россия  
Дата: 03.03.05 08:49
Оценка:
Здравствуйте, Chichikadze, Вы писали:


C>Трудно вас понять, батенька. Соблаговолите оценить уж в терминах баян/не баян


Данное произведение заслуживает премии в иной номинации.

C>И в целях самообразования прочтите:


Спасибо. Я рекурсию уже выучил
With best regards
Pavel Dvorkin
Re: У попа была собака...
От: Аноним  
Дата: 03.03.05 08:50
Оценка: +2
Здравствуйте, Chichikadze!

Уважаемый, Вы отходите от канонического текста поемы!

И в этом главная проблема.
А не в стек оверфлоу.
В конце концов, "стек оверфлоу" можно пофиксить, заменив рекурсию вечным циклом, а искажение Писания — это покушение на святое.

Стромболи
Re: У попа была собака...
От: R.O. Prokopiev Россия http://127.0.0.1/
Дата: 03.03.05 08:55
Оценка:
Так-то лучше будет
#include <stdio.h>

void main()
{
    for(;;)
    {
        printf("У попа была собака.\n");
        printf("Он ее любил.\n");
        printf("Она съела кусок мяса.\n");
        printf("Он ее убил.\n");
        printf("В землю закопал.\n");
        printf("На камне написал:\n\n");
    }
}
Re[2]: У попа была собака...
От: garant  
Дата: 03.03.05 09:00
Оценка:
Здравствуй, Денис.

ДМ> Stack Overflow!


Вот-вот...
Лучше в этом случае использовать while (true).


--
Тон
Posted via RSDN NNTP Server 1.9
Re: Сказка про белого бычка...
От: R.O. Prokopiev Россия http://127.0.0.1/
Дата: 03.03.05 09:13
Оценка:
#include <stdio.h>

char buf[256];

void main()
{
    for(;;)
    {
        printf("Рассказать тебе сказку про белого бычка?\n");
        gets(buf);
        printf("Я %s, ты %s.\n\n", buf, buf);
    }
}
Re[2]: Сказка про белого бычка...
От: HiSH Россия http://m0riarty.ya.ru
Дата: 03.03.05 09:16
Оценка: :)
Здравствуйте, R.O. Prokopiev, Вы писали:

ROP>
ROP>#include <stdio.h>

ROP>char buf[256];

ROP>void main()
ROP>{
ROP>    for(;;)
ROP>    {
ROP>        printf("Рассказать тебе сказку про белого бычка?\n");
ROP>        gets(buf);
ROP>        printf("Я %s, ты %s.\n\n", buf, buf);
ROP>    }
ROP>}
ROP>


А вот уже и Buffer Overflow =)
Re[2]: Сказка про белого бычка...
От: Chichikadze Израиль http://mika0x65.livejournal.com
Дата: 03.03.05 09:20
Оценка: +1
Здравствуйте, R.O. Prokopiev, Вы писали:

ROP>
ROP>#include <stdio.h>

ROP>char buf[256];

ROP>void main()
ROP>{
ROP>    for(;;)
ROP>    {
ROP>        printf("Рассказать тебе сказку про белого бычка?\n");
ROP>        gets(buf);
ROP>        printf("Я %s, ты %s.\n\n", buf, buf);
ROP>    }
ROP>}
ROP>


Buffer overflow...
Re[3]: Сказка про белого бычка...
От: R.O. Prokopiev Россия http://127.0.0.1/
Дата: 03.03.05 09:32
Оценка: -1 :))
Здравствуйте, Chichikadze, Вы писали:

C>Buffer overflow...


Неохота было возиться со всякими STL

Напиши без Buffer overflow.
С твоим знанием языка это займет не один день
Re[4]: Сказка про белого бычка...
От: Chichikadze Израиль http://mika0x65.livejournal.com
Дата: 03.03.05 09:46
Оценка:
Здравствуйте, R.O. Prokopiev, Вы писали:

ROP>Здравствуйте, Chichikadze, Вы писали:


C>>Buffer overflow...


ROP>Неохота было возиться со всякими STL


ROP>Напиши без Buffer overflow.

ROP>С твоим знанием языка это займет не один день

libsafe
libverify
libparanoia
Re[5]: Сказка про белого бычка...
От: HiSH Россия http://m0riarty.ya.ru
Дата: 03.03.05 09:50
Оценка:
Здравствуйте, Chichikadze, Вы писали:

C>Здравствуйте, R.O. Prokopiev, Вы писали:


ROP>>Здравствуйте, Chichikadze, Вы писали:


C>>>Buffer overflow...


ROP>>Неохота было возиться со всякими STL


ROP>>Напиши без Buffer overflow.

ROP>>С твоим знанием языка это займет не один день

C>libsafe

C>libverify
C>libparanoia

fgets()?
Re: У попа была собака...
От: Voblin Россия http://maslyaew.narod.ru/
Дата: 03.03.05 10:00
Оценка: :))
Здравствуйте, Chichikadze, Вы писали:

C>[мыши погрызли]


Лучше так (VB для Ворда):
Function ATale() As String
  ATale = "У попа была собака." + vbCrLf + _
    "Он ее любил." + vbCrLf + _
    "Она съела кусок мяса." + vbCrLf + _
    "Он ее убил." + vbCrLf + _
    "В землю закопал." + vbCrLf + _
    "На могиле написал:"
End Function

Sub TellMeAboutPriestAndHisDog()
  Dim Text As String
  Text = ATale()
  While Right(Text, 1) <> "."
    Text = Text + vbCrLf + ATale()
  Wend
  Selection.TypeText Text
End Sub


Рассказывает сказку, пока она не закончится (признак окончания сказки — точка в конце предложения).
Re[5]: Сказка про белого бычка...
От: R.O. Prokopiev Россия http://127.0.0.1/
Дата: 03.03.05 10:02
Оценка:
Здравствуйте, Chichikadze, Вы писали:

C>libsafe

C>libverify
C>libparanoia
Трах-тибидох
Ахалай-махалай
Ляськи-масяськи
Re[3]: А вот так?
От: R.O. Prokopiev Россия http://127.0.0.1/
Дата: 03.03.05 10:44
Оценка:
Здравствуйте, Chichikadze, Вы писали:

C>Buffer overflow...

А вот так?

#include <string>
#include <iostream>

using namespace std;

void main()
{
    string s;
    for(;;)
    {
        cout << "Рассказать тебе сказку про белого бычка?" << endl;
        cin >> s;
        cout << "Я " << s << ", ты " << s << endl << endl;
    }
}
Re[2]: Сказка про белого бычка...
От: Socrat Россия  
Дата: 03.03.05 10:52
Оценка:
Здравствуйте, R.O. Prokopiev, Вы писали:

ROP>
ROP>#include <stdio.h>

ROP>char buf[256];

ROP>void main()
ROP>{
ROP>    for(;;)
ROP>    {
ROP>        printf("Рассказать тебе сказку про белого бычка?\n");
ROP>        gets(buf);
ROP>        printf("Я %s, ты %s.\n\n", buf, buf);
ROP>    }
ROP>}
ROP>


Это что за сказка такая?
Re[3]: Сказка про белого бычка...
От: R.O. Prokopiev Россия http://127.0.0.1/
Дата: 03.03.05 10:55
Оценка:
Здравствуйте, Socrat, Вы писали:

S>Это что за сказка такая?


Запусти, узнаешь
Re[4]: Сказка про белого бычка...
От: Socrat Россия  
Дата: 03.03.05 11:36
Оценка:
Здравствуйте, R.O. Prokopiev, Вы писали:

ROP>Здравствуйте, Socrat, Вы писали:


S>>Это что за сказка такая?


ROP>Запусти, узнаешь


Что-то на оригинал не похоже...
Re[2]: У попа была собака...
От: WFrag США  
Дата: 03.03.05 12:04
Оценка: +1
Здравствуйте, Денис Майдыковский, Вы писали:

ДМ>Stack Overflow!


Неа. Это хвостовая рекурсия. gcc, например, ее оптимизировать умеет
Re[6]: Сказка про белого бычка...
От: Chichikadze Израиль http://mika0x65.livejournal.com
Дата: 03.03.05 12:14
Оценка:
Здравствуйте, HiSH, Вы писали:

HSH>Здравствуйте, Chichikadze, Вы писали:


C>>Здравствуйте, R.O. Prokopiev, Вы писали:


ROP>>>Здравствуйте, Chichikadze, Вы писали:


C>>>>Buffer overflow...


ROP>>>Неохота было возиться со всякими STL


ROP>>>Напиши без Buffer overflow.

ROP>>>С твоим знанием языка это займет не один день

C>>libsafe

C>>libverify
C>>libparanoia

HSH> fgets()?


А какая разница? В конце концов -- читаем посимвольно, по размеру буфера
Re[4]: У попа была собака...
От: algol Россия about:blank
Дата: 03.03.05 12:52
Оценка: +2 :))
Здравствуйте, Аноним, Вы писали:

C>>Трудно вас понять, батенька. Соблаговолите оценить уж в терминах баян/не баян


А>не... это надо оценивать в других терминах: лажа/не лажа


КГ/АМ?
Re[2]: У попа была собака...
От: R.O. Prokopiev Россия http://127.0.0.1/
Дата: 03.03.05 13:11
Оценка:
Здравствуйте, Voblin, Вы писали:

V>[мыши погрызли]


.386P
.model FLAT
PUBLIC    _msg
PUBLIC    _Main
EXTRN    __imp__GetStdHandle@4:NEAR
EXTRN    __imp__WriteFile@20:NEAR
.code
COMM    _hStdOutput:DWORD
COMM    _dwNumberOfBytesWritten:DWORD
_msg    DB       "У попа была собака.", 10
        DB       "Он ее любил.", 10
        DB       "Она съела кусок мяса.", 10
        DB       "Он ее убил.", 10
        DB       "В землю закопал.", 10
        DB       "На камне написал:", 10, 10
_msgend:
_Main    PROC NEAR
    push    0fffffff5H ; STD_OUTPUT_HANDLE
    call    DWORD PTR __imp__GetStdHandle@4
    mov     DWORD PTR _hStdOutput, eax
L1: push    0; lpOverlapped 
    push    OFFSET FLAT:_dwNumberOfBytesWritten
    push    (OFFSET FLAT:_msgend) - (OFFSET FLAT:_msg)
    push    OFFSET FLAT:_msg
    push    DWORD PTR _hStdOutput
    call    DWORD PTR __imp__WriteFile@20
    jmp    SHORT L1
_Main    ENDP
END     _Main


ml.exe p.asm
link.exe p.obj kernel32.lib /subsystem:console /entry:Main

Re[3]: У попа была собака...
От: Lloyd Россия  
Дата: 03.03.05 13:17
Оценка:
Здравствуйте, garant, Вы писали:

G>Вот-вот...

G>Лучше в этом случае использовать while (true).
G>

Нет, в таком случае будет утеряна рекурсивная природа самого стихотворения.
Re[5]: У попа была собака...
От: DJ KARIES Россия  
Дата: 05.03.05 21:25
Оценка:
Здравствуйте, algol, Вы писали:

A>КГ/АМ?

Я/Г?
ntr soft: www.dkdens.narod.ru :: giref: www.retroforth.org/board/index.php?topic=177.0
Re: У попа была собака...
От: Ka3a4oK  
Дата: 06.03.05 08:01
Оценка:
КГ/АМ. Афтор не пиши больше.
... << RSDN@Home 1.1.4 beta 4 rev. 303>>
Re[2]: У попа была собака...
От: hermit. Россия  
Дата: 07.03.05 15:32
Оценка:
Здравствуйте, Ka3a4oK, Вы писали:

А какзачок то, засланый
... << RSDN@Home 1.1.3 stable >>
The darkness around me
Shores of solar sea
Oh how i wish to go down with the sun....
Re: У попа была собака...
От: Аноним  
Дата: 07.03.05 15:54
Оценка: +1
Афигеть!!!
А что так много минусов поставили то?
Вроде не баян.
Шутка может и не самая смешная, но варианты то посыпались
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.