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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.12.2010, 16:31   #1
patrol
Новичок
Джуниор
 
Регистрация: 06.12.2010
Сообщений: 2
Вопрос Алгоритм

Ребят совсем замучился не могу норм код для алгоритмся написать мот кто поможет вот задание :
4. На вход поступает последовательность из 0 и 1. Машина должна выдать 1, если не встречается комбинация 011 в данной последовательности и 0 – в противном случае. Пример 0001001. Машина выдает 1.


вот программа
Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Memo1: TMemo;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  i:integer;
  stroka,itogstr: string;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Clear;

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Memo1.Clear; 
stroka:=Edit1.text;
for i:=0 to length(form1.Edit1.text) do
begin
if stroka[i]='011' then
begin
Memo1.Lines.Add('0');
end else
begin Memo1.Lines.Add('1');
end; 
end;
end;

end.
end;

End.

Последний раз редактировалось Stilet; 11.12.2010 в 19:20.
patrol вне форума Ответить с цитированием
Старый 11.12.2010, 17:34   #2
MyLastHit
Очень суровый
Участник клуба
 
Аватар для MyLastHit
 
Регистрация: 17.12.2009
Сообщений: 1,988
По умолчанию

Код:
if stroka[i]='011' then
Не так надо:
Код:
if pos('011',stroka[i])<>0 then
Скачай Библия Делфи, там есть описание всех основных ф-ий работы с строкой: pos,copy,delete,insert.
Функция Pos элементарна. Pos('строка2 которую нужно найти в строке1',строка1). Возвращает позицию строки 2 в строке 1. Соответственно если она вернула 0, то строка2 ниразу не встретилась в строке1.


PS: А зачем ты указываешь перед каждым компонентом form1. ? Ты же все делаешь итак на form1. Эти указатели используются для обмена данными между формами.
Ненавижу быть как все, но люблю, чтобы все были как я.

Последний раз редактировалось MyLastHit; 11.12.2010 в 18:23.
MyLastHit вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Алгоритм А* Claster Помощь студентам 1 24.05.2011 18:45
Алгоритм Blourid Свободное общение 16 11.08.2010 21:35
Волновой алгоритм (алгоритм Ли) MrRockchip Общие вопросы C/C++ 4 10.05.2010 13:26
Алгоритм VladimirAleks Помощь студентам 2 29.10.2009 13:11
алгоритм lucky Паскаль, Turbo Pascal, PascalABC.NET 4 07.05.2009 12:56