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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.01.2015, 23:51   #1
Виталий_ЕШКО
Пользователь
 
Регистрация: 26.07.2014
Сообщений: 14
По умолчанию Доработать программу "Светофор" на делфи

Доработать программу "Светофор", организовав вывод и второй стороны устройства, управляющей движением транспорта в поперечном направлении. Приведите тексты измененных фрагментов.
Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    procedure Timer1Timer(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  temp: integer;
  vkl:boolean;
implementation

{$R *.dfm}
procedure TForm1.Timer1Timer(Sender: TObject);
const
  Tk=5; {Время красного}
  Tz=5; {Время зеленого}
  Tp=2; {Время желтого}
procedure Lm1(cc:word);
begin
  Shape1.brush.Color:=cc;
end;
procedure Lm2(cc:word);
begin
  Shape2.brush.Color:=cc;
end;
procedure Lm3(cc:word);
begin
  Shape3.brush.Color:=cc;
end;
begin
  if temp =1 then
    begin
      Lm2(clBlack);
      Lm1(clRed):
    end;
  if temp =Tk+1 then
    begin
      Lm2(clYellow);
    end;
  if temp =Tk+Tp+1 then
    begin
      Lm2(clBlack);
      Lm1(clBlack);
      Lm3(clGreen);
    end;
  if temp =Tk+Tp+Tz+1 then
    begin
      Lm3(clBlack);
      Lm2(clYellow);
    end;
  if temp=Tk+Tp+Tz+Tp+1 then temp:=0;
  if vkl then temp:=temp+1
end;

procedure Tform1.FormCreate(Sender: TObject);
begin
  Temp:=0;
  vkl:=false
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  if vkl then
    begin
      vkl:=false;
      Button1.Caption:='Пуск';
    end;
    else
      begin
        vkl:=true;
        Button1.Caption:='Стоп';
      end;
end;

end.
Файл с текстом программы.
Вложения
Тип файла: zip Unit1.zip (696 байт, 17 просмотров)
Может и я чем Вам помогу.
Виталий_ЕШКО вне форума Ответить с цитированием
Старый 14.01.2015, 16:15   #2
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,825
По умолчанию

на готовый проект и не парься - он проще тем, что уже рабочий. а ещё лучше - разберись в моём и САМ доработай свою программу. + к опыту и знаниям. неоценимый, жирный +
Вложения
Тип файла: rar cvetofor.rar (4.6 Кб, 34 просмотров)
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 14.01.2015, 16:33   #3
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

После зеленого должен загораться желтый - зеленый должен тухнуть)))
Iron Monk вне форума Ответить с цитированием
Старый 14.01.2015, 16:43   #4
WinCoder
Заблокирован
 
Регистрация: 24.11.2014
Сообщений: 721
По умолчанию

Delete.....

Последний раз редактировалось WinCoder; 14.01.2015 в 16:50.
WinCoder вне форума Ответить с цитированием
Старый 14.01.2015, 16:51   #5
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,825
По умолчанию

Iron прав, между двумя цветами должен загораться предупреждающий жёлтый.
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 14.01.2015, 17:10   #6
Виталий_ЕШКО
Пользователь
 
Регистрация: 26.07.2014
Сообщений: 14
По умолчанию

Спасибо. Хотя желательно ответ именно по условию задачи, но спасибо.
Может и я чем Вам помогу.
Виталий_ЕШКО вне форума Ответить с цитированием
Старый 16.01.2015, 12:17   #7
Виталий_ЕШКО
Пользователь
 
Регистрация: 26.07.2014
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Виталий_ЕШКО Посмотреть сообщение
организовав вывод и второй стороны устройства, управляющей движением транспорта в поперечном направлении.
Как ЭТО написать?
Может и я чем Вам помогу.
Виталий_ЕШКО вне форума Ответить с цитированием
Старый 16.01.2015, 15:43   #8
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,825
По умолчанию

сделать рядом вторую панель и там чтоб свет менялся в полной противоположности основному. пока на одной панели зелёный - на второй панели - красный. жёлтый и там и там. а потом наоборот - на одной панели красный, а на второй зелёный.
Изображения
Тип файла: jpg блок 1.JPG (27.4 Кб, 93 просмотров)
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.

Последний раз редактировалось NetSpace; 16.01.2015 в 15:46.
NetSpace вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Постоянно слетает галочка "автоматически" в "Параметры Excel", "Формулы", "Вычисления в книге" Alexsandrr Microsoft Office Excel 4 19.10.2013 14:22
Необходимо доработать программу "Паскаль" с типизированными файлами, чтобы результат выводило в текстовый документ а не на экран. Женька Good Помощь студентам 0 09.12.2011 21:20
Как реализовать программу "тест" на делфи Anfall Помощь студентам 3 08.04.2010 23:45
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04