Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Отчет 3

.docx
Скачиваний:
1
Добавлен:
09.04.2023
Размер:
26.59 Кб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ

УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»

(СПбГУТ)

Факультет Инфокоммуникационных сетей и систем

Кафедра Защищенных систем связи

Дисциплина Языки программирования

ОТЧЕТ ПО ПРАКТИЧЕСКОЙ РАБОТЕ

Языки программирования

(тема отчета)

Направление/специальность подготовки

10.03.01

(код и наименование направления/специальности)

Студент:

(Ф.И.О., № группы) (подпись)

Преподаватель:

(Ф.И.О.) (подпись)

Содержание

  1. Введение……………………………………………………………2

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

  1. Заключение…………………………………………………………8

Введение

Цель работы: написание программы для вывода расположения точки относительно выбранных фигур. Фигуры должны рисоваться по координатам на плоскости.

Ход работы

Код программы:

import turtle

from random import choice, randint

print('Введите "файл", что бы загрузить данные из файла или введите "рандом", что бы данные ввелись случайным образом')

k = str(input())

if k == 'файл':

with open('input.txt') as inp:

x, y, radius = map(float, inp.readline().split())

x_1, y_1 = map(float, inp.readline().split())

x_2, y_2, stk = map(float, inp.readline().split())

y_3, = map(float, inp.readline().split())

x_4, y_4, sx, sy = map(float, inp.readline().split())

elif k == 'рандом':

import random

x = random.uniform(-500, 500)

y = random.uniform(-500, 500)

radius = random.uniform(-500, 500)

x_1 = random.uniform(-500, 500)

y_1 = random.uniform(-500, 500)

x_2 = random.uniform(-500, 500)

y_2 = random.uniform(-500, 500)

stk = random.uniform(-500, 500)

y_3 = random.uniform(-1000, -790)

x_4 = random.uniform(-500, 500)

y_4 = random.uniform(-500, 500)

sx = random.uniform(-500, 500)

sy = random.uniform(-500, 500)

window = turtle.Screen()

window.title("Лаба 1")

window.setup(width=1.0, height=1.0)

window.bgcolor("Black")

# поле

border = turtle.Turtle()

border.speed(0)

border.begin_fill()

border.color('white')

border.goto(-800, 500)

border.goto(800, 500)

border.goto(800, -500)

border.goto(-800, -500)

border.goto(-800, 500)

border.end_fill()

border.hideturtle()

# плоскость

border = turtle.Turtle()

border.speed(0)

border.goto(0, 500)

border.pensize(2)

border.color('Black')

border.goto(0, -500)

border = turtle.Turtle()

border.speed(0)

border.goto(790, 0)

border.pensize(2)

border.color('Black')

border.goto(-790, 0)

border.hideturtle()

# окружность

Circle = turtle.Turtle()

Circle.color("#FF033E")

Circle.up()

Circle.goto(x, y)

Circle.down()

Circle.pensize(3)

Circle.circle(radius)

Circle.hideturtle()

# квадрат

Sq = turtle.Turtle()

Sq.color("#77DDE7")

Sq.up()

Sq.goto(x_2, y_2)

Sq.down()

Sq.pensize(3)

def Square(w):

for i in range(2):

Sq.fd(w)

Sq.left(90)

Sq.fd(w)

Sq.left(90)

Square(stk)

Sq.hideturtle()

# Прямая

Straight = turtle.Turtle()

Straight.up()

Straight.goto(-1000, y_3)

Straight.down()

Straight.pensize(3)

Straight.forward(2000)

Straight.hideturtle()

# Прямоугольник

t = turtle.Turtle()

t.color("#A7FC00")

t.up()

t.goto(x_4, y_4)

t.down()

t.pensize(3)

def rectangle(w, h):

for i in range(2):

t.left(90)

t.fd(h)

t.left(90)

t.fd(w)

rectangle(sx, sy)

t.hideturtle()

# точка

Points = turtle.Turtle()

Points.shape("circle")

Points.shapesize(stretch_wid=0.3, stretch_len=0.3)

Points.up()

Points.goto(x_1, y_1)

Points.down()

Points.color("#DD18FF")

with open('output.txt', 'w' , encoding = 'utf-8') as outp:

if (x_1 == x) and (y_1 == y):

print('dot on circle', file=outp)

elif (x_1 > (x + radius)) and (y_1 > (y + radius)):

print('btfhf', file=outp)

else:

print('ngrtnty', file=outp)

if ((x_4 + sx) < x_1) and ((y_4 + sy) < y_1):

print("Точка внутри прямоугольника", file=outp)

else:

print("Точка внe прямоугольника", file=outp)

if ((x_2 + stk) < x_1) and ((y_2 + stk) < y_1):

print("Точка внутри квадрата", file=outp)

else:

print("Точка внe квадрата", file=outp)

if (y_1 == y_3):

print("Точка на прямой", file=outp)

elif (y_1 > y_3):

print("Точка выше прямой", file=outp)

else:

print("Точка ниже прямой", file=outp)

t.screen.exitonclick()

window.mainloop()

Заключение

Мы написали программу для вывода расположения точки относительно выбранных фигур. Фигуры должны были рисоваться по координатам на плоскости. Мы приобрели навыки в области графики на Python.

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

2019

Соседние файлы в предмете Языки программирования