Оператор варианта в полной форме



Зач/контр.

 

ЛЕКЦИЯ 1.

Основы программирования на языке Turbo Pascal. Линейные программы.

 

Программа, работающая на компьютере, нередко отождествляется с самим компьютером, т.к. человек, использующий программы, «вводит в компьютер» исходные данные с клавиатуры, и «компьютер выдает результат» на экран. На самом деле преобразование исходных данных, вводимых с клавиатуры ил из файла, в результат, выводимый на экран монитора, принтер или в файл, выполняет процессор компьютера. Процессор выполняет преобразование в сооветствии с последовательностью команд – программой. Т.о., чтобы компьютер выполнил некоторую работу, необходимо разработать последовательность команд, обеспечивающую выполнение этой работы, или, как говорят, написать программу.

 

Этапы разработки программы.

 

Выражение написать программу отражает только один из этапов создания компьютерной программы, когда программист действительно пишет инструкции на бумаге или при помощи текстового редактора.

Программирование – это процесс создания (разработки) программы, который может быть представлен как последовательность следующих шагов:

1. Определение требований к программе.

Один из важнейших этапов. На этом этапе подробно описывается исходная информация и формулируются требования к результату. Кроме того, описывается поведение программы в особых случаях.

2. Разработка или выбор алгоритма решения поставленной задачи.

На этом этапе необходимо определить последовательность действий, которые надо выполнить для достижения результата. Многие задачи можно решить различными способами. В этом случае программист, используя некоторый критерий, например, скорость работы алгоритма или его длину, выбирает наиболее подходящее решение. Результатом процесса разработки алгоритма должен быть алгоритм, представленный в виде словесного описания или блок-схемы.

3. Написание команд.

После того, как определены требования к программе и составлен алгоритм решения, алгоритм записывается на выбранном языке программирования.

4. Отладка.

Под отладкой понимается процесс поиска и устранения ошибок в программе. Ошибки разделяются на две группы: синтаксические (ошибки в тексте) и алгоритмические. Синтаксические ошибки – наиболее легко устранимые ошибки. Алгоритмические ошибки обнаружить труднее. Этап отладки можно считать законченным, если программа правильно работает на одном-двух наборах входных данных.

5. Тестирование.

Этот этап особенно важен, если вы предполагаете, что вашей программой будут пользоваться другие. На этом тапе следует проверить, как ведет себя программа на как можно большем количестве входных наборов данных, в том числе и на заведомо неверных.

 

Программа, написанная на языке программирования, является исходной программой. Она состоит из инструкций, понятных человеку, но не понятных процессору компьютера. Чтобы процессор смог выполнить работу в соответствие с инструкциями исходной программы, последняя должна быть переведена на машинный язык – язык команд процессора. Эту задачу решает специальная программа – компилятор. Компилятор последовательно выполняет две задачи:

1. Проверяет текст программы на отсутствие синтаксических ошибок.

2. Создает (генерирует) выполняемую программу – машинный код.

Отметим, что генерация выполняемой программы происходит только в том случае, если в тексте программы нет синтаксических ошибок.

 

Свойства алгоритма.

 

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

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

Наличие алгоритма дает возможность решать задачу формально, механически исполняя команды алгоритма в указанной последовательности.

Указание выполнить конкретное действие называется командой.

Совокупность всех команд, которые могут быть выполнены некоторым исполнителем, называется системой команд.

1. Понятность

2. Однозначность

3. Дискретность

4. Массовость

5. Конечность

6. Результативность

Для записи алгоритма существует общая методика:

ü Каждый алгоритм должен иметь имя, которое раскрывает его смысл.

ü Необходимо обозначить начало и конец алгоритма.

ü Описать входные и выходные данные.

ü Указать команды, которые позволяют выполнять определенные действия над выделенными данными

Можно назвать три способа написания алгоритмов:

- на естественном языке (словесно-пошаговый);

- на языке схем;

- на алгоритмическом языке.

    начало/ конец
    ввод/ вывод
обработка
выбор

 

Структура программы на языке Pascal

 

Program <имя_программы>;

[ uses <имена_подключаемых_модулей>;]                

[ const <имя_константы> = <значение_константы>;]

[ type <имя_типа> = <определение_типа>;]     

[ var <имя_переменной> : <тип_переменной>;]        

[ procedure <имя_процедуры> <описание_процедуры>;]

[ function <имя_функции> <описание_функции>;]

 begin {начало основного тела программы}

<оператор 1>;

<оператор 2>;

<оператор N>;

end. (* конец основного тела программы *)

 

Список наиболее часто встречающихся зарезервированных слов:

and goto type
array in then
begin mod to
case not uses
const of until
div or unit
do program var
downto procedure with
else repeat while
end record xor
file string  
for text  
function    

 

Базовые типы данных языка Pascal

название типа принимаемые значения  
integer -32768 до 32767 целые числа
real -2.9*10-39 до 1.7*1038 вещественные числа
char 0..9, А..я, A..z символы
boolean true, false логический тип

 

Все операторы языка можно условно разделить на команды и конструкции.

Команда (оператор) присваивания:

<имя переменной>:=<выражение>;

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

Для обработки вещественных чисел в языке Turbo Pascal предусмотрены следующие операции: +, -, *, /.

Для обработки целых чисел: +, -, *, div (целочисленное деление), mod (остаток от деления нацело).

Например:

Х:=10;   [x=10]

              Y:=X+6; [y=16]

              Y:=Y+1; [y=17]

Некоторые стандартные функции языка Turbo Pascal

 

Имя функции Описание функции
abs(x) Абсолютное значение (модуль) числа
arctan(x) Арктангенс (в радианах)
cos(x) Косинус (в радианах)
exp(x) Экспонента (ex)
ln(x) Натуральный логарифм (по основанию e)
pi Значение числа
round(x) Округление вещественного числа до целого
trunc(x) Целая часть вещественного числа
frac(x) Дробная часть вещественного числа
sin(x) Синус (в радианах)
sqr(x) Возведение в квадрат
sqrt(x) Извлечение квадратного корня
random(x) Датчик случайных чисел

 

Например:

y:=-4.5;

              a:=abs(y);       [a=4.5]

              b:=frac(y);       [b=0.5]

              c:=trunc(y);     [c=4.0]

              d:=round(y);   [d=-5.0]

x:=random(10); [{0..9}]

              x:=random(12)-4;     [{-4..7}]

 

Команда (оператор) вывода:

Write (<список вывода>);

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

Например:

              a:=4;

              b:=a+3;

write(a,b);       [4,7]

Writeln (<список вывода>);

Вывод информацию на экран, после чего переводит курсор в начало следующей строки (т.е. выводит специальный символ «конец строки»).

Например:

              writeln(‘Площадь треугольника’, s);

Форматный вывод: при выводе данных можно указывать формат вывода.

Для целых чисел:

    <элемент списка вывода>:<количество позиций на экране>

Для вещественных чисел:

    <эл-т списка вывода>:<кол-во поз. на все число>:<кол-во поз. на дробную часть>

Команда (оператор) ввода.

Readln (<имя переменной>);

Приостанавливает работу программы и ожидает ввода данных с клавиатуры. После выбора данных и нажатия клавиши Enter производится проверка соответствия типов введенных данных и указанной переменной. Если их типы совпадают, данные записываются в переменную с указанным именем.

Например:

              writeln(‘введите а’);

              readln(a);        {a=значение пользователя}

Задача 1 1 . Вычислить площадь и периметр прямоугольника с заданными сторонами.

Задача 12. Вычислить площадь и периметр прямоугольного треугольника, если известны длины его сторон.

Задача 1 3. Вычислить сумму цифр 4-х значного числа.

Задача 11 Задача 12 Задача 13
program prjmougolnik; uses crt; var a,b,s,p:real; begin clrscr; {clear screen} writeln('Zadacha o prjmougolnike'); writeln; write('Vvedite dlinu i shirinu '); readln(a,b); p:=2*(a+b); s:=a*b; writeln('p=',p:6:2); writeln('s=',s:6:2); readln end. program treugolnik; uses crt; var a,b,c,p,s:real; begin clrscr; writeln ('Zadacha o treugolnike'); writeln; write('Vvedite katet a='); readln(a); write('Vvedite katet b='); readln(b); s:=a*b*1/2; c:=sqrt(a*a+b*b); p:=a+b+c; writeln('S=', s:5:2); writeln('P=', p:5:2); readln; end. program chislo; uses crt; var x,a,b,c,d,s:integer; begin clrscr; writeln('Zadacha o chisle'); writeln; write('Vvedite 4h znachnoe chislo '); readln(x); a:=x div 1000; b:=x div 100 mod 10; c:=x div 10 mod 10; d:=x mod 10; s:=a+b+c+d; writeln('Summa cifr 4h znachnogo cisla ',x, '=',s); readln; end.

К практике

Задача 11. Вычислить длину окружности и площадь круга заданного радиуса.

Задача 12. Составить программу, которая вводит трехзначное число и выводит число-перевертыш (143→341).

Задача 13. Составить программу, которая вычислит площадь треугольника, заданного координатами своих вершин.

Задача 14. Составить программу, которая поменяет местами значения двух переменных a и b: а) с использованием третьей переменной; б) без использования третьей переменной.

 


ЛЕКЦИЯ 2.

Разветвляющиеся программы.

 

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

Ветвление в полной форме:

 

If <условие>

then <оператор 1>

else <оператор 2>;

где <условие> - логическое выражение, которое может принимать одно из двух значений – истина или ложь. Условия могут быть простыми (с использованием операций отношения) или сложными (с использованием логических операций Not, And, Or, Xor).

<оператор 1> и <оператор 2> - простые или составные операторы. <оператор 1> будет выполнен, если условие истинно, <оператор 2> - в случае, если условие ложно. Одновременно <оператор 1> и <оператор 2> выполнены быть не могут.

 

Ветвление в сокращенной форме:

If <условие>

then <оператор >;

 

Оператор варианта в полной форме

 

Оператор выбора case является обобщением оператора if и позволяет сделать выбор из произвольного числа имеющихся вариантов.

 

case <переключатель> of

<константа 1>:<оператор 1>;

<константа 2>:<оператор 2>;

<константа N>:<оператор N>

else <оператор>

end;

 

где <переключатель> - переменная (выражение) перечислимого типа (integer, char, Boolean);

<константа i> - возможные значение переключателя;

<оператор i> - простой или составной оператор, который будет исполнен в случае, если значение переключателя будет равным соответствующей константе;

<оператор> - простой или составной оператор, который будет исполнен в случае, если значение переключателя не совпадет ни с одной из констант.

 


Дата добавления: 2022-01-22; просмотров: 29; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!