- •Материалы по информатике для 10 класса «Программирование»
- •Алгоритм и его свойства
- •Алгоритмы работы с величинами
- •Программирование на языке Паскаль
- •Первая программа
- •1.Общий вид программы.
- •3. Пояснения к программе.
- •4. Запуск программы.
- •Т ипы данных
- •Вещественные типы
- •Символьный тип
- •Логический (булевский) тип
- •Арифметические операции
- •Возведение положительного числа в вещественную степень
- •Программирование ветвящихся алгоритмов
- •Неполная форма условного оператора:
- •Логические операции
- •Пример Составить программу, по которой выведется значение true, если точка с заданными координатами (х, у) лежит внутри заштрихованной области (рис. 1), и false – в противном случае.
- •Решение
- •Оператор выбора
- •Программирование циклических алгоритмов
- •Задачи целочисленной арифметики
- •Структурное программирование. Подпрограммы.
- •Локализация имен.
- •Обработка строковых величин
- •Работа с массивами
Возведение положительного числа в вещественную степень
следует производить, используя следующее математическое тождество: ху = еу 1п х. На Паскале это записывается так:
ехр (у*LN(х) )
Пример 1. Записать математическое выражение в виде арифметического выражения на Паскале.
Математическое выражение
х2-7х + 6
Выражение на Паскале
Sqr (х) - 7*х+6
Задачи
Напишите операторы присваивания
Программирование ветвящихся алгоритмов
Для программирования ветвящихся алгоритмов применяются условный оператор (оператор ветвления) и оператор выбора.
Условный оператор имеет следующий формат:
if <логическое выражение> then <оператор 1>
else <оператор 2>;
Логическое выражение содержит один из 6 знаков логических отношений: >, <, >=, <=, <>, = и может принимать одно из двух значений: true (истина) или false (ложь).
Если логическое выражение принимает значение False, то выполняется оператор 2, если True -- оператор 1.
Перед словом else точка с запятой не ставится
Пример 1. Из трех данных вещественных чисел X, Y, Z выбрать наибольшее.
Решение. Выбираем большее сначала из двух чисел, затем из найденного значения и третьего числа.
Program Мах_1; Var X, Y,Z,MAX : real;
BEGIN
write ('Введите X,Y,Z' ); readln(X,Y,Z) ;
if X>=Y then
if X>=Z then
MAX :=X
else MAX:=Z
else if Y>=Z
then MAX:=Y
else MAX:=Z;
writeln ('Максимальное значение=' , MAX)
END.
Если по ветви THEN… или по ветви ELSE… необходимо выполнить более одного оператора, то они должны быть оформлены как составной оператор. Для этого эти несколько операторов заключаются в операторные скобки- слова begin-end.
Пример Вычислить значение функции с учетом области определения
Р ешение
Функция не определена, когда аргумент равен 1 или -1. В этом случае нужно вывести сообщение об этом на экран. При всех других значениях аргумента необходимо:
вычислить значение функции
вывести вычисленное значение на экран
то есть по этой ветви условного оператора нужно выполнить две команды. Вот их то и нужно заключить в скобки begin … end
var
x,y:real;
BEGIN
Write(' Введите аргумент '); readln(x);
If (x=1) or (x=-1) then
writeln('Функция неопределена')
else begin
y:=(x+2)/(sqr(x)-1);
writeln('y=',y);end;
END.
Неполная форма условного оператора:
if <логическое выражение> then <оператор>;
В данном случае, если значение логического выражения равно False, то оператор по ветви then просто не выполняется , а программа переходит к выполнению следующей команды.
Пример Даны три числа. Сообщить сколько среди них четных чисел.
Решение Для второго варианта решения используем алгоритм с последовательными неполными ветвлениями.
Var X, Y, Z, S : integer;
BEGIN
write ('Введите три целых числа' ) ; readln(X, Y, Z);
S:=0;
if X mod 2=0 then S:=S+1;
if Y mod 2=0 then S:=S+1;
if Z mod 2=0 then S:=S+1;
writeln (Количество четных чисел равно ' , S);
END.