bigpo.ru
добавить свой файл
1


Лабораторная работа №2

по Информатике и ИКТ

на тему

«Язык программирования Паскаль.
Строковый тип данных.
Разработка программы Калькулятор»


Санкт-Петербург, 2010г.

  1. Цель работы:

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

    2. Овладеть методикой программирования алгоритмов синтаксического разбора строки символов. Синтаксический разбор строки – важнейшая задача при создании компиляторов.;

    3. Закрепить на практике знания, полученные при изучении тем «Строки. Процедуры и функции. Рекурсия».

    4. Научиться грамотно оформлять результаты.



  2. Задачи:

    1. Разработка и отладка программы, реализующей вычисление арифметического выражения, введенного с клавиатуры.

    2. Составление и оформление отчета.




  1. Задание:

    1. Написать программу «Калькулятор», которая вычисляет арифметическое выражение, введенное с клавиатуры.

    2. Арифметическое выражение состоит из операндов и соединяющих их знаков арифметических операций.

    3. Выражение заканчивается нажатием клавиши ENTER.

    4. Введенное выражение является синтаксически верным и не требует контроля синтаксиса.




  1. Ход работы.

    1. Составить программу, которая

      1. вводит с клавиатуры арифметическое выражение.

      2. вычисляет его значение

      3. выводит результат на экран

    2. Функционально законченные модули оформить в виде процедур или функций.

    3. Отладить программу и предъявить ее преподавателю, подготовить текст программы.

    4. Оформить отчет. Пример оформления отчета приведен в приложении 1, хранится на диске S: в папке Калькулятор.

    5. Подготовиться к защите лабораторной работы.




  1. Описание работы:

    1. Написать функцию Calculate(Expression: string): real, вычисляющую значение выражения, записанного в строке Expression. Выражение содержит действительные числа, знаки арифметических операций и скобки. Учитывается приоритет выполнения арифметических операций.
      Упрощение 1: отсутствие скобок.
      Упрощение 2: отсутствие операций умножения и деления
      Упрощение 3: Calculate(Expression: string): integer (содержит целые числа);
      Усложнение 1: наличие во входной строке некоторых математических функций.

Усложнение 2: наличие интерфейса пользователя для ввода выражения

    1. Входная информация для программы -

    2. Выходная информация –

    3. Глобальные переменные (перечислить и описать) -

    4. Структура программы (блок-схема алгоритма)

    5. Перечислить и описать (имя подпрограммы, назначение, список входных/выходных параметров) все разработанные подпрограммы.




  1. Выставляется итоговая оценка:

3 балла -- функция Calculate(Expression: string): integer вычисляет значение выражения, записанного в строке Expression. Выражение содержит 2 целых числа, знаки арифметических операций сложения и вычитания.

4 балла-- функция Calculate(Expression: string): integer вычисляет значение выражения, записанного в строке Expression. Выражение содержит целые числа, знаки арифметических операций сложения, вычитания.

5 баллов-- функция Calculate(Expression: string): real, вычисляет значение выражения, записанного в строке Expression. Выражение содержит действительные числа, знаки арифметических операций сложения, вычитания, умножения.

дополнительно 5 баллов-- функция Calculate(Expression: string): real, вычисляет значение выражения, записанного в строке Expression. Выражение содержит действительные числа, знаки арифметических операций сложения, вычитания, умножения, деления, скобки, некоторые алгебраические функции.

Дополнительно оценивается усложненный вариант – с разбором синтаксиса входной строки.


Приложение 1.
Пример оформления отчета о проделанной работе.


Отчет
Лабораторная работа №2

по Информатике и ИКТ

на тему

«Язык программирования Паскаль.
Строковый тип данных.
Разработка программы Калькулятор»


Работа выполнена
учениками 10-В класса

ГОУ ФМЛ №366

Петровым Иваном

Ивановым Петром


Санкт-Петербург, 2010г.

  1. Цель работы:

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

    2. Овладеть методикой программирования алгоритмов синтаксического разбора строки символов;

    3. Закрепить на практике знания, полученные при изучении тем «Строки. Процедуры и функции. Рекурсия».

    4. Научиться грамотно оформлять результаты.



  1. Задачи:

    1. Разработка и отладка программы, реализующей вычисление арифметического выражения, введенного с клавиатуры.

    2. Составление и оформление отчета.




  1. Задание:

    1. Написать программу «Калькулятор», которая вычисляет арифметическое выражение, введенное с клавиатуры.

    2. Арифметическое выражение состоит из операндов и соединяющих их знаков арифметических операций.

    3. Выражение заканчивается нажатием клавиши ENTER.

    4. Введенное выражение является синтаксически верным и не требует контроля синтаксиса.




  1. Ход работы.

    1. Составлена программа «Калькулятор», которая

      1. вводит с клавиатуры арифметическое выражение.

      2. вычисляет его значение

      3. выводит результат на экран

    2. Арифметическое выражение состоит из операндов и соединяющих их знаков арифметических операций.

      1. Операнды – целые (вещественные) числа (указать какие именно)

      2. Арифметические операции – сложение, вычитание, умножение, деление, возведение в степень (перечислить только реализованные операции и указать использованные обозначения операций, например, + - * / : ^ √ •)

      3. Реализовано вычисление математических функций (перечислить только реализованные функции и указать их обозначения, например, abs sqrt)

    3. Функционально законченные модули оформлены в виде подпрограмм.

    4. Программа отлажена и предъявлена преподавателю. __________________________________
      /подпись проверившего преподавателя/




  1. Описание программы:

    1. Входная информация для программы - ______________________________________________

    2. Выходная информация – __________________________________________________________

    3. Глобальные переменные, типы данных пользователя, константы (перечислить и описать) - ____________________________________

    4. Структура программы (блок-схема алгоритма) ________________________________________

    5. Перечислить и описать все разработанные подпрограммы (процедура(функция), имя подпрограммы, для функции – тип результата, назначение, список входных/выходных параметров). __________________________________________________________________________




  1. Текст программы с комментариями: _________________________________________

  2. Система контрольных тестов



№ теста

Проверяемая ситуация

Вводимое значение

Результат