PascalABC.net с нуля/Урок 4. Условия. Переменные: различия между версиями

Содержимое удалено Содержимое добавлено
уточнение
оформление
Строка 17:
Как видно, мы можем делать много вложенных друг в друга условий, причём как с оператором else , так и без него. Модернизируйте программу следующим образом – заставьте программу выводить одно решение уравнения, если дискриминант равен 0 , и два если больше 0. Также модернизируйте вашу функцию вычисления корня. Сделайте , чтобы функция была одна. Если на неё передаётся 0 , то она должна выводить один корень, а если что-то другое, то второй корень. Например, функция должна работать при таком вызове.
Writeln('Корни уравнения: ',Solve(sqrt(Discriminant(b,c)),0), ,', ', Solve(sqrt(Discriminant(b,c)),1));
 
Теперь, после выполнения, задания наша программа выводит всё правильно. Однако в ней есть недостатки. К примеру, функция Discriminant вычисляется много раз подряд, а могла бы вычисляться один раз. Также в нашей программе образовалось очень большое количество скобок в которых можно запутаться. Чтобы такого избежать, результат выполнения функций можно сохранять в [[w:Переменная (программирование)|'''переменную''']] и далее использовать её. ''Переменная'' отличается от константы тем, что её значение задаётсяменяется во время выполнения программы, а не во время её написания., отсюда и название.
''Переменные'' задаются оператором '''var'''(буквально можно еёперевести как перем. - то есть сокращение от слова "переменная"), который ставиться после объявления констант. Присвоение значение ''переменной'' осуществляется так же как и присвоение значение результату функции – через оператор := . Ещё одно отличие от константы заключается в том, что необходимо явно определять тип ''переменной''. Откройте файл lesson4_2.pas и обратите внимание на секцию.
 
var //Здесь объявляются переменные