Процедуры STR и VAL.

В строковую переменную можно записывать не только буквы, но и цифры. Однако это будут не числа, как таковые, а их символьное представление. Для преобразования символьных представлений числа в само число, и наоборот, используются процедуры STR и VAl.

...

Textcolor, Window, Textbackground в Pascal.

Текст, который мы выводим на экран с помощью процедуры Writeln или с помощью оператора Write можно изменять. Процедура Textcolor используется для изменения цвета выводимого текста. Процедура Textbackground изменяет цвет фона, на котором выводится ...

Функции Copy, Pos, процедуры Delete, Insert.

Функция Copy позволяет копировать из строки часть символов. Функция имеет 3 параметра. Copy (st, index, count). St-строка из которой копируют, Index-номер символа, с которого начинается копирование, Count-количество символов, которое будет ...

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

Циклы с параметром. Оператор FOR.

Эти циклы организуются в программах, где заранее известно число повторений. При этом повторное выполнение сопровождается изменением управляющего параметра (переменной цикла).

Стандартные функции в Паскаль.

Наиболее часто встречающиеся операции над скалярными типами данных реализованы в языке Паскаль с помощью встроенных (иногда говорят — стандартных) функций и процедур.

Условные операторы в 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.

Комментарии  

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