Показано с 1 по 6 из 6

Тема: Условия в цикле

  1. #1

    Question Условия в цикле

    Вопрос скорее про синтаксис языка ST. Необходимо создать несколько одинаковых условий. Вот упрощенный вариант:

    IF SET1=TRUE THEN
    p1:=TRUE;
    END_IF
    ...
    IF SET16=TRUE THEN
    p16:=TRUE;
    END_IF

    Так вот, можно не писать это все 16 раз, а задать какую-либо переменную, к примеру n и задать его в цикле от 1 до 16, чтобы было только одно условие типа этого:

    FOR n:=1 TO 16
    DO
    IF SET(n)=TRUE THEN
    p(n):=TRUE;
    END_IF
    END_FOR

    Или синтаксис языка такого не позволяет?

  2. #2

    По умолчанию

    Последний раз редактировалось Wanted; 21.11.2008 в 14:55.

  3. #3

    По умолчанию

    x:array [1..20] of bool

    if x[i] then

  4. #4

    По умолчанию

    Большое спасибо. Сам задумывался насчет массивов, но не придумал, как правильно использовать

  5. #5

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    FOR n:=1 TO 16 DO
    SET(n):=p(n);
    END_FOR

    -----------

    А для Вашего конкретного случая ( N = 16 ) :

    var
    set, p : word;
    ..


    set:=p;
    Так я пробовал Но получится ли если SET1..16 это входы а P1..16 это выходы? Т.е. SET и P - BOOL

  6. #6

    По умолчанию

    Цитата Сообщение от Wanted Посмотреть сообщение
    Так я пробовал Но получится ли если SET1..16 это входы а P1..16 это выходы? Т.е. SET и P - BOOL
    я пишу упрощенные примеры, не буду же я расписывать программу полностью

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •