Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2013, 22:08   #1
ethic
Новичок
Джуниор
 
Регистрация: 17.04.2013
Сообщений: 1
По умолчанию Задача делфи! Дана строка символов, состоящая из произвольных десятичных цифр, разделенных пробелами.Вывести четные числа строки

Помогите! Завтра сдавать лабы) очень прошу...

Вот условие - Дана строка символов, состоящая из произвольных десятичных цифр, разделенных пробелами. Вывести четные числа этой строки.



Код:
unit tema5;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons;

type
  TForm1 = class(TForm)
    Label2: TLabel;
    Label3: TLabel;
    BitBtn1: TBitBtn;
    ComboBox1: TComboBox;
    Label1: TLabel;
    procedure FormActivate(Sender: TObject);
    procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);
    procedure ComboBox1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

    // Обработка события активизации формы
procedure TForm1.FormActivate(Sender: TObject); 
begin
ComboBox1.SetFocus;                                  // Передача фокуса ComboBox1
end;

   // Обработка события нажатия левой клавиши мыши
procedure TForm1.ComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin                                    // Если нажата клавиша Enter, то...
ComboBox1.Items.Add(ComboBox1.Text);  // Строка из окна редактирования 
                                                                      // заносится  в список выбора
ComboBox1.Text:='';                                    // Очистка окна редактирования
                 end;
end;

procedure TForm1.ComboBox1Click(Sender: TObject);
var st : string;
     n,i,nst,ind: integer;
begin
  n:=0;                                                           // Содержит число слов
      ind:=0;
  nst:=ComboBox1.ItemIndex;                     // Определение номера выбранной строки
  st:=ComboBox1.Items[nst];             // Занесение выбранной строки в переменную st
    for i:=1 to Length(st) do begin                 // Просмотр всех символов строки st
       case ind of
           0 : if st[i]<>' ' then begin                   // Если встретился символ после пробела
                 ind:=1;
                  n:=n+1;                                     // Число слов увеличивается на единицу
                                 end;
           1 : if st[i]=' ' then ind:=0;                  // Если встретился пробел после символов
                             end;
         end;

   Label3.Caption:=IntToStr(n);                 // Вывод числа слов в Label3

end;

end.

Буду очень благодарен!


______________
1) Название темы по правилам форума должно адекватно отражать суть решаемой задачи/проблемы.
На первый раз я исправил.
В последующем, темы с подобным названием будут закрываться или удаляться,
а автор такой темы будет получать штрафные баллы.

Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(это кнопочка на панели форматирования с решёточкой #)


Учтите это на будущее.

Модератор.

Последний раз редактировалось Serge_Bliznykov; 18.04.2013 в 00:46.
ethic вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дана строка, состоящая из русских слов, набранных заглавными буквами и разделенных пробелами (одним или несколькими) NeLIN Общие вопросы C/C++ 1 12.12.2012 23:07
. Задана строка символов. состоящая из отдельных слов, разделенных пробелами. Преобразовать ее, оставив в ней только первые два Proskurina Паскаль, Turbo Pascal, PascalABC.NET 1 29.05.2012 19:35
. Задана строка символов. состоящая из отдельных слов, разделенных пробелами. Преобразовать ее, оставив в ней только первые два Proskurina Помощь студентам 1 29.05.2012 19:34
Строки в Delphi: строка символов, состоящая из десятичных цифр, разделенных пробелами. Вывести числа в возрастающем порядке Dashylia Помощь студентам 2 18.03.2012 14:03
Дана строка, состоящая ровно из двух слов, разделенных пробелом. Переставьте эти слова местами. just_dake Помощь студентам 3 29.05.2011 13:35