Инфоурок Информатика Другие методич. материалыКУРС ДОПОЛНИТЕЛЬНЫХ ЗАДАНИЙ ПО РЕАЛИЗАЦИИ ГЕОМЕТРИЧЕСКИХ ВЫЧИСЛЕНИЙ НА ЯЗЫКЕ PYTHON С АВТОМАТИЧЕСКОЙ ПРОВЕРКОЙ (8 класс)

КУРС ДОПОЛНИТЕЛЬНЫХ ЗАДАНИЙ ПО РЕАЛИЗАЦИИ ГЕОМЕТРИЧЕСКИХ ВЫЧИСЛЕНИЙ НА ЯЗЫКЕ PYTHON С АВТОМАТИЧЕСКОЙ ПРОВЕРКОЙ (8 класс)

Скачать материал

 

 

 

 

 

 

 

 

РАЗРАБОТКА КУРСА ДОПОЛНИТЕЛЬНЫХ ЗАДАНИЙ ПО РЕАЛИЗАЦИИ ГЕОМЕТРИЧЕСКИХ ВЫЧИСЛЕНИЙ НА

ЯЗЫКЕ PYTHON С АВТОМАТИЧЕСКОЙ ПРОВЕРКОЙ

 

 

 

 

                                                                           

                                                        Коломойцева Мария Константиновна, учитель математики гимназии №1

                                                                           

 

 

 

 

 

Тюмень, 2020 г.

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

        

         Курс предполагает разработку дополнительных заданий по дисциплине «Программирование» и «Информатика» в средней и старшей школе. Более того, задания непосредственным образом связаны с дисциплиной «Геометрия», ведь в них используются действия с такими элементами как: точка, прямая, треугольник, квадрат, прямоугольник. В соответствии с современным ФГОС непосредственно программирование начинается в конце 8 класса (4 четверть).

         Задачи курса:

                   - показать возможность использования программирования для    решения          задач на геометрические вычисления;

                   - научить составлению и оформлению программ в соответствии с          нормативными требованиями языка программирования;

                   - содействовать развитию общей информационной культуры как          одного        из аспектов будущей профессиональной деятельности;

         -   развивать логическое и аналитическое мышление школьников.

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

         Данные практикумы являются дополнением к основному учебному процессу, факультативам, кружкам и подготовке к олимпиадам.            

                Курс состоит из 8 заданий, каждое из которых принадлежит определенной теме (Схема 1).

Схема 1. Разделение практикумов на темы

        

         Таким образом, курс состоит из 8 практикумов, разбитых на 3 математические темы за 7 и 8 класс общеобразовательной школы. Практикумы могут быть использованы как дополнительные задания на уроках информатики в период изучения языка программирования Python для закрепления полученного ранее теоретического материала.

         Приложение «А» содержит примеры решения практических заданий, а приложение «Б» код программы-проверки для учителя.

 

 

 

 

 

 

 

 

 

 

 

ФОРМУЛИРОВАНИЕ ЗАДАНИЙ ПРАКТИКУМА

 

Квадрат и прямоугольник

 

         Практикум №1

         Необходимо повторить:

         - типы данных в Python;

         - способы ввода и вывода данных в Python.

       Во всех практикумах будет использован тип данных – числа.

         Задача 1.  Вычислить периметр прямоугольника с заданными сторонами.

         Входные данные: в одной строке вводятся 2 натуральных числа.

         Выходные данные: значение периметра прямоугольника.

         Основная цель задачи: отработка навыка ввода и вывода данных.

         Пример:

        

 

         Практикум №2

         Необходимо повторить:

                  - основные арифметические операции (сложение, вычитание, умножение, деление, остаток от деления, целочисленное деление, возведение в степень);

                   - приоритет операций в Python.

        

         Задача 2. Найти число, представляющее собой количество десятков в значении площади квадрата, используя его диагональ.

         Входные данные: вводится положительное число х.

         Выходные данные: цифра, обозначающая количество десятков в значении площади.

         Основная цель задачи: применение математических знаний, умения анализировать ситуацию, отработка применения арифметических операций.

         Пример:

               

 

