Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Программирование с использованием шаблонов объектно-ориентированного проектирования

Автор:   •  Январь 20, 2022  •  Лабораторная работа  •  1,828 Слов (8 Страниц)  •  230 Просмотры

Страница 1 из 8

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

федеральное государственное автономное образовательное учреждение высшего образования

 «САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ

КАФЕДРА КОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ И ПРОГРАММНОЙ ИНЖЕНЕРИИ 

ОЦЕНКА                                        

ПРЕПОДАВАТЕЛЬ

Ст. преподаватель

Е. О. Шумова

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №1

Программирование с использованием шаблонов объектно-ориентированного проетирования

по дисциплине: ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ  ГР. №

Z9432K

В. В. Шурков

номер группы

подпись, дата

инициалы, фамилия

Студенческий билет №

2019/4167

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


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

 Приобрести практический навык внедрения шаблонов объектно-ориентированного проектирования в код программных систем.

2. Задание

Реализовать систему хранения информации о футбольном чемпионате. Информация опирается на следующие основные классы: Team (команда), Player (игрок), Match (матч). Эти классы связаны друг с другом посредством агрегации, ассоциации и проч.

Атрибуты классов

Team

  • id — уникальный численный идентификатор.
  • name — имя.
  • players — игроки, играющие за данную команду в рамках чемпионата.

Player

  • id — уникальный численный идентификатор.
  • name — имя
  • team – команда.

Match

  • id — уникальный численный идентификатор.
  • date — дата.
  • location — место.
  • result — счёт.
  • team1 — первая команда.
  • team2 — вторая команда.
  • players – игроки, у частвовавшие в матче.

Обеспечить загрузку и сохранение этой базы данных в текстовый файл.

3. Текст программы

    main.py

import Classes

from datetime import date

with open ("Files/Team+players_read.txt",'r') as file:   # Считываем из 1-го файла игроков

    file.readline()                                                                                           # и команды и добавляем их в классы

    file.readline()

    data = file.readline().split()

    vse_igroki = dict()

    vse_komandi = dict()

    while data:

        igrok = Classes.Player(data[0],data[1],data[2])

        vse_igroki[data[0] + ' ' + data[1]] = igrok

        if data[3] not in vse_komandi:

            instance_name = Classes.Team(data[3],data[4])

            instance_name(igrok)

            vse_komandi[data[3]] = instance_name

        else:

            vse_komandi[data[3]](igrok)

        data = file.readline().split()

with open ("Files/Match_read.txt",'r') as file:      # Считываем из 2-го файла матчи

    file.readline()                                                                                         # и добавляем их в классы

    file.readline()

    data = file.readline().split()

    vse_matchi = dict()

    while data:

        chislo = [int (i) for i in data[3].split('.')]

        instance_name = Classes.Match(vse_komandi[data[0]], vse_komandi[data[1]], data[2], date(chislo[0],chislo[1],chislo[2]), data[4], data[5])

        vse_matchi[instance_name.match_name] =  instance_name

        data = file.readline().split(',')

        if '\n' in data[-1]:

            data[-1] = data[-1].replace('\n','')

        for i in data:

            if i in instance_name.team1.team_players or instance_name.team2.team_players:      

...

Скачать:   txt (10.2 Kb)   pdf (171.3 Kb)   docx (247.9 Kb)  
Продолжить читать еще 7 страниц(ы) »
Доступно только на Essays.club