Главная страница
Навигация по странице:

  • 1 ПОСТАНОВКА ЗАДАЧИ

  • БЛОК-СХЕМЫ АЛГОРИТМОВ ПРОГРАММЫ Основной алгоритм

  • 2.2 Алгоритмы подпрограмм-функций

  • 3 КОД ПРОГРАММЫ НА ЯЗЫКЕ PYTHON На языке PYTHON были реализованы (рис. 1- 9) алгоритмы. 3.1 Реализация вспомогательных функций

  • 3.2 Реализация основного алгоритма

  • 4 ТЕСТИРОВАНИЕ ПРОГРАММЫ

  • 4.2 Тестирование системы валидации данных

  • 4 ИНФОРМАЦИОННЫЕ ИСТОЧНИКИ

  • дддд. 1 постановка задачи 3 2блоксхемы алгоритмов программы 4


    Скачать 0.67 Mb.
    Название1 постановка задачи 3 2блоксхемы алгоритмов программы 4
    Дата20.01.2023
    Размер0.67 Mb.
    Формат файлаdocx
    Имя файлаprakticheskaya_12.docx
    ТипДокументы
    #896709

    СОДЕРЖАНИЕ



    1 ПОСТАНОВКА ЗАДАЧИ 3

    2БЛОК-СХЕМЫ АЛГОРИТМОВ ПРОГРАММЫ 4

    2.1Основной алгоритм 4

    2.2 Алгоритмы подпрограмм-функций 6

    3 КОД ПРОГРАММЫ НА ЯЗЫКЕ PYTHON 11

    3.1 Реализация вспомогательных функций 11

    3.2 Реализация основного алгоритма 14

    4 ТЕСТИРОВАНИЕ ПРОГРАММЫ 16

    4.1 Тестирование программы на правильном вводе 16

    4.2 Тестирование системы валидации данных 16

    5 ВЫВОДЫ 17

    4 ИНФОРМАЦИОННЫЕ ИСТОЧНИКИ 18


    1 ПОСТАНОВКА ЗАДАЧИ

    Разработать блок-схему алгоритма и написать программу в соответствии с персональным вариантом. Предусмотреть контроль вводимых значений. Провести тестирование программы.

    Номер 23:

    Создать квадратную матрицу размера 8 на 8. Матрица заполняется случайными целыми числами в диапазоне от 1 до 100. На матрицу накладывается разметка, соответствующая шахматной доске. Пользователь выбирает на матрице диагональ, задавая координаты двух клеток (ее начала и конца). Например, А5-Е1. Требуется упорядочить элементы матрицы, принадлежащие заданной диагонали, а остальные элементы обнулить. Результаты преобразований вывести на экран.

    1. БЛОК-СХЕМЫ АЛГОРИТМОВ ПРОГРАММЫ
      1. Основной алгоритм

    По заданию была составлена блок-схема, которая описывает алгоритм программы (рис. 1)
    :



    Р
    исунок 1 – Блок-схема основного алгоритма
    2.2 Алгоритмы подпрограмм-функций

    В виде блок-схем была представлена работа подпрограмм «calc_abs» (рис. 2), «find_ord» (рис. 3), «str_to_digit» (рис. 4), «get_int» (рис. 5), «get_len» (рис. 6), «sort_lst» (рис. 7), «fill_pole_with_rand_num» (рис. 8), «print_pole» (рис. 9):



    Рисунок 2 – Блок-схема функции «calc_abs»



    Рисунок 3 – Блок-схема функции «find_ord»



    Рисунок 4 – Блок-схема функции «str_to_digit»



    Рисунок 5 – Блок-схема функции «get_int»



    Рисунок 6 – Блок-схема функции «get_len»



    Рисунок 7 – Блок-схема функции «sort_lst»



    Рисунок 8 – Блок-схема функции « print_pole»



    Рисунок 9 – Блок-схема функции «fill_pole_with_rand_num»
    3 КОД ПРОГРАММЫ НА ЯЗЫКЕ PYTHON

    На языке PYTHON были реализованы (рис. 1- 9) алгоритмы.
    3.1 Реализация вспомогательных функций

    Для удобства многократного вычисления модуля числа этот алгоритм был вынесен в отдельную подпрограмму. На вход функция принимает число, а возвращает модуль этого числа (рис. 10):



    Рисунок 10 - Код функции «calc_abs»

    Для удобства многократного нахождения ASCII-кода символов от “A” до “H” этот алгоритм был вынесен в отдельную подпрограмму. На вход функция принимает один из упомянутых символов, а возвращает ASCII-код этого символа (рис. 11):



    Рисунок 11 - Код функции «find_ord»

    Для удобства многократного перевода цифр из строкового в целочисленный тип данных этот алгоритм был вынесен в отдельную подпрограмму. На вход функция принимает один цифру в виде строки, а возвращает её в числовом типе данных (рис. 12):



    Рисунок 12 - Код функции «str_to_digit»

    Для удобства многократного перевода чисел из строкового в целочисленный тип данных этот алгоритм был вынесен в отдельную подпрограмму. На вход функция принимает число в виде строки, а возвращает его в числовом типе данных (рис. 13):



    Рисунок 13 - Код функции «get_int»

    Для удобства многократного вычисления длины массива или строки этот алгоритм был вынесен в отдельную подпрограмму. На вход функция принимает массив или строку, а возвращает длину массива или строки (рис. 14):



    Рисунок 14 - Код функции «get_len»

    Для удобства многократной сортировки массива этот алгоритм был вынесен в отдельную подпрограмму. На вход функция принимает массив, а возвращает отсортированный массив (рис. 15):



    Рисунок 15 - Код функции «sort_lst»

    Для удобства заполнения поля этот алгоритм был вынесен в отдельную подпрограмму. На вход функция принимает пустой массив, а возвращает заполненный случайными числами массив необходимого размера (рис. 16):



    Рисунок 16 - Код функции «fill_pole_with_rand_num»

    Для удобства вывода поля этот алгоритм был вынесен в отдельную подпрограмму. На вход функция принимает массив и выводит его в консоль, накладывая шахматную сетку (рис. 17):



    Рисунок 17 - Код функции «print_pole»
    3.2 Реализация основного алгоритма

    С использованием упомянутых функций и основной блок-схемы (рис.1) был реализован требуемый алгоритм (рис. 18):



    Рисунок 18 - Код основного алгоритма
    4 ТЕСТИРОВАНИЕ ПРОГРАММЫ
    4.1 Тестирование программы на правильном вводе

    Для начала была проверена правильность работы программы при корректных значениях (рис. 19):



    Рисунок 19 – Тестирование работы программы при корректном вводе
    4.2 Тестирование системы валидации данных

    Важность представляет система валидации данных, поэтому были проверены все возможные некорректные вводы в программу и было определено, что программа корректно их обрабатывает (рис. 20):



    Рисунок 20 – Тестирование валидации ввода
    5 ВЫВОДЫ

    Были построены блок-схемы, реализующие алгоритм, заданный в текстовой форме на натуральном языке. Реализован алгоритм на языке PYTHON. Проведено тестирование программы на правильность ее выполнения.
    4 ИНФОРМАЦИОННЫЕ ИСТОЧНИКИ

    1. Смирнов С.С., Карпов Д. А. Информатика: Методические указания по выполнению практических работ / Федеральное государственное бюджетное образовательное учреждение высшего образования «МИРЭА – Российский технологический университет» / -М., 2020. – 102 с., электронное издание

    Воронов Г.Б. Лекции по информатике для 1-го курса всех направлений института ИТ и групп КАБО института кибернетики / Федеральное государственное бюджетное образовательное учреждение высшего образования «МИРЭА – Российский технологический университет» / -М., 2022



    написать администратору сайта