Прямая и точка

 

         Необходимо повторить:

                  - условные операторы в Python

         Практикум №3

         Задача 3. Определить принадлежит ли точка координатным осям по заданным координатам.

         Входные данные: в одной строке вводятся 2 числа, где первое число – координата по оси абсцисс, а второе – по оси ординат.

         Выходные данные: 1 - принадлежит координатным осям, 0 - не принадлежит.

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

         Пример: 

        

        

         Практикум №4

         Задача 4. Определить взаимное расположение прямых на плоскости.

         Входные данные: в одной строке вводятся коэффициенты k1, b1 – первой прямой, k2. b2 – второй прямой.

         Выходные данные: «1» - прямые параллельны друг другу, «2» - прямые совпадают, в случае пересечения вывести сумму координат по х и по y точки пересечения прямых.

         Основная цель задачи: отработка навыка использования условного оператора, применение математических знаний по теме «взаимное расположение прямых».

         Пример:
        

 

Треугольник

        

         Необходимо повторить:

                  - конструкция циклов;

                   - цикл с параметров в Python.

         Практикум №5

         Задача 5. С помощью цикла for вывести на экран сумму периметров n первых египетских треугольников.

         Входные данные: n – натуральное число, обозначающее количество треугольников.

         Выходные данные: в каждой строке перечисляются стороны треугольников по возрастанию.

         Основная цель задачи: отработка навыка работы с циклом с параметром, повторение изученного по геометрии в 7 классе.

         Пример:

        

        

         Практикум №6

         Задача 6. Найти количество существующих треугольников, от 1 до n, для заданного отношения с фиксированным значением k (рис. 1).

         Входные данные: в одной строке через пробел вводятся натуральные значения k и n.

         Выходные данные: количество существующих треугольников с заданными сторонами.

         Основная цель задачи: отработка навыка работы с циклом и условным оператором.

         Пример:

        

Рисунок 1. Модель задания № 6

        

         Необходимо повторить:

                   - конструкция циклов;

                   - цикл с предусловием.

         Практикум №7

         Задача 7. Определить максимальное целое значение стороны равностороннего треугольника, при котором радиус описанной окружности не будет превосходить заданное значение r, увеличивая с каждым шагом сторону треугольника на первоначальное значение m (рис. 2).

         Входные данные: в одной строке через пробел вводятся значения -m (изначальной стороны) и r- (предельного радиуса).

         Выходные данные: значение искомой стороны равностороннего треугольника.

         Основная цель задачи: отработка навыка работы с циклом с предусловием.

        

 

 

 

         Пример:

        

 

Рисунок 2. Обозначение параметра m

 

         Практикум №8

         Задача 8. Составить программу, которая определяет являются ли 3 веденных значения взаимно простыми сторонами прямоугольного треугольника.

         Входные данные: в одной строке через пробел вводят 3 натуральных числа.

         Выходные данные: «1» - в случае, если значения являются взаимно простыми сторонами прямоугольного треугольника, «0» - если этого не происходит.

         Основная цель задачи: отработка навыка работы с циклом с предусловием, повторение алгоритма Евклида.

 

 

         Пример:

        

        

         Стоит уточнить, что для проверки правильности составления программ школьниками, необходимо преобразовывать текстовый документ с готовым кодом в файл с типом «.py» и называть в соответствии с номером практикума: «задание1», «задание 2» и т.д.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ПРОГРАММА ПРОВЕРКИ РЕШЕНИЙ ЗАДАЧ КУРСА

 

                Для упрощения деятельности учителя, связанной с оцениванием заданий и для избегания субъективности, была создана программа, проверяющая составленные коды учащихся по каждому из 8 практикумов. Был создан пользовательский интерфейс из трех блоков (рис. 3). 

Рисунок 3. Приложение перед началом работы

         На каждом занятии учащийся выбирает нужный ему блок и видит перед собой краткое описание заданий, которые он должен был выполнить и назвать в соответствии с номером практикума. Так, при выборе первого блока «Квадрат и прямоугольник» пользователь обращается к первому и второму практикуму (рис.4).

Рисунок 4. Вид приложения при выборе первого блока

        

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

         Для каждого кода школьника, приложение проводит 5 различных тестов и вывод на экран результат в виде процента количества пройденных тестов.

Таким образом, если учащийся создал верный код, то результат на экране выдаст всего одну строку: «Пройдено 100%». Всего возможны 3 варианта вывода результата – 100% , 0% и частичное решение (20, 40, 60 или 80%) для различного количества пройденных тестов (рис. 5).

Рисунок 5. Различные варианты результата программы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ

 

1. http://qaru.site/questions/56231/confused-about-stdin-stdout-and-stderr

2. https://python-scripts.com/subprocess Работа с процессами в Python

3. http://py-my.ru/post/4bfb3c6a1d41c846bc00009b/ Кодировки в Python

4. https://pythonworld.ru/tipy-dannyx-v-python/fajly-rabota-s-fajlami.html Работа с файлами в Python

5. https://fgos.ru

6. https://pythonworld.ru/osnovy/cikly-for-i-while-operatory-break-i-continue-volshebnoe-slovo-else.html Циклы в Python

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ПРИЛОЖЕНИЕ А

 

         Пример кода программы для первой задачи:

        

         Пример кода программы для второй задачи:

         Пример кода программы для третьей задачи:

  

         Пример кода программы для четвертой задачи:

         Пример кода программы для пятой задачи:

        

 

 

 

 

         Пример кода программы для шестой задачи:

         Пример кода программы для седьмой задачи:

         Пример кода программы для восьмой задачи:

 

 

 

ПРИЛОЖЕНИЕ Б

 

 

 

import subprocess
print("Приветствуем, Вас. "
      "\nВыберите геометрический объект: "
      "\n1. Квадрат и прямоугольник "
      "\n2. Прямая и точка "
      "\n3. Треугольник")
q = 0
obj = int(input())

if obj == 1:
    print("\nЗадание № 1. "
        "\nВычислить периметр прямоугольника с заданными сторонами."
        "\nВходные данные: в одной строке вводятся 2 натуральных числа."
        "\n Выходные данные: значение периметра прямоугольника."
        "\n \nЗадание № 2."
        " \nНайти число, представляющее собой количество десятков в значении площади квадрата, используя его диагональ."
        " \n Входные данные: вводится положительное число х."
        "\n Выходные данные: цифра, обозначающая количество десятков в значении площади.")
    poi = int(input())
    if poi == 1:
        p = subprocess.Popen(['python', 'задание1.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("3 2", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 10:
            q += 1

        p = subprocess.Popen(['python', 'задание1.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("1001 1", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 2004:
            q += 1

        p = subprocess.Popen(['python', 'задание1.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("1 1", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 4:
            q += 1

        p = subprocess.Popen(['python', 'задание1.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("1000 1000", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 4000:
            q += 1

        p = subprocess.Popen(['python', 'задание1.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("21 12", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 66:
            q += 1

        print ("Пройдено ", q*20, "%")

    if poi == 2:
        p = subprocess.Popen(['python', 'задание2.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("9", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 4:
            q += 1

        p = subprocess.Popen(['python', 'задание2.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("10", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 5:
            q += 1

        p = subprocess.Popen(['python', 'задание2.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("4", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 0:
            q += 1

        p = subprocess.Popen(['python', 'задание2.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("90", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 5:
            q += 1

        p = subprocess.Popen(['python', 'задание2.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("28", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 9:
            q += 1
        print("Пройдено ", q * 20, "%")


if obj == 2:
    print("\nЗадание № 3. "
        "\nОпределить, по заданным координатам, принадлежит ли точка координатным осям."
        "\nВходные данные: в одной строке вводятся 2 числа, где первое число – координата по оси абсцисс, а второе – по оси ординат."
        "\nВыходные данные: «1» - принадлежит координатным осям, «0» - не принадлежит."

        "\n \nЗадание № 4. \nОпределить взаимное расположение прямых на плоскости."
        "\nВходные данные: в строке вводятся коэффициенты (k и b) первой прямой, а затем - второй прямой."
        "\nВыходные данные: «1» - прямые совпадают, «2» - прямые параллельны друг другу, в случае пересечения прямых вывести сумму координат х и у точки пересечения.")

    po = int(input())
    if po == 3:
        p = subprocess.Popen(['python', 'задание3.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("0 2", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 1:
            q += 1

        p = subprocess.Popen(['python', 'задание3.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("0 0", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 1:
            q += 1

        p = subprocess.Popen(['python', 'задание3.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("-1 2", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 0:
            q += 1

        p = subprocess.Popen(['python', 'задание3.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("10 10", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 0:
            q += 1

        p = subprocess.Popen(['python', 'задание3.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("-7 0", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 1:
            q += 1
        print("Пройдено ", q * 20, "%")

    if po == 4:
        p = subprocess.Popen(['python', 'задание4.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("1 -2 1 -2", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 1:
            q += 1


        p = subprocess.Popen(['python', 'задание4.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("10 17 10 -21", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 2:
            q += 1

        p = subprocess.Popen(['python', 'задание4.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("3 3 3 3", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 1:
            q += 1


        p = subprocess.Popen(['python', 'задание4.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("2 8 4 2", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = float(output.decode("utf-8"))
        if w == 17:
            q += 1


        p = subprocess.Popen(['python', 'задание4.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("6 -8 2 -6", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = float(output.decode("utf-8"))
        if w == -4.5:
            q += 1
        print("Пройдено ", q * 20, "%")
if obj == 3:
    print("\nЗадание № 5. "
        "\nС помощью цикла со счетчиком (for) найти сумму периметров первых n египетских треугольников "
          "\nВходные данные: n – натуральное число, обозначающее количество треугольников.\nВыходные данные: число - сумма периметров.\n "
          "\nЗадание № 6.\nНайти количество существующих треугольников, от 1 до n, для заданого отношения с фиксированным значением k. (рис. 1) "
          "\nВходные данные: в одной строке через пробел вводятся значения k и n \nВыходные данные: количество существующих треугольников с данными сторонами"
          "\n\nЗадание №7.\nОпределить максимальное целое значение стороны равностороннего треугольника, при котором радиус описанной окружности не будет превосходить заданное значение r, увеличивая "
          "с каждым шагом сторону треугольника на первоначальное значение m (рис. 2) \nВходные данные: в одной строке через пробел вводятся значения -m (изначальной стороны) и r- (предельного радиуса)\n"
          "Выходные данные: значение искомой стороны равностороннего треугольника"
          "\n\nЗадание №8.\nСоставить программу, которая определяет являются ли три введенных значения взаимно простыми сторонами прямоугольного треугольника.\nВходные данные: в одной строке вводят"
          " 3 натуральных числа. \nВыходные данные: «1» - в случае, если значения являются взаимно простыми сторонами прямоугольного треугольника, «0» - если этого не происходит.")
    ppp = int(input())
    if ppp==5:
        p = subprocess.Popen(['python', 'задание5.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("1", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 12:
            q += 1
        p = subprocess.Popen(['python', 'задание5.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("3", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 72:
            q += 1
        p = subprocess.Popen(['python', 'задание5.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("5", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 180:
            q += 1
        p = subprocess.Popen(['python', 'задание5.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("11", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 792:
            q += 1
        p = subprocess.Popen(['python', 'задание5.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("10", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 660:
            q += 1
        print("Пройдено ", q * 20, "%")
    if ppp == 6:
        p = subprocess.Popen(['python', 'задание6.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("11 7", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 0:
            q += 1

        p = subprocess.Popen(['python', 'задание6.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("3 12", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 8:
            q += 1

        p = subprocess.Popen(['python', 'задание6.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("4 16", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 3:
            q += 1

        p = subprocess.Popen(['python', 'задание6.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("12 45", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 0:
            q += 1

        p = subprocess.Popen(['python', 'задание6.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("1 20", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 3:
            q += 1
        print("Пройдено ", q * 20, "%")

    if ppp ==7:
        p = subprocess.Popen(['python', 'задание7.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("3 9", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 15:
            q += 1

        p = subprocess.Popen(['python', 'задание7.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("11 4", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 0:
            q += 1

        p = subprocess.Popen(['python', 'задание7.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("5 25", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 40:
            q += 1

        p = subprocess.Popen(['python', 'задание7.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("3 3", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 3:
            q += 1

        p = subprocess.Popen(['python', 'задание7.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE,
                             stderr=subprocess.PIPE)
        p.stdin.write(bytes("1 100", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 173:
            q += 1

        print("Пройдено ", q * 20, "%")

    if ppp==8:
        p = subprocess.Popen(['python', 'задание8.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("3 4 5", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 1:
            q += 1

        p = subprocess.Popen(['python', 'задание8.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("6 8 10", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 0:
            q += 1

        p = subprocess.Popen(['python', 'задание8.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("1 1 1", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 0:
            q += 1

        p = subprocess.Popen(['python', 'задание8.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("3 5 7", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 0:
            q += 1

        p = subprocess.Popen(['python', 'задание8.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p.stdin.write(bytes("8 17 15", "utf-8"))
        output, err = p.communicate()
        p.stdin.close()
        rc = p.returncode
        w = int(output.decode("utf-8"))
        if w == 1:
            q += 1

        print("Пройдено ", q * 20, "%")
else:
    print("Проверьте данные")

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "КУРС ДОПОЛНИТЕЛЬНЫХ ЗАДАНИЙ ПО РЕАЛИЗАЦИИ ГЕОМЕТРИЧЕСКИХ ВЫЧИСЛЕНИЙ НА ЯЗЫКЕ PYTHON С АВТОМАТИЧЕСКОЙ ПРОВЕРКОЙ (8 класс)"

Методические разработки к Вашему уроку:

Получите новую специальность за 3 месяца

Садовод-декоратор

Получите профессию

Технолог-калькулятор общественного питания

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Краткое описание документа:

Курс предполагает разработку дополнительных заданий по дисциплине «Программирование» и «Информатика» в средней и старшей школе на тематики из дисциплины "Геометрия".

Курс состоит из 8 практикумов, разбитых на 3 математические темы за 7 и 8 класс общеобразовательной школы. Практикумы могут быть использованы как дополнительные задания на уроках информатики в период изучения языка программирования Python для закрепления полученного ранее теоретического материала.

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 663 954 материала в базе

Материал подходит для УМК

Скачать материал

Другие материалы

Рабочая программа курса внеурочной деятельности ( общеинтеллектуальное направления) «Удивительный мир информатики»
  • Учебник: «Информатика», Босова Л.Л., Босова А.Ю.
  • Тема: Глава 3. Начала программирования
  • 06.01.2020
  • 446
  • 11
«Информатика», Босова Л.Л., Босова А.Ю.

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 22.01.2020 1034
    • DOCX 991.4 кбайт
    • 30 скачиваний
    • Оцените материал:
  • Настоящий материал опубликован пользователем Коломойцева Мария Константиновна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    • На сайте: 5 лет и 6 месяцев
    • Подписчики: 0
    • Всего просмотров: 1563
    • Всего материалов: 2

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Фитнес-тренер

Фитнес-тренер

500/1000 ч.

Подать заявку О курсе

Курс профессиональной переподготовки

Педагогическая деятельность по проектированию и реализации образовательного процесса в общеобразовательных организациях (предмет "Математика и информатика")

Учитель математики и информатики

300 ч. — 1200 ч.

от 7900 руб. от 3650 руб.
Подать заявку О курсе
  • Сейчас обучается 38 человек из 18 регионов
  • Этот курс уже прошли 33 человека

Курс профессиональной переподготовки

Информационные технологии в профессиональной деятельности: теория и методика преподавания в образовательной организации

Преподаватель информационных технологий

300/600 ч.

от 7900 руб. от 3650 руб.
Подать заявку О курсе
  • Сейчас обучается 191 человек из 54 регионов
  • Этот курс уже прошли 971 человек

Курс профессиональной переподготовки

Теория и методика обучения информатике в начальной школе

Учитель информатики в начальной школе

300/600 ч.

от 7900 руб. от 3650 руб.
Подать заявку О курсе
  • Сейчас обучается 96 человек из 34 регионов
  • Этот курс уже прошли 222 человека

Мини-курс

Планирование проектов

4 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Мозг и психотерапия: влияние, методы и направления

4 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 63 человека из 29 регионов
  • Этот курс уже прошли 27 человек

Мини-курс

Психологическая экспертиза в работе с детьми и родителями

2 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 78 человек из 38 регионов
  • Этот курс уже прошли 48 человек