Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

очереди   Найти похожие ветки 

 
Nostalgia ©   (2010-03-22 18:53) [0]

задание такое: считывается целых чисел. Сформировать и вывести 2 очереди - парных и непарных чисел. Использовать структуру данных "очередь".
обратите внимание на обработчик события Button1Click. ошибка где то там. мне нужно чтобы в Edit1 предлагалось ввести строку,нажав на кнопку Button2 должна происходить обработка цифр в строке(в мемо 1 отправляются четные цифры, в мемо2- нечетные). Подскажите пожалуйста как єто сделать .проблема в том, что мне в Эдит нужно вводить не одну цифру, а строку цифр через пробел и они должны обрабатыватся(четные цифры в мемо1, нечетные в мемо2). есть какие-то идеи как єто реализовать ?

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs,unit2, StdCtrls;
const n=15;
type
 TForm1 = class(TForm)
   Edit1: TEdit;
   Memo1: TMemo;
   Memo2: TMemo;
   Button1: TButton;
   Label1: TLabel;
   Label2: TLabel;
   Button2: TButton;
   Label4: TLabel;
   Button3: TButton;
   procedure Button1Click(Sender: TObject);
   procedure Button2Click(Sender: TObject);
   procedure Button3Click(Sender: TObject);
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;
 q1,q2:TQueue;
 
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
 S:array[1..n] of char;
i:byte;

begin
Edit1.Text:=s;
for i:=1 to n do
read (S[i]);
if edit1.text<>"" then
if strtoint(edit1.text) mod 2=0 then
q1.qAdd(strtoint(edit1.Text))
else
q2.qAdd(strtoint(edit1.Text))
else
showmessage("введите значение");
edit1.Text:="";  
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
if not q1.qempty then
q1.view(memo1)
else
begin
memo1.Lines.Clear;
memo1.Lines.Add("четніх єлементов нет");
end;
if not q2.qempty then
q2.view(memo2)
else
begin
memo2.Lines.Clear;
memo2.Lines.Add("нечетніх єлементов нет");
end;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
q1.Free;
q2.Free;
form1.Close;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
q1:=TQueue.Create;
q2:=TQueue.Create;
end;

end.

unit Unit2;
interface
   uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;
 type
 data=integer;        // &#242;&#232;&#239; &#229;&#235;&#229;&#236;&#229;&#237;&#242;&#179;&#226; &#247;&#229;&#240;&#227;&#232;
 link=^node;
 node=record
      inf:data;         // &#179;&#237;&#244;&#238;&#240;&#236;&#224;&#246;&#179;&#233;&#237;&#229; &#239;&#238;&#235;&#229;
      next:link;      // &#226;&#234;&#224;&#231;&#179;&#226;&#237;&#232;&#234; &#237;&#224; &#237;&#224;&#241;&#242;&#243;&#239;&#237;&#232;&#233; &#229;&#235;&#229;&#236;&#229;&#237;&#242;
      end;
 TQueue=class
private
       begQ:link;   //&#226;&#234;&#224;&#231;&#179;&#226;&#237;&#232;&#234; &#237;&#224; &#227;&#238;&#235;&#238;&#226;&#243; &#247;&#229;&#240;&#227;&#232;
       endQ:link;   //&#226;&#234;&#224;&#231;&#179;&#226;&#237;&#232;&#234; &#237;&#224; &#245;&#226;&#179;&#241;&#242; &#247;&#229;&#240;&#227;&#232;
