Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сборник задач Бабалова.doc
Скачиваний:
95
Добавлен:
04.06.2015
Размер:
1.16 Mб
Скачать

Var I:integer;

begin

{Текст основной программы, обеспечивающий решение сформулированной задачи}

kol:=5;

Textcolor(14);

Textbackground(0);

clrscr; dialog;

window(x1,y1,x1+l+4,y1+kol*2);

clrscr; textbackground(2);

for i:=1 to kol do

begin

window(x1+2,y1+i*2-1,x1+l+2,y1+i*2-1);

clrscr;

write(alter[i]);

end;

alt(x1,y1,25);

end;

begin

Vivod(2,2,25);

window(1,1,80,25);

textbackground(0);

textcolor(7);

clrscr;

end.

    1. Решение графических задач

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

      2. Вфайл занести некоторую последовательность из 8 натуральных чисел. Эта последовательность задает число дней в году, в которых преобладало соответственно северное, северно-восточное, восточное, юго-восточное, южное, юго-западное, западное, северно-западное направление ветра. Построить розу ветров.

      3. Построить на экране переднюю панель дома и обеспечить возможность “зажигать” и “гасить ” свет в доме: включение и выключение света должно выполняться с клавиатуры, окна дома при зажженном и при погашенном свете окрашивается в разные цвета.

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

      2. Построить график функции Y= –6 *X2 +3*X. График должен быть нарисован в осях координат и область определения функции может быть заданной разработчиком.

      3. Построить график функции Y= cos(X-1)+|X|. Обеспечить просмотр графика на любом диапазоне входных значений и изменение масштаба изображения зависимости.

      4. Изобразить на экране область определения и построить графики следующих функций:

  • y=1/x;

  • y= (x+3)/(x-2);

  • y=(x+3)/(x-2);

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

      1. (а,б). Выполнить изображение в соответствии с шаблоном, приведенном на рисунке.

      2. Для вычерчивания окружности, заданной параметрическими уравнениями x=r*cos(t), y=r*sin(t), tє[0,2), воспользоваться параметрическими уравнениями

  • x=xc+r*(1-t2)/(1+t2)

  • y=yc+r*(2*t)/(1+t2),tє[0,1).

Указанное изменение параметра соответствует дуге окружности от 0 до/2. Полная окружность может быть получена симметричным отображением каждой полученной точки относительно осей 0X и 0Y и начала координат в предположении, что начало координат совмещено с центром окружности. (рисунок). В файл занесены тройки значений xc, yc и r. Построить окружности с центром в точке (xc. , yc) и радиусом r.

      1. Построить спираль вокруг начала кооординат с n витками и внешним радиусом r; начальное направление спирали образует с осью 0X угол . Параметрическое представление спирали x= r*cos(t), y=r*sin(t), t 2n, r=t/2.

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

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

      2. Даны координаты трех различных точек:x1, y1 , x2 , y2, x3, y3. Построить отрезок с координатами концов (x1, y1 ) и (x2 , y2). Через точку (x3, y3) провести отрезок параллельный и равный по длине первому отрезку, но таким образом, чтобы точка (x3, y3) делила искомый отрезок пополам. Количество задаваемых наборов точек - произвольное.

      3. Задаются натуральные числаxc.,yc, h, w, x, y. Построить прямоугольник с центром в точке (xc. , yc), высотой h и шириной w. Провести прямую через точки xc.,yc и x, y и отметить точка пресечения прямой и стороны прямоугольника.

      4. Задаются натуральные числаxc.,yc, h, w, x, y. Построить прямоугольник с центром в точке (xc. , yc), высотой h и шириной w. Провести невидимую прямую через точки xc.,yc и x, y, отметив точку пересечения прямой и стороны прямоугольника. Кроме этого построить варианты прямых, пересекающихся с прямоугольником в соответствии с изображениями на рисунке.

      5. Даны натуральные числа xc.,yc, r, x, y. Построить окружность с центром в точке (xc.,yc) и радиусом r , а также определить координаты точки пересечения прямой, проходящей через точку x, y и координаты центра окружности. Построить отрезок с координатами концов, отметив точку пересечения прямой и окружности.

      6. Даны натуральные числаxc.,yc, r, x, y, h, w. Построить окружность с радиусом r и центром xc.,yc и прямоугольник с центром в точке x, y, высотой h и шириной w. Соединить отрезком центры окружности и прямоугольника. Изобразить прямую другим цветом. Варианты изображения самой прямой представлены на рисунке.

      7. Даны координаты левого верхнего угла и правого нижнего угла двух прямоугольников. Проверить пересекаются ли прямоугольники. Если они пересекаются, то выделить цветом их общую часть. Проверку пересечения можно выполнить проверкой следующих соотношений длин прямоугольников: l=max(x1,x3),r=min(x2, x4), s=max(y2, y4), t=min(y1,y3). Прямоугольники будут пересекаться, если выполняются неравенства: l< r и s< t. Исходя из этих неравенств, координаты вершин прямоугольника пресечения находятся в точках (l,t)и(r,s).

      8. Использовать для изображения прямой метод резиновой нити. Метод заключается в следующем: фиксируется один конец линии, указатель-курсор помещается на второй конец нити и за этот конец прямая вытягивается в любом направлении. Изменять скорость перемещения конца нити.

      1. Используя метод резиновой нити построить:

  • резиновый прямоугольник

  • резиновый треугольник.

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

      1. Нарисовать окружность на экране и обеспечить управление изменением ее размеров и положения с помощью клавиш: < - уменьшение размера окружности на заданное количество пикселей, > - увеличение размера окружности, а стрелки , , ,  - обеспечивают перемещение окружности по экрану. Координаты центра окружности и ее радиус задаются. При достижении края экрана все преобразования окружности должны блокироваться.

      2. Нарисовать произвольный прямоугольник. Обеспечить управление его перемещением по экрану с помощью стрелок , , , . Клавиши < и > должны обеспечить соответственное изменение ширины прямоугольника , а клавиши + и - - увеличение и уменьшение высоты прямоугольника. При достижении любого края экрана все преобразования должны блокироваться.

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

      4. Изобразить на экране точку, которая движется по окружности. управление скоростью движения точки обеспечивается клавишами < (скорость уменьшается) и >(скорость увеличивается). Цвет движущейся точки должен отличаться от цвета окружности.

      5. Изобразить на экране отрезок прямой, который вращается в плоскости экрана следующим образом:

  • вокруг своей середины;

  • вокруг любого из концов;

  • вокруг точки, делящей прямую в отношении 1:n.

Число n задается в диалоге при определении режима вращения.

      1. Изобразить на экране приближающийся издали шар. Изменять скорость приближения шара, а также точку, из которой начинает шар движение.

      2. Получить изображение “Круги на воде”. Использовать семь концентрических окружностей. Радиус каждой из окружностей отличается от ближайшей окружности на 7 пикселей. Движение создается последовательной сменой цветов всех окружностей, начиная с внутренней окружности и заканчивая внешней. Процесс смены цветов повторяется любое число раз.