
- •«Сборник решения задач на языке Паскаль»
- •Введение.
- •Основные понятия системы программирования.
- •Среда программирования Turbo Pascal.
- •Окно среды программирования тр7 состоит:
- •Функциональные клавиши:
- •Текстовый редактор:
- •Элементы языка программирования Паскаль. Алфавит языка тр7.
- •Типы данных в языке Pascal.
- •Идентификаторы. Константы и переменные. Выражения. Комментарий.
- •Операции тр7. Операции в языке Паскаль подразделяются на:
- •Вещественное деление Целочисленное деление Деление по модулю
- •Общий вид программы в тр7.
- •Операторы тр7.
- •Операторы ввода-вывода.
- •Моя первая программа
- •Число шестнадцать записывается так: 16
- •Оператор присваивания.
- •Составной и пустой оператор. Линейные программы и алгоритмы.
- •Варианты заданий
- •Составить программу для вычисления значения функции, при целых аргументах:
- •Составить программу для решения следующих задач:
- •Составить программу для выполнения целочисленных арифметических действий (Условный оператор, оператор выбора, операторы повтора, массивы и строки не использовать):
- •Условные и безусловные операторы в языке Паскаль.
- •Варианты заданий Используя условный оператор выполните следующие задания:
- •Составить программу для вычисления значения функции при целых аргументах:
- •2. Используя сокращенную форму записи условного оператора выполнить следующие задания:
- •3 Используя вложенные условные операторы выполнить следующие задания:
- •Составить программу для выполнения следующих действий:
- •5. Используя оператор выбора выполните следующие задания:
- •Операторы повтора в языке Паскаль.
- •Циклом с предусловием;
- •Циклом с постусловием;
- •Циклом с параметром;
- •Принцип действия цикла While:
- •Пример 1: Составить программу для вычисления суммы первых 10 натуральных чисел.
- •Общая форма записи цикла Repeat…Until
- •Принцип действия цикла Repeat…Until:
- •Общий вид цикла For…to
- •Существует ещё одна форма записи цикла с параметром:
- •Варианты заданий
- •Составить программу для организации вывода по требуемому формату:
- •Составить программу для нахождения суммы конечного ряда:
- •Составить программу для обработки данных во время ввода:
- •4. Используя цикл с предусловием выполните следующие задания:
- •5. Используя цикл с постусловием выполните следующие задания:
- •6. Используя любой удобный цикл выполните следующие задания:
- •7. Решение простейших олимпиадных задач:
- •Одномерные и двумерные массивы
- •Варианты заданий Одномерные массивы
- •Составить программу для обработки элементов массива:
- •Составить программу для анализа элементов массива:
- •Использование цикла с условием при обработке элементов массива:
- •Перестановка, вставка и удаление элементов массива:
- •Логические задачи:
- •Двумерные массивы
- •Составить программу для обработки двумерного массива.
- •Литерные величины
- •Операции над строками:
- •Варианты заданий.
- •Составить программу осуществляющую поиск в строке:
- •Составить программу осуществляющую поиск и замену в строке:
- •Составить программу осуществляющую обработку цифр в строке:
- •Подпрограммы.
- •Подпрограммы-функции.
- •Подпрограммы-процедуры.
- •Область видимости идентификаторов.
- •Формальные и фактические параметры.
- •Параметры-значения, параметры-переменные, нетипизированные параметры.
- •Модули.
- •Варианты заданий.
- •Файловый тип данных
- •Варианты заданий.
- •1. Составить программу осуществляющую поиск в строке:
- •2. Составить программу осуществляющую поиск и замену в строке:
- •3. Составить программу осуществляющую обработку цифр в строке:
- •Множества
- •Варианты заданий.
- •Текстовый режим
- •Варианты заданий.
- •Составить программу для вывода заданного слова, заданного цвета в заданной строке на заданном фоне:
- •Составить программу для вывода букв заданного слова, в заданной строке на заданном фоне:
- •Варианты заданий.
Операторы повтора в языке Паскаль.
Очень часто мы встречаемся с вычислительными задачами, для решения которых требуется многократно повторять одни и те же действия, которые выполняются до тех пор, пока соблюдается некоторое заранее поставленное условие. Именно для решения таких задач и используются операторы повтора.
Операторы повтора используются для составления циклических программ.
Программа называется циклической, если она выполняется до тех пор, пока соблюдается поставленное условие.
Цикл – это последовательность операторов, которая может выполняться более одного раза.
Операторы повтора в ТР7 представлены следующими циклами:
Циклом с предусловием;
Циклом с постусловием;
Циклом с параметром;
Ц
и к л с п р е д у с л о в и е м (While)
Общая форма записи цикла While…do
While <условие> do
begin
<серия операторов>;
end;
Указанную серию операторов называют телом цикла.
Принцип действия цикла While:
Вначале проверяется условие стоящие после слова While. Если оно соблюдается (т.е. истинное), то выполняется тело цикла (слово do – означает делать, выполнять) заключённое в операторные скобки begin…end; а затем происходит перепроверка условия. Если оно опять будет соблюдается, то тело цикла выполнится ещё раз. Этот процесс будет продолжаться до тех пор, пока условие будет соблюдаться. Как только условие перестанет соблюдаться (т.е. станет ложным), цикл завершит свою работу.
Условие в цикле While проверяется только перед выполнением цикла, но не проверяется в процессе выполнения самого тела цикла.
Если поставленное условие не соблюдается с самого начала, то тело цикла не выполнится ни разу.
Выполнение цикла пока может и не завершиться, если условие будет всё время соблюдаться (говорят, что происходит зацикливание).
Рассмотрим следующие примеры:
Пример 1: Составить программу для вычисления суммы первых 10 натуральных чисел.
Program Summa;
Var i,S:byte;
Begin
i:=1;
While i<=10 do
begin
S:=S+i;
inc(i);
end;
Writeln(‘Сумма S=’,S);
End.
Пример 2: Составить программу для вычисления первых шести членов последовательности, заданной формулой n-го члена: xn=2n-1.
Program progress;
Var x,n:integer;
Begin
Writeln;
n:=1;
While n<=6 do
begin
x:=2*n-1;
write(x,' ');
inc(n);
end;
End.
Пример 3: Составить программу, подсчитывающую сумму S, 1000 первых членов ряда.
Program summa;
Var s:real;
n:integer;
Begin
s:=0;
n:=0;
While n <1000 do
begin
n:=n+1;
s:=s+1/n;
end;
Writeln(s);
End.
Ц и к л с п о с т у с л о в и е м (Repeat…Until):
И
ногда,
приходится сталкиваться с такими
задачами, когда нужно, чтобы выполнилось
какое-либо действие, а потом проверилось
условие повторения этого действия. Для
этого служит цикл Repeat…Until.