Константы в Pascal.

Иногда, бывает так, что у нас в программе встречаются величины, которые не меняются в процессе выполнения программы (т.е. фактически они противоположность переменных). Такие величины называются константами. Константы указываются в специальном ...

Логические операции And, Or, Not, Xor в Pascal.

Над переменными логического типа можно производить логические операции. В языке программирования Pascal существуют следующие логические операции : Andлогическое умножение, Orлогическое сложение, Notлогическое отрицание, Xor ...

Ввод символов с клавиатуры.

Ввод символов с клавиатуры почти не отличается от ввода чисел с клавиатуры. Для того чтобы ввести какие-то символы (буквы, знаки и т.д.) с клавиатуры необходимо для переменных использовать символьный тип данных Char.

Циклы и массивы

Алфавит языка Паскаль.

Алфавит и словарь языка программирования Паскаль. Программа формируется из предложений, состоящих из лексем и разделителей, которые в свою очередь формируются из конечного набора литер, образующих ...

Организация условного перехода. Оператор IF.

Для программирования разветвляющихся процессов, содержащих две ветви, используется оператор IF условного перехода (ветвления), имеющий две конструкции.

Условные операторы в Pascal можно вкладывать друг в друга. Для этого используется вложенный оператор IF. Рассмотрим это на примере программы, которая будет считать количество корней квадратного уравнения.

 
program vetvlenija3;
uses crt;
var A, B, C, D:real;
begin 
clrscr;
write ('Введите коэффициенты A,B,C: ');
readln (A,B,C);
D:=sqr(B)-4*A*C;
if D>=0 then 
 if D>0 then 
  writeln ('Два вещественных корня') 
 else 
  writeln ('Один вещественный корень') 
else
 writeln ('Нет вещественных корней');
readln
end. 

В строке №8 вводим формулу для расчета дискриминанта. Как известно, он вычисляется по формуле D=b2 - 4ac. При записи на языке Паскаль получается выражение «sqr(B)-4*A*C». Результат этого выражения сохраняем в переменной «D»

В строке №9 проверяем 1-ое условие: если «D» больше либо равно 0, тогда начинает проверяться 2-ое условие (строка №10) о том, что «D» больше 0. Если 2-ое условие выполняется, то на экран выводится сообщение «Два вещественных корня» (строка №11). Если 2-ое условие не выполняется (строка №12), то на экран выводится сообщение в строке №13.

Строка №14. Если не выполняется 1-ое условие, то на экран выводится сообщение в строке №15.
Таким образом, нам необходимо усвоить, что если мы используем вложенный оператор If, то последний Else в программе относится к первому If, предпоследний Else – ко второму If и т.д.

vlozhennihyj operator if

Запускаем и вводим, например, 4, 8, 2 через пробел и нажимаем Enter.

vlozhennihyj operator if.


При использовании условного оператора If следует учитывать, что после служебного слова Then может стоять только один оператор (например, оператор вывода на экран Writeln, как в примере №20). Если же нам необходимо использовать несколько операторов, то их необходимо взять в блок begin..end. Для наглядности рассмотрим следующий пример.

Использование Begin…end для If.

program vetvlenija;
uses crt;
var A,B,C,D,X1,X2:real;
begin
clrscr;
write (‘Введите коэффициенты A,B,C:  ’);
readln (A,B,C);
D:=sqr(B)-4*A*C;
if D>=0 then
if D>0 then
begin
X1:=(-B+sqrt(D))/(2*A);
X2:=(-B-sqrt(D))/(2*A);
writeln (‘Два вещественных корня ’,X1:6:2,X2:6:2)
end
else
writeln (‘Один вещественный корень ’,-B/2*A)
else
writeln (‘Нет вещественных корней’);
readln
end.

Данный пример отличается от предыдущего примера тем, что здесь помимо нахождения количества корней квадратного уравнения, нужно посчитать эти корни и вывести их на экран. Таким образом, при выполнении условия в строке №9, т.е. когда дискриминант больше 0 (и соответственно уравнение содержит 2 корня) у нас после слова Then должно выполняться сразу 3 действия: операции присваивания (строка №12 и №13) и операция вывода на экран (строка №14). Все эти 3 оператора мы должны заключить в составной оператор Begin..end. Если этого не сделать, то при выполнении условия в строке №10 будет выполнен лишь один оператор, который непосредственно стоит после слова Then. Все 3 оператора должны разделяться между собой точкой с запятой. Перед словом End точку с запятой ставить не обязательно. Обратите внимание, что в строке №14 мы выводим на экран значения сразу 2-х переменных: «X1» и «X2». Эти переменные разделяются между собой запятой.

В строке №17 мы выводим на экран не конкретную переменную, а результат операции «-B/2*A». Это действие будет выполнено в том случае, если уравнение имеет один вещественный корень.

begin..end dlja if

begin..end dlja if.

Комментарии  

 
-6 # Нео 16.12.2012 13:15
После изучения етого и моих знаниях о циклах в JS и PHP я смог написать прогу которая вытерает ненужные пропуски и ноли.
Т.к. паскаль достаточно примитивный при вводи розрядности 2 после ноля он будет писать натуральные числа так: N.00 я ето исправил в своей проге для любых чисел. 8)
Хотя мне всеравно кажется что ета прога ненужная и в паскале оно само должно исправляться на N из N.00 :-)
Подскажите кто знает как так сделать ;-)
Ответить
 
 
-5 # Рома 20.12.2012 16:20
5 класс а ничё такой
Ответить
 
 
-6 # софия 28.04.2014 16:14
:-* :-* :sigh: :sigh: :eek: :eek: ооойййй как трудно
Ответить
 
 
-7 # Анатолий 20.01.2015 12:12
что значит if D=0 then ?
Ответить
 
 
-5 # Давид 26.03.2016 18:03
А в 17 строке, 2 примера, Там точное правило нахождения вещественного корня?
:-?
Ответить
 

Добавить комментарий

Защитный код
Обновить

   ГлавнаяПаскальВетвления в ПаскальВетвления в Pascal.