[ 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. TPAXTOP

    TPAXTOP New Member

    Joined:
    10 Dec 2009
    Messages:
    35
    Likes Received:
    0
    Reputations:
    0
    помогите плз....передо мной вот такое задание, а в Паскале - почти 0...(

    "Обчислити суму квадратів елементів, значення яких більші, ніж 1."

    рус

    "Знайти суму квадратов элиментов, значение которых больше, чем 1."
     
  2. Thenno

    Thenno Member

    Joined:
    3 Jul 2009
    Messages:
    77
    Likes Received:
    21
    Reputations:
    0
    Как я понял, сумма квадратов это n^2 + (n+1)^2 и так далее.
    Code:
    const
      n=3;
    var
      a,i,k:integer; {если могут быть дробные, то integer меняй на real}
    begin
      k:=0;
      for i:=1 to n do
        begin
          readln (a);
          if a>1 then
            k:=k+sqr (a);
        end;
      writeln ('Sum is ', k);
      readln; //для ТурбоПаскаля
    end.
    P.S А вообще, примеров решения подобных задач полно в Googl'е. И я еще не говорю про учебники.
     
  3. coltus

    coltus New Member

    Joined:
    28 Aug 2009
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    в паскале нужно удалить из массива (0,2,0,4,0,6...20) нули..
     
  4. _nic

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

    Joined:
    5 May 2006
    Messages:
    651
    Likes Received:
    54
    Reputations:
    3
    Где метод для рисовки на канву TPanel ????
     
  5. Thenno

    Thenno Member

    Joined:
    3 Jul 2009
    Messages:
    77
    Likes Received:
    21
    Reputations:
    0
    Code:
    const n=5;
    var
      a,b:array[1..n] of integer;
      i,index:integer;
    begin
      index:=1;
      for i:=1 to n do
        readln (a[i]);
      for i:=1 to n do
        if a[i]<>0 then
          begin
            b[index]:=a[i];
            index:=index+1;
          end;
      a:=b;
      for i:=1 to index-1 do
        write (a[i]);
    end.
    Люди, юзайте Google хоть для таких-то примеров, там ВСЕ это есть.
    P.S Решение, приведенное выше, не самое мега-лучшее, но зато более наглядное, ибо без сильных заморочек.
     
  6. balyuk

    balyuk New Member

    Joined:
    22 Sep 2009
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Ну тут простенькая задача но я паскаль вабше не знаю )

    на дискете свободного места 25процентов
    Надо записать 3 файла весом 1.44 Мб
    Смогут ли они поместиться?
     
  7. ZdezBilYa

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

    Joined:
    29 Aug 2008
    Messages:
    198
    Likes Received:
    75
    Reputations:
    19
    причем тут паскаль
    объем дискеты - 1.44 Мб. Свободно 25%, значит три файла не поместятся))))
     
  8. balyuk

    balyuk New Member

    Joined:
    22 Sep 2009
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    именно надо на паскале решение написать
    и 1.44 Мб. это не обьем дискеты)
     
  9. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    хотел нагулить, но гугл feof в какой-то eof переделывает :(
     
  10. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    eof в дельфи и есть аналог feof в пыхе
     
  11. Thenno

    Thenno Member

    Joined:
    3 Jul 2009
    Messages:
    77
    Likes Received:
    21
    Reputations:
    0
    Эм... А какой тогда объем если не секрет? Или для выполнения задания необходимо применить экстрасенсорные способности?
    P.S обычные дискеты (3,5), насколько помню, как раз и были 1,44 МБ (или за ~8 лет мне память совершенно отшибло) -> программа имеет вид.

    Code:
    begin
      writeln ('Не поместятся при всем желании несчастного юзера');
    end;
     
  12. whexp

    whexp Member

    Joined:
    30 Nov 2009
    Messages:
    88
    Likes Received:
    29
    Reputations:
    5
    Есть разные дискеты с разным объемом. Наиболее популярные - 1.4mb (1440kb).
     
  13. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    HTML:
    while not Eof(tcpclnt1) do
    begin
     mmo1.Text := mmo1.Text+#13#10+tcpclnt1.Receiveln;
    end;
    ему ненравится Eof(tcpclnt1) :eek:
     
  14. whexp

    whexp Member

    Joined:
    30 Nov 2009
    Messages:
    88
    Likes Received:
    29
    Reputations:
    5
    2Ponchik, eof - символ конца файла, равный какому-либо числу, которое не может представлять другой символ (обычно -1). как ругается Eof()? что есть tcpclnt1? насколько знаю (не знаком с делфи :)) функции должен передаваться дескриптор файла.
     
  15. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    tcpclnt1 это открытый порт
    мне надо читать чё мне сервер говорит - tcpclnt1.Reciveln Если сервер послал 2 строки, а я захочу прочитать 3 раза tcpclnt1.Reciveln то прога завснет, будет ждать 3 строку, как мне узнать, сколько нужно читать tcpclnt1.Reciveln?
     
    #4915 Ponchik, 11 Dec 2009
    Last edited: 11 Dec 2009
  16. Pr0mo

    Pr0mo Member

    Joined:
    26 Nov 2009
    Messages:
    29
    Likes Received:
    31
    Reputations:
    4
    можно использовать класс TControlCanvas:

    Code:
    procedure TForm1.Button1Click(Sender: TObject);
    var
     cc: TControlCanvas;
    begin
       cc := TControlCanvas.Create;
       cc.Control := Panel1;
       cc.MoveTo(0,0);
       cc.LineTo(Panel1.Width,Panel1.Height);
    end;
    

    Не совсем понятно, пытаетесь использовать компоненты или работаете через WinSock?! Как я понимаю, то tcpclnt1 - это компонент типа TidTCPClient? К тому же в качестве аргумента функции EOF () передается файл, а не компонент
     
    1 person likes this.
  17. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    это TTcpClient ну неважно уже, я уже забил
     
  18. mobilka

    mobilka Member

    Joined:
    13 Oct 2009
    Messages:
    39
    Likes Received:
    5
    Reputations:
    0
    подскажите как сделать автопрокрутку в listbox.
     
  19. DimkO

    DimkO Banned

    Joined:
    16 Nov 2008
    Messages:
    28
    Likes Received:
    3
    Reputations:
    0
    если я правильно понял,то в listbox есть свойство listbox1.ScrollWidth :integer;потом уже сам подгоняеш под длину строки,а вертикальная появляется сама


    у меня другой вопрос,вот везде описано как в dll добавлять форму и любой компонент,только при подкл этой длл будет создаватся отдельная форма,а можно в длл хранить только компонент,и что бы он добавлялся на текущую форму?если да, то подскажите или киньте ссылку на инфу:)
     
  20. Thenno

    Thenno Member

    Joined:
    3 Jul 2009
    Messages:
    77
    Likes Received:
    21
    Reputations:
    0
    Я это собственно и подразумевал.
     
Thread Status:
Not open for further replies.