- •1. Этапы решения задач на эвм.
- •2. Понятие алгоритма. Способы записи алгоритмов.
- •3. Понятие о языках программирования.
- •4. История развития и классификация языков программирования.
- •5. Технологии программирования: модульное, структурное, объектно-ориентированное и визуальное.
- •6. Язык программирования Pascal abc.
- •7. Алфавит языка. Идентификаторы и служебные слова.
- •8. Структура программы. Ввод и вывод. Форматы вывода
- •9. Типы данных, их классификация и способы задания.
- •Var d, c, n : Integer;
- •10. Простейшие конструкции: переменные, константы, стандартные функции, выражения.
- •Стандартные математические функции и процедуры Турбо-Паскаля
- •11. Операторы. Классификация операторов. Запись операторов.
- •If условие then оператор1 else оператор2;
- •1..5: Writeln('Будний день');
- •6,7: Writeln('Выходной день');
- •2,5: Write(1);
- •4..6: Write(2);
- •Var n,count: integer;
- •Inc(count);
- •Var n,count: integer;
- •Inc(count);
- •12. Процедуры и функции
- •Var имя праметра: имя типа
- •Var X,y,m,n: integer;
- •14. Файлы. Типы файлов. Работа с файлами.
1..5: Writeln('Будний день');
6,7: Writeln('Выходной день');
end;
Списки выбора не должны пересекаться. Например, следующий фрагмент
case i of
2,5: Write(1);
4..6: Write(2);
end;
приведет к ошибке компиляции «Пересечение диапазонов меток в операторе case».
Оператор цикла for
Оператор цикла forимеет одну из двух форм:
for переменная:=начальное значение to конечное значение do
оператор
или
for переменная:= конечное значение downto начальное значение do
оператор
Структурное обозначение следующее:
Текст от слова forдо словаdoвключительно называетсязаголовком цикла, а оператор послеdo–телом цикла. Переменная после словаforназываетсяпараметром цикла. Если в цикле необходимо выполнить группу операторов, то ее следует заключить в операторные скобкиbegin … end. Для первой формы цикла с ключевым словомtoпараметр цикла меняется от начального значения до конечного значения, увеличиваясь всякий раз на единицу, а для второй формы ключевым словомdownto– уменьшаясь на единицу. Для каждого значения переменной-параметра выполняется тело цикла. Однократное повторение тела цикла называетсяитерацией цикла.
Если для цикла for … toначальное значение его переменной больше конечного значения или для циклаfor … downtoначальное значение переменной меньше конечного значения, то тело цикла не выполнится ни разу.
Изменение переменной-параметра цикла внутри цикла является логической ошибкой. Например, следующий фрагмент со вложенным оператором for является ошибочным:
for i:=1 to 10 do
for i:=1 to 5 do write(i);
Переменная-параметр цикла может иметь любой порядковый тип (це- лый, символьный, перечислимый или интервальный). При этом типы на- чального и конечного значения должны соответствовать типу параметра цикла. Например:
var
en: (red,green,blue,white);
c: char;
...
for en:=red to blue do write(Ord(en):2);
for c:='a' to 'z' do write(c);
Операторы цикла while и repeat
Оператор цикла whileимеет следующую форму:
while условие do оператор;
Условиепредставляет собой логическое выражение, а оператор послеdoназываетсятелом цикла. Перед каждой итерацией цикла условие вычисляется, и если оно истинно, то выполняется тело цикла, в противном случае происходит выход из цикла. Если при первом вычислении значения условия оно окажется ложным, то тело цикла не выполнится ни разу. В качестве оператора тела цикла может быть использован составной оператор, заключенный в операторные скобкиbegin … end.
Структурное обозначение следующее:
Если условие всегда оказывается истинным, то может произойти зацикливание:
while 2>1 do write(1);
Пример. Дано натуральное число n(n> 0). Подсчитать количество цифр данного числа.
Var n,count: integer;
begin
read(n); count:=0;
while n>0 do
begin
Inc(count);
n:=n div 10
end;
writeln(count)
end.
Оператор цикла repeatимеет следующую форму:
repeat
операторы
until условие;
Структурное обозначение следующее:
В отличие от цикла whileусловие вычисляется после очередной итерации цикла, и если оно истинно, то происходит выход из цикла. Таким образом, операторы, образующие тело цикла оператораrepeat, выполняются по крайней мере один раз.
Если условие всегда оказывается ложным, то может произойти зацикливание:
repeat
write(1);
until 2=1;
Задача о вычислении количества цифр данного натурального числа nможет быть решена с помощью оператора цикла с постусловием следующим образом: