[ Delphi / Pascal ] — начинающим: задаем вопросы (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by banned, 6 May 2007.

Thread Status:
Not open for further replies.
  1. HakaR

    HakaR Active Member

    Joined:
    23 Jul 2009
    Messages:
    301
    Likes Received:
    200
    Reputations:
    3
    Мда... :mad:

    Описание функции Pos()
    PHP:
    var
      
    pinteger;
    begin
      p 
    := Pos('5''12534');
      if 
    0
      then ShowMessage
    ('''5'' не найдено!')
      else 
    ShowMessage('''5'' найдено начиная с символа '+IntToStr(p));
    end;
     
  2. EndLeSSDre@M

    EndLeSSDre@M Banned

    Joined:
    18 Jul 2009
    Messages:
    142
    Likes Received:
    99
    Reputations:
    -5
    Кароче забейте))) я видать только в это вдумался)))

    ну не суть... главное мой код работает... ansipos мну больше нравится
     
  3. Диня

    Диня New Member

    Joined:
    28 Apr 2010
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Здоровенько. спасибо большое за вещь :) .
    У меня вот дело есть. Ты скорее всего слышал про чат галактика знакомств. Мне хотелось бы собрать програмку. Чтоб я давал ее другим пользователям,они пытаясь зайти в чат вводили в нее свой код востановления, а им ну там что нибудь левое высвечивалось,типо обновите версию или сервер временно не доступен. А тем временем пока они понять не могут в чем прикол прога кидала их кода восстановления мне на асю.да кстати вот она 596914946. Пожалуйста помоги. мне она очень нужна. вот она вот так выглядит http://slil.ru/28987476 .но мне нужно что бы работала на меня. Сделай плизззззззззззззз!!!если че пиши на выше указанную асю или мыло [email protected] зарание спасибо. жду ответа ;)
     
  4. GhostOnline

    GhostOnline Active Member

    Joined:
    20 Dec 2008
    Messages:
    723
    Likes Received:
    110
    Reputations:
    22
    Pos и AnsiPos - идентичные функции, обе находят подстроку в строке(в том числе и символ)
    Только AnsiPos может работать с многобайтовыми символами, по-этому она предпочтительней
     
  5. stepashka_

    stepashka_ Мотоциклист

    Joined:
    9 Nov 2009
    Messages:
    1,022
    Likes Received:
    423
    Reputations:
    234
    Подскажите как при нажатии на button остановить цикл while
     
  6. HakaR

    HakaR Active Member

    Joined:
    23 Jul 2009
    Messages:
    301
    Likes Received:
    200
    Reputations:
    3
    Обьявляешь переменную типа boolean, после нажатия присваеваешь переменной false, а в цикле проверяешь значение, если false выходим, если true - продолжаем. Вроде так...

    stepashka_, ты че чекер акков вк пишешь? :)
    Если да, юзай цикл for ... to ... do.
     
  7. stepashka_

    stepashka_ Мотоциклист

    Joined:
    9 Nov 2009
    Messages:
    1,022
    Likes Received:
    423
    Reputations:
    234
    for ... to ... do Вроде нужно юзать если знаешь точное кол-во циклов. не?
     
  8. HakaR

    HakaR Active Member

    Joined:
    23 Jul 2009
    Messages:
    301
    Likes Received:
    200
    Reputations:
    3
    Да.
    Для чекера будет типо такого цикла:
     
  9. stepashka_

    stepashka_ Мотоциклист

    Joined:
    9 Nov 2009
    Messages:
    1,022
    Likes Received:
    423
    Reputations:
    234
    Не помогло
     
  10. HakaR

    HakaR Active Member

    Joined:
    23 Jul 2009
    Messages:
    301
    Likes Received:
    200
    Reputations:
    3
    Перед началом цикла присвой переменной, значение true.
    Код кинь.
     
  11. JnK

    JnK Elder - Старейшина

    Joined:
    30 Mar 2007
    Messages:
    125
    Likes Received:
    21
    Reputations:
    0
    глобально
    PHP:
    flag:boolean=true;
    В потоке
    PHP:
    while flag do
    begin
      что то делаем
    end
    ;
    клавиша
    PHP:
    procedure TForm1.Button1Click(SenderTObject);
    begin
      Flag
    :=false;
    end;

    P.s. Команда Break останавливает работу цикла.
     
    1 person likes this.
  12. stepashka_

    stepashka_ Мотоциклист

    Joined:
    9 Nov 2009
    Messages:
    1,022
    Likes Received:
    423
    Reputations:
    234
    А for ... to ... do как остановить и потом продолжить?
     
  13. qwert135

    qwert135 New Member

    Joined:
    22 Nov 2009
    Messages:
    53
    Likes Received:
    0
    Reputations:
    0
    Всем привет.Народ, плиз помогите дописать прогу(паскаль). Она рисует куб и мне теперь надо закрасить все его грани поочередно

    Code:
    Program lab4;
    uses graph, crt;
    var
    	x, y, a, c, Driver, Mode:integer;
    	
    begin
    	Driver := detect;
    	Mode := VGA;
    	InitGraph(Driver, Mode, 'C:\FPC\2.2.0\bin\i386-win32');
    	clrscr;
    	x:=200;
    	y:=200;
    	a:=100;
    	c:=20;
    	
    	{основание нижнее}
        setcolor(15);
        line(x,y,x+a,y);
        line(x+a,y, x+a+a div 2, y-a div 2);
        line(x,y,x+a div 2, y-a div 2);
        line (x+a div 2, y-a div 2, x+a+a div 2, y-a div 2 );
        {Верхнее основание}
        line(x,y-a, x+a, y-a);
        line(x+a,y-a, x+a+a div 2, y-a-a div 2);
        line(x,y-a,x+a div 2, y-a-a div 2);
        line (x+a div 2, y-a-a div 2, x+a+a div 2, y-a-a div 2 );
    
        {передняя грань}
    	line(x,y,x, y-a);
    	line(x+a,y, x+a, y-a);
    
        {боковая грань }
    	line (x+ a div 2, y-a div 2, x+ a div 2, y -a div 2 -a);
    
        {боковая грань 2 }
    	line (x+a+ a div 2, y-a div 2, x+a+a div 2, y-a div 2 -a);
    	
    	readln;
    	CloseGraph;
    end.
    заранее благодарен.
     
  14. lark1n

    lark1n New Member

    Joined:
    23 Feb 2009
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0
    Доброго времени суток!
    Возник вопрос:
    Как написать на С++ строку с Паскаля:
    CONST st:Array[0..1] of String [5]=('left','right');
     
  15. wolmer

    wolmer Member

    Joined:
    12 May 2009
    Messages:
    438
    Likes Received:
    97
    Reputations:
    9
    сверяешь глобальную boolean переменую в начале цикла (между begin ... end), и если она true, то прекращаешь цикл процедурой break; ну и на кнопку ставишь присвоение этой boolean переменой значения true
     
  16. EndLeSSDre@M

    EndLeSSDre@M Banned

    Joined:
    18 Jul 2009
    Messages:
    142
    Likes Received:
    99
    Reputations:
    -5
    ОМГ вы опять друг другу мозг выносите)))) stepashka все очень просто!

    объявляем глобальную переменную:

    PHP:
    Form1TForm1;
    StopBoolean False;
    вот сам цикл:

    PHP:
    procedure TForm1.Button1Click(SenderTObject);
    i:integer;
    begin
    Button2
    .Enabled:=True;
    Button1.Enabled:=False;
    Stop:=False;
    for 
    i:=1 to n do
    begin
    //тут код
    Application.ProcessMessages;
    if 
    not stop then break;
    end;
    end;
    вот код остановки:

    PHP:
    procedure TForm1.Button2Click(SenderTObject);
    begin
    Stop
    :=True;
    Button2.Enabled:=False;
    Button1.Enabled:=True;
    end;
    и усе))) для тех кто решит спросить зачем я делал вот так:
    PHP:
    Button2.Enabled:=False;
    Button1.Enabled:=True;
    для того что бы в случае срабатывания этого кода:
    PHP:
    Application.ProcessMessages;
    не было возможности заново запустить цикл!

    дополняю:

    для этого можешь начальную позицию цикла объявить в глобальной переменной! и потом при нажатии он будет продолжать с того места, где закончил, например:

    объявляем глобальную переменную:

    PHP:
    Form1TForm1;
    StopBoolean False;
    k:integer;
    теперь, при остановке цикла, переменная будет оставлять свое значение там где остановилась... а чтобы обнулить можешь сделать 3 кнопку, которая будет обнулять счетчик

    вот код для первой кнопки с самим циклом:

    PHP:
    procedure TForm1.Button1Click(SenderTObject);
    i:integer;
    begin
    Button2
    .Enabled:=True;
    Button1.Enabled:=False;
    Stop:=False;
    for 
    i:=k to n do
    begin
    //тут код
    Application.ProcessMessages;
    if 
    not stop then break;
    k:=k+1;
    end;
    end;
    тем самым, если остановили, то в k останется то значение, на котором остановились!

    пы сы еси есть какие то недочеты, то не ругайте, писал на пьяную голову :rolleyes:
     
    #6056 EndLeSSDre@M, 28 Apr 2010
    Last edited: 29 Apr 2010
  17. GhostOnline

    GhostOnline Active Member

    Joined:
    20 Dec 2008
    Messages:
    723
    Likes Received:
    110
    Reputations:
    22
    Прекратите так писать, видеть не могу уже
    if stop then.....
    if not stop then.....
     
  18. RumShun

    RumShun Member

    Joined:
    27 Oct 2008
    Messages:
    283
    Likes Received:
    75
    Reputations:
    6
    помойму если чтото надо приостанавливать, а потом запускать, рациональней использовать потоки.
     
  19. EndLeSSDre@M

    EndLeSSDre@M Banned

    Joined:
    18 Jul 2009
    Messages:
    142
    Likes Received:
    99
    Reputations:
    -5
    Полностью с тобой согласен! Но так как я не умею ими пользоваться, поэтому и пишу не через потоки :( надо учить
     
  20. buchlord

    buchlord New Member

    Joined:
    7 Jan 2009
    Messages:
    23
    Likes Received:
    0
    Reputations:
    0
    Нужна помощь не выводит капчу!!

    PHP:
    unit Unit1;

    interface

    uses
      Windows
    MessagesSysUtilsVariantsClassesGraphicsControlsForms,
      
    DialogsPngImageListImgListIdHTTPIdBaseComponentIdComponent,
      
    IdTCPConnectionIdTCPClientStdCtrlsExtCtrlsIdCookieManager;

    type
      TForm1 
    = class(TForm)
        
    Image1TImage;
        
    Edit1TEdit;
        
    Button1TButton;
        
    IdTCPClient1TIdTCPClient;
        
    IdHTTP1TIdHTTP;
        
    PngImageList1TPngImageList;
        
    PngImageCollection1TPngImageCollection;
        
    IdCookieManager1TIdCookieManager;
        
    procedure Button1Click(SenderTObject);
      private
        { Private 
    declarations }
      public
        { Public 
    declarations }
      
    end;

    var
      
    Form1TForm1;

    implementation
     
    var public_keyS:string;
    {
    $R *.dfm}

    procedure TForm1.Button1Click(SenderTObject);

    var 
    FS:TFileStream;
    begin
    S
    :=IdHTTP1.Get('http://www.sms.tele2.ru/');
    public_key:=Copy(SPos('public_key'S)+1632);
    FS:=TFileStream.Create('captcha.png',FMCreate);
    IdHTTP1.Get('http://www.sms.tele2.ru/get_rni.php?'+public_key+'.png'FS);
    FS.Free;
    Image1.Picture.LoadFromFile('captcha.png');
    end;

    end.




    Не выводит капчу помогите !!!!!
     
Thread Status:
Not open for further replies.