public
       constructor create;  //&#234;&#238;&#237;&#241;&#242;&#240;&#243;&#234;&#242;&#238;&#240;

       function qempty:boolean; //&#239;&#229;&#240;&#229;&#226;&#179;&#240;&#234;&#224; &#247;&#232; &#239;&#238;&#240;&#238;&#230;&#237;&#255; &#247;&#229;&#240;&#227;&#224;
       procedure qAdd(elem:data); //&#228;&#238;&#228;&#224;&#226;&#224;&#237;&#237;&#255; &#229;&#235;&#229;&#236;&#229;&#237;&#242;&#243;
       procedure qDel;  // &#226;&#232;&#235;&#243;&#247;&#229;&#237;&#237;&#255; &#229;&#235;&#229;&#236;&#229;&#237;&#242;&#243;
       procedure view(m:Tmemo); //&#239;&#229;&#240;&#229;&#227;&#235;&#255;&#228; &#229;&#235;&#229;&#236;&#229;&#237;&#242;&#179;&#226; &#247;&#229;&#240;&#227;&#232;
       end;
implementation
constructor TQueue.create;
       begin
       endQ:=nil;
       begQ:=nil;
end;
function TQueue.qempty;
       begin
       result:=begQ=nil;
       end;
procedure TQueue.qAdd;
var help:link;
begin
new(help);
help^.inf:=elem;
help^.next:=nil;
if qempty then
begin
endQ:=help;
begQ:=help;
end
else
begin
endQ^.next:=help;
endQ:=help;
end;
end;

procedure TQueue.qDel;
var help:link;
begin
help:=begQ;
if not qempty then
begin
begQ:=begQ^.next;
dispose(help);
end
else showmessage("&#247;&#229;&#240;&#227;&#224; &#239;&#238;&#240;&#238;&#230;&#237;&#255;");
if begQ=nil then endQ:=nil;
end;

procedure TQueue.view;
var cur:link;
begin
m.Lines.Clear;
cur:=begQ;
while cur<>nil do
begin
m.Lines.add(inttostr(cur^.inf));
cur:=cur^.next;
end;
end;
end.


 
Игорь Шевченко ©   (2010-03-22 19:20) [1]

Есть идеи. Найти того, кто окажет платные услуги


 
Nostalgia ©   (2010-03-22 19:25) [2]

ну и кто окажет платные услуги ?


 
Правильный$Вася   (2010-03-22 19:34) [3]


> парных и непарных чисел

это как?


 
Nostalgia ©   (2010-03-22 19:37) [4]


> Правильный$Вася   (22.03.10 19:34) [3]
> > парных и непарных чиселэто как?

парніе числа = это числа, которые делятся на 2, соответственно непарные - на 2 не делятся


 
Anatoly Podgoretsky ©   (2010-03-22 19:48) [5]

> Nostalgia  (22.03.2010 19:37:04)  [4]

Это четные и нечетные.


 
Правильный$Вася   (2010-03-22 19:49) [6]

это четные и нечетные

пАрными ботинки бывают
парнЫм - молоко


 
Nostalgia ©   (2010-03-22 20:11) [7]

и ?


 
Jeer ©   (2010-03-22 21:07) [8]


> Nostalgia ©   (22.03.10 20:11) [7]
>
> и ?


"А и Б сидели на трубе..."

А не пойти-ка тебе в думное место и крепко подумать над домашним заданием ?
Марш.


 
Nostalgia ©   (2010-03-22 21:28) [9]

хм, странно... я думала, что на форумах отвечают на вопрсы по теме, а тут безобразие какое-то... здесь наверное одни сантехники сидят и строят из себя программистов. и куда только админы смотрят....



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.044 c
15-1264678479
Илья_
2010-01-28 14:34
2010.08.27
Norton Internet Security заблокировал и удалил файл SysConst.dcu


2-1272741834
Б
2010-05-01 23:23
2010.08.27
Инициализация массива.


15-1265361958
Ghost
2010-02-05 12:25
2010.08.27
Nokia 3110c передача *.txt по синезубу


15-1266096606
Юрий
2010-02-14 00:30
2010.08.27
С днем рождения ! 14 февраля 2010 воскресенье


15-1275371179
Дмитрий С
2010-06-01 09:46
2010.08.27
Знатокам MS ISA server 2006. Настройка Publish Web Sites