Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015
Инфоурок / Информатика / Другие методич. материалы / Проект Создание графических моделей в программе Python с помощью библиотеки Tkinter.

Проект Создание графических моделей в программе Python с помощью библиотеки Tkinter.

  • Информатика

Документы в архиве:

Название документа код задачи питон.docx

Поделитесь материалом с коллегами:

from tkinter import *

from math import *

import random

root = Tk()

def getV(root):

kod=sca4.get()

if kod==1:

print("Теорема Пифагора ввод а и b")

a= sca1.get()

b =sca2.get()

print("Теорема Пифагора ввод а= ",a," b=",b)

c=sqrt(a*a+b*b)

print("Значение гипотенузы c= ",c)

elif kod ==2:

print("Значение суммы ряда(3*i+10)/(8*i*i+5),ввод n")

n=sca1.get()

s=sum((3*i+10)/(8*i*i+5) for i in range(n))

print("Значение суммы ряда(3*i+10)/(8*i*i+5)","n=",n,"s=", s)

elif kod==3:

print("Площадь арки параболы 0.5*i*i-4*i+10 ,ввод a=2, ввод b=8")

a=sca2.get()

b=sca3.get()

s=0

i=a

while i<=b:

s+=(0.5*i*i-4*i+10)*(b-a)/100

i=i+(b-a)/100

print("Площадь арки параболы 0.5*i*i-4*i+10 ","a=",a, "b=",b, "s=",s)

elif kod==4:

#print( "Макс и мин функции y=i**2-4*i+3,a=0,b=6")

a=sca2.get()

b=sca3.get()

i=a

max=0

min=500

while i<=b:

y=i**2-4*i+3

if y>max:

max=y

elif y

min=y

i=i+(b-a)/100

print("min=", min ,"max=" , max)

elif kod==5:

print('Производствен. план')

print('1 кв 2 кв 3 кв 4кв')

print('себестоимость в руб. за единицу изделия')

z=[22,32,54,78]

print(z)

print()

print('Количество изделий по номенклатуре')

a = [[100, 200, 300,250], [50,90,80, 60], [70, 80,100, 90],[170, 180,200, 190]]

for i in range(len(a)):

for j in range(len(a[i])):

print(a[i][j], end=' ')

print()

print()

print('Общая себестоимость за год')

for i in range(len(a)):

for j in range(len(a[i])):

print(a[i][j]*z[j], end=' ')

print()

fra = Frame(root, width=200, height=200, bg='yellow')

#lab1 = Label(root, text="Т.Пифагора значение гипотенузы c*c=a*a+b*b", font="Arial 10")

#lab2 = Label(root, text="значение катета а", font="Arial 10")

#lab3 = Label(root, text="значение катета b", font="Arial 10")

sca1 = Scale(root,orient=HORIZONTAL, length=300, from_=0, to=50, tickinterval=5, resolution=5,bg="red")

sca2 = Scale(root, orient=HORIZONTAL, length=300, from_=0, to=32, tickinterval=2, resolution=1,bg="lightblue")

sca3 = Scale(root, orient=HORIZONTAL, length=300, from_=0, to=32, tickinterval=2, resolution=1,bg="yellow")

sca4 = Scale(root, orient=HORIZONTAL, length=100, from_=1, to=5, tickinterval=1, resolution=1,bg="lightgreen")

button1 = Button(text="Получить значение")

sca1.pack()

sca2.pack()

sca3.pack()

sca4.pack()

button1.pack()

#lab1.pack()

#lab2.pack()

#lab3.pack()

button1.bind("",getV)

fra.pack()

root.mainloop



























Название документа проект шаг в науку.docx

Поделитесь материалом с коллегами:



Среднее общеобразовательное учреждение МОУ СОШ № 15
имени В. Д. Сабанеева











Проект:

Создание графических моделей в программе Python с помощью библиотеки Tkinter.









Автор проекта:
Учитель высшей категории Глушков Николай Васильевич













Подольск



2016 г



Содержание

  1. Цели и задачи проекта

  2. Основные теоретические положения

  3. Примеры создания математических и экономических моделей:
    3.1. Расчет гипотенузы прямоугольного треугольника
    по двум катетам; (теорема Пифагора).
    3.2. Вычисление суммы ряда по рекуррентной формуле;
    3.3. Нахождение площади арки параболы с исходными границами;
    3.4. Задача на наибольшее и наименьшее значение функции;
    3.5. Мини-проект производственного плана;
    Заключение





































1. Цели и задачи проектаhttp://younglinux.info/bg/tkinter.gif

Данный проект является продолжением учебных разработок, которые выполнены в серии задач
по программированию
на основе языка программирования Python . За основу настоящего проекта взят так же цикл практических уроков по программированию [1],[2],[3],[4].
Данный проект должен сформировать у обучающихся базовые понятия построения графического интерфейса пользователя (GUI), а также расширить знания о программировании.

2. Основные теоретические положения

В последнее время достаточно удобными при демонстрации результатов программ, которые пишут программисты, являются приложения с графическим пользовательским интерфейсом (GUI). Автор данного проекта в основном взаимодействует с программой с помощью различных кнопок, меню, значков, вводя информацию в специальные поля, выбирая определенные значения в списках и т. д. Для языка программирования Python такие виджеты включены в специальную библиотеку — tkinter. Если ее импортировать в программу (скрипт), то можно пользоваться ее компонентами, создавая графический интерфейс.

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

  1. Импорт библиотеки

  2. Создание главного окна

  3. Создание виджет

  4. Установка их свойств

  5. Определение событий

  6. Определение обработчиков событий

  7. Расположение виджет на главном окне

  8. Отображение главного окна

Основным инструментом в данном проекте является шкала:
Назначение шкалы — это предоставление пользователю выбора какого-то значения из определенного диапазона. Внешне шкала представляет собой горизонтальную или вертикальную полосу с разметкой, по которой пользователь может передвигать движок, осуществляя тем самым выбор значения. Пример шкал представлен в следующих скриптах, где прописаны их характеристики:

sca1 = Scale(fra3,orient=HORIZONTAL,length=300,

from_=0,to=100,tickinterval=10,resolution=5)

sca2 = Scale(root,orient=VERTICAL,length=400,

from_=1,to=2,tickinterval=0.1,resolution=0.1)

Свойства шкал:

  • orient определяет направление шкалы;

  • length – длина шкалы в пикселях;

  • from_ и to – с какого значения шкала начинается и каким заканчивается (т. е. диапазон значений);

  • tickinterval – интервал, через который отображаются метки для шкалы;

  • resolution - минимальная длина отрезка, на которую пользователь может передвинуть движок.

3. Примеры создания математических и экономических моделей:
3.1. Расчет гипотенузы прямоугольного треугольника

Программный код (математическая модель) начало:
def getV(root):
kod=sca4.get()
if kod==1:
print("Теорема Пифагора ввод а и b")
a= sca1.get()
b =sca2.get()
print("Теорема Пифагора ввод а= ",a," b=",b)
c=sqrt(a*a+b*b)
print("Значение гипотенузы c= ",c)
C:\Users\Николай\Desktop\Скриншот 16-02-2016 194821.png

3.2 Вычисление суммы ряда по рекуррентной формуле
Программный код (математическая модель) начало:
elif kod ==2:
print("Значение суммы ряда(3*i+10)/(8*i*i+5), ввод n")
n=sca1.get()
s=sum((3*i+10)/(8*i*i+5) for i in range(n))
print("Значение суммы ряда(3*i+10)/(8*i*i+5)","n=",n,"s=", s)

hello_html_5062a436.png

3.3 Нахождение площади арки параболы с исходными границами;

elif kod==3:
print("
Площадь арки параболы
0.5*i*i-4*i+10 ,
ввод a=2, ввод b=8")
a=sca2.get()
b=sca3.get()
s=0
i=a
while i<=b:
s+=(0.5*i*i-4*i+10)*(b-a)/100
i=i+(b-a)/100
print("
Площадь арки параболы
0.5*i*i-4*i+10 ","a=",a, "b=",b, "s=",s)
















C:\Users\Николай\Desktop\Скриншот 16-02-2016 222425.png

3.4 Задача на наибольшее и наименьшее значение функции;
elif kod==4:
print(Макс и мин функции y=i**2-4*i+3, a=0, b=6")
a=sca2.get()
b=sca3.get()
i=a
max=0
min=500
while i<=b:
if y>max:
max=y
elif y<min:
min=y
i=i+(b-a)/100
print("min=", min ,"max=" , max)

C:\Users\Николай\Desktop\Скриншот 16-02-2016 225900.png

3.5 Мини-проект производственного плана;
elif kod==5:
print('Производствен. план')
print('1 кв 2 кв 3 кв 4кв')
print('себестоимость в руб. за единицу изделия')
z=[22,32,54,78]
print(z)
print()
print('Количество изделий по номенклатуре')
a = [[100, 200, 300,250], [50,90,80, 60], [70, 80,100, 90],[170, 180,200, 190]]
for i in range(len(a)):
for j in range(len(a[i])):
print(a[i][j], end=' ')
print()
print()
print('Общая себестоимость за год')
for i in range(len(a)):
for j in range(len(a[i])):
print(a[i][j]*z[j], end=' ')
print()

C:\Users\Николай\Desktop\Скриншот 16-02-2016 222900.png

4. Заключение.
Данный проект является небольшим руководством для дальнейшего изучения учащимися перспективного языка Pyton. Он имеет очень совершенную математическую библиотеку и богатый графический модуль для выполнения задач, объектно-ориентированного направления. В проекте представлены отдельные математические и экономические модели – калькуляторы. Данные разработки выполнены самостоятельно авторами проекта. За отправную модель в проекте принята модель регулятора цветов [ 1 ]. В программном коде управление используемых шкал передается на формат математических данных с помощью класса get() ( a=sca2.get()) , которые и явились входными данными для решаемых в проекте задач. Программный код начинается с функции, где находится код математической модели. Данная функция по команде включается кнопкой в графическом окне. Графическая база программного кода состоит из фрейма , шкал и кнопки. Результаты работы программы выводятся в окно основной программы в аналитическом виде.


Литература:

  1. Создание GUI на Python с помощью библиотеки Tkinter. Программирование для начинающих
    http://younglinux.info/tkinter.php
    http://docplayer.ru/259428-Modul-tkinter-sozdanie-graficheskogo-interfeysa-polzovatelya-s-pomoshchyu-yazyka-programmirovaniya-python.html

  2. Программирование на Python. Том1, 2, 4-е издание Автор: Марк Лутц Издательство: Символ-Плюс Год: 2011
    Источник: http://progbook.ru/python/

  3. Python. Подробный справочник, 4-е издание Автор: Дэвид Бизли Издательство: Символ-Плюс Год: 2010
    Источник: http://progbook.ru/python/

  4.  Основы программирования на Python. Вводный курс Автор: Шапошникова С. Год издания: 2011 Издательство: Интернет-издание Страниц: 44 












































































Выберите курс повышения квалификации со скидкой 50%:

Автор
Дата добавления 23.03.2016
Раздел Информатика
Подраздел Другие методич. материалы
Просмотров154
Номер материала ДВ-548182
Получить свидетельство о публикации
Похожие материалы

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