Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Паскаль для учеников.doc
Скачиваний:
0
Добавлен:
25.12.2019
Размер:
1.03 Mб
Скачать
  1. Дополнительные функции в Паскале

  • Inc (Dec)

Функции Inc и Dec используются для увеличения и уменьшения значения аргумента на единицу.

Пример

Inc(7) = 8;

Dec(7) = 6;

  • Odd

Логическая функция Odd из модуля System принимает значение «истина» только в том случае, когда аргумент — нечетное число.

Пример

Odd(7) = true;

Odd(6) = false;

  • Trunc

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

Пример

Trunc(7,2856) = 7;

Trunc(4,99) = 4;

  • Round

Функция Round преобразует вещественное значение в ближайшее к нему значение типа LongInt, т. е. округляет аргумент до целого числа.

Пример

Round(7,2856) = 7;

Round(4,99) = 5;

  • Int

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

Пример

Int(7,2856) = 7,0000;

  • Frac

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

Пример

Frac(7,2856) = 0,2856;

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

  2. Начало программы

Тело программы, или раздел инструкций, начинается со служебного слова begin, на алгоритмическом языке оно обозначается словом начало, блок-схема же выглядит как овал:

После слова begin никогда не ставится точка с запятой.

  1. Конец программы

Слово begin в программе автоматически подразумевает, что после выполнения некоторых действий будет употреблено служебное слово end. End с точкой после него означает конец всей программы.

На алгоритмическом языке end обозначается словом конец, а в блок-схемах – овалом, как и begin.

  1. Команда вывода данных на экран

Для вывода информации на экран используются две команды: Write (вывод данных на экран) и WriteLn (вывод данных на экран, начиная с новой строки).

Окончание -Ln означает переход в новую строку.

Эти команды позволяют выводить на экран текст: write('текст'); writeln('текст') (пользователь увидит на экране надпись, заключенную в одиночные кавычки, в данном случае слово текст). Если использовать эти команды без одиночных кавычек: write(x), writeln(x), на экран выведется значение переменной x.

На алгоритмическом языке команда записывается: вывести, а блок-схема выглядит следующим образом:

  1. Команда ввода данных

Здесь также используются две команды: Read (загрузка введенных пользователем данных в переменную) и ReadLn (загрузка введенных пользователем данных в переменную и перевод каретки в новую строку).

Пример Read(x); readln(x) - переменная x приобретет значение, введенное пользователем с клавиатуры.

На алгоритмическом языке команда обозначается словом ввести (ввод), а в блок-схемах – параллелограммом.

  1. Математическое действие

Присваивание переменной некоторого вычисляемого значения обозначается следующей записью: <перем.1>:=F (переменная 1 задается некоторой формулой, которая может быть как арифметическим выражением, так и функцией от других переменных соответствующего типа).

Математическое действие на алгоритмическом языке записывается так же, как и на языке программирования, а в блок-схеме обозначается прямоугольником:

Frame1

Пример

Найдем сумму некоторых натуральных чисел a и b.

Решение задачи оформим в виде блок-схемы, на алгоритмическом языке и на Паскале.

Алгоритм

Алгоритм: сумма;

Целые:a, b, s;

Начало

Ввести: a, b;

s:=a+b;

Вывести: s;

Конец.

Блок-схема

Pascal

Program summa;

Uses crt;

Var a,b,s: integer;

Begin

clrscr;

Writeln(‘введите числа’);

Read(a,b);

s:=a+b;

writeln(‘сумма равна ‘,s);

end.

Комментарии

  • Вводим переменные целого типа.

  • Надпись «введите числа» пользователь увидит на экране.

  • Числа a и b вводятся с клавиатуры

Вопросы для самостоятельной работы

  1. Какие служебные слова обязательно содержатся в программе?

  2. Какие из следующих заголовков можно использовать в Паскале в качестве имен программы: «Задача», «Zadacha1», «1zadacha», «zadacha 1», «zaDAcha_1», «zadacha1: summa»

  3. Что входит в состав модуля?

  4. Что нужно сделать, чтобы включить в программу процедуру очистки экрана?

  5. Какой тип включает в себя наибольший диапазон вещественных значений?

  6. Чем отличаются функции div и mod?

  7. Расставьте функции в порядке убывания их приоритета: xor, div, in, not.

  8. Какая функция могла быть использована в выражении: f(18,759)=1,70000000000E+1

  9. Чем отличаются команды write и writeln; read и readln?

  10. В каком элементе блок-схемы содержалась бы запись: «inc(n)»?

Задачи

Уровень A

    1. Даны числа x и y. Вычислить их разность, произведение и частное.

    2. Написать программу вычисления площади прямоугольника со сторонами a и b.

    3. Написать программу вычисления объема прямоугольного параллелепипеда по трем его измерениям.

    4. Написать программу вычисления площадь поверхности куба по длине ребра.

    5. Написать программу вычисления объема цилиндра по радиусу основания и высоте.

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

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

    8. Вычислить длину окружности и площадь круга радиусом r.

    9. Написать программу вычисления сопротивления электрической цепи, состоящей из двух параллельно соединенных сопротивлений.

    10. Дано действительное число x. Написать программу вычисления значения выражения 2x4 – 3x3 + 4x2 – 5x + 6.

Уровень B

    1. Вычислить расстояние между точками с координатами (x1, y1) и (x2, y2).

    2. Найти произведение цифр заданного четырехзначного числа.

    3. Найти площадь кольца, ограниченного окружностями радиусами R и r (R>r).

    4. Вычислить корни квадратного уравнения ax2 + bx + c = 0, заданного коэффициентами a, b, c (a ≠ 0 и D>0).

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

    6. Написать программу пересчета величины временного интервала, заданного в минутах, в величину, выраженную в часах и минутах.

Уровень С

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

    2. Найти площадь равнобедренной трапеции с основаниями a и b и углами при основании u (в радианах).

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

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