Составление программы на языке Паскаль для представления координат и номеров точек

Страницы работы

Содержание работы

Санкт–Петербургский Государственный

Электротехнический Университет

Кафедра МО ЭВМ

Курсовая работа по информатике

2 семестр

Задание № 26

                                   Выполнил: Сорокина С. И.

                                                                                             ФРТ

                                                                                              Гр. 6122

                                                                         Проверил: Варлинский Н. Н.

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

2007 г.

Содержательная постановка задачи

Задание №13 (составить программу на языке  Паскаль)

N точек плоскости заданы своими координатами Х и Y. Сформировать массив координат точек, принадлежащих заштрихованной области.

Из сформированного массива точки с минимальными значениями X и Y.

Доп. задание: подсчитать количество операторов присваивания в составленной программе.

Входными параметрами являются значения количества точек (n), радиус главной окружности (Rad) и координаты точек (X и Y).

Ввод входных параметров организовать по выбору пользователя (клавиатура-файл).

Вывод результатов производить по выбору пользователя (клавиатура-файл).

В выходных данных должны быть представлены координаты и номера точек, входящих в заданную область, а также точки с минимальными значениями координат X и Y. В дополнительном задании подсчитывается количество операторов присваивания.

Пример: задано 6 точек (радиус главной окружности = 6):

№1 (3:;1)

№2 (1;3)

№3 (-3;2)

№4 (-4;-1)

№5 (-1;-1)

№6 (5;-2)

Выяснить принадлежность точек заданной области. Найти точки с наименьшими значениями координат X и Y.

Ответ:

Точка № 1 принадлежит данной области;

Точка № 3 принадлежит данной области;

Точка № 4 принадлежит данной области;

Точка № 6 принадлежит данной области.

Точка № 4 имеет минимальную координату X.

Точка № 6 имеет минимальную координату Y.

Дополнительное задание: - 21 число операторов присваивания

Формальная постановка задачи

Используется :

Формула окружности, с заданными координатами Х и У:

 Rad*Rad = x*x + y*y

Формула окружности, со смещенной системой координат, с заданными координатами Х и Y:

Rad*Rad = (x-xo)*(x-xo) + (y-yo)*(y-yo)

Разработка Алгоритма

Часть 1:

В основе определения принадлежности точки плоскости лежит циклический процесс с заранее известным числом повторений – n (число точек). Необходимо определеть принадлежит ли выбранная точка Главной окружности и не лежит ли вне 2-х малых окружностей. Для этого необходимо и достаточно:

1 - Rad*Rad <= x*x + y*y ;

2 - Rad*Rad/4 >= (x-xo)*(x-xo) + (y-Rad/2)*(y-Rad/2);

3 - Rad*Rad/4 >= (x-xo)*(x-xo) + (y+Rad/2)*(y+Rad/2);

     где Х и У , координаты соответствующей точки .

Процесс представляет собой планомерную проверку выполнения этих 3-х условий для   n-числа точек. Результаты (координаты и номера подходящих точек записываем в новый массив), что будет использовано в следующем пункте.

Часть 2:

Процесс определения наименьшего Х и У, из точек входящих в заданную плоскость - это циклический процесс, с заранее заданным числом повторений – (i-1), i – кол-во точек входящих в поверхность. Для определения наименьшего используем метод Пузырика (последовательное сравнение точек).

Доп. Задание: для подсчета количества оператора присваивания (‘:=’) необходимо последовательно рассмотреть все строчки данной программы. Заменяем k-ую строчку переменной str и ищем в ней символ ‘ := ’, при нахождении включается счетчик (i := i+1). Удаляем найденное слово и рассматриваем эту строчку до тех пор, пока в ней не кончатся ‘:=’. Получившееся ‘i’  выписываем на экран или в файл (в зависимости от выбора метода вывода).

Конкретизация представленных данных

n

число точек

Целого типа

Rad

Главный радиус

Вещественного типа

x,y

координаты точек

Вещественного типа

i

число точек принадлежащих области

Целого типа

t,t1

перемен. определ. метод ввода , вывода

Целого типа

i1

счетчик операторов присваивания

Целого типа

f,r,g

файловые перемен. с исх. данными и результатами

Структурированный тип 

q

Позиция оператора присваивания

Целый тип

str

Считанная строка

Символьный тип

Макеты ВВОДА - ВЫВОДА

1.  Введите число точек

2.  < Значение n >

3.  Введите радиус главной окружности

4.  < Значение Rad >

5.  Введите координаты точек

6.  < Значение X > < Значение Y >

12.  Ответ

13.  В заданную поверхность входят точки #

17. Вывод точки с наим. X

18. Вывод точки с наим. Y

19.Доп. задание: … число операторов присваивания

Конец

Пример

В файле C:\in.log

6                             (число точек)

6                             (радиус главной окружности)

3 1

1 3

-3 2                         (координаты точек)

-4 -1

-1 -1

5 -2

Результат в файле C:\out.rtf

В заданную поверхность входят точки #

# 1 : (3.00;1.00)

# 3 : (-3.00;2.00)

# 4 : (-4.00;-1.00)

# 6 : (5.00;-2.00)

naim. x :-4.00

naim. y :-2.00

21 – число повторений операторов присваивания

Похожие материалы

Информация о работе