Помощь - Поиск - Пользователи - Календарь
Полная версия: Подскажите в чем очипятка
Форум «Всё о Паскале» > Pascal, Object Pascal > Теоретические вопросы
A^xumuk
Хотел набрать прогу для вычесления небольшого алгоритма, но возникла проблема с использованием "if" и "else" как минимум...
volvo
Цитата
возникла проблема с использованием "if" и "else" как минимум...
В чем именно у тебя проблема? Синтаксически - все верно, программа компилируется. Логически - программу из 500 строк, 450 из которых if/else вряд ли кто-то будет отлаживать, так что говори, где именно у тебя проблема.
A^xumuk
не соответствие значение вводным данным...
значение Cv = 16.2 что соответствует xa=1, xb=1, xd=1;
a q m y соответствуют xa=1, xb=1, xd=2
A^xumuk
В чем именно у тебя проблема? Синтаксически - все верно, программа компилируется. Логически - программу из 500 строк, 450 из которых if/else вряд ли кто-то будет отлаживать, так что говори, где именно у тебя проблема.

А мне не нужно исправлять прогу, а только сказать в чем ошибка или что не так... (сам принцип ошибки) а все 450 я сам исправлю... уже 3 способ подобного делаю и вседа ошибка эта или другая...
volvo
В таком случае - ты потерял begin-ы и end-ы:
  if (xb = 1) then begin
if (xa = 1) then begin
if (xd = 1) then BEGIN Cv := 16.2; q := 0.4; x := 0.2; y := 0.5; m := 0.2; END;
if (xd = 2) then BEGIN Cv := 10.8; q := 0.6; x := 0.2; y := 0.3; m := 0.25 END
end
else if (xa = 2) then begin
if (xd = 1) then BEGIN Cv := 16.3; q := 0.3; x := 0.2; y := 0.5; m := 0.3; END;
if (xd = 3) then BEGIN Cv := 18.0; q := 0.6; x := 0.2; y := 0.3; m := 0.25 END
end
else if (xa = 3) then begin
if (xd = 1) then BEGIN Cv := 10.5; q := 0.3; x := 0.2; y := 0.65; m := 0.4; END;
if (xd = 3) then BEGIN Cv := 100.6; q := 0.3; x := 0; y := 0.65; m := 0.4 END
end
end
A^xumuk
Если только в моей не внимательности ошибка, то разберусь.
Примного блогадарен...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.