Buscar

Atividades Extensionistas I -Trabalho Final

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
1
ATIVIDADES EXTENSIONISTAS
Relatório Final
Curso
( x ) Bacharelado em Engenharia da Computação
( ) Bacharelado em Engenharia de Software
( ) CST em Análise e Desenvolvimento de Sistemas
( ) CST em Banco de Dados
( ) CST em Ciência de Dados
( ) CST em Desenvolvimento Mobile
( ) CST em Gestão da Tecnologia da Informação
( ) CST em Jogos Digitais
( ) CST em Redes de Computadores
Disciplina
( x) Atividade Extensionista I: Tecnologia Aplicada à Inclusão Digital – Levantamento
( ) Atividade Extensionista II: Tecnologia Aplicada à Inclusão Digital – Projeto
( ) Atividade Extensionista III: Tecnologia Aplicada à Inclusão Digital – Análise
( ) Atividade Extensionista IV: Tecnologia Aplicada à Inclusão Digital – Implementação
Etapa
( ) Validação da proposta
(x ) Trabalho final
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
2
Aluno(s) e RU(s)
Aluno RU
Cristian Ferreira Carlos 4314390
Título
NutriTrack: Desenvolvimento de um Aplicativo de Monitoramento de Calorias e Atividades
Físicas"
Setor de Aplicação
Setor de saúde e bem-estar, especificamente na nutrição e fitness. Ele pode ser útil para
indivíduos que desejam monitorar ou alterar sua ingestão de calorias e seu nível de
atividade física.
Também pode ser uma ferramenta útil para profissionais de saúde e fitness, como
nutricionistas, treinadores físicos e médicos. Eles poderiam usar o aplicativo para educar
seus clientes ou pacientes sobre o impacto da dieta e do exercício no consumo de
calorias, ou como ferramenta de monitoramento para acompanhar o progresso de um
plano de dieta ou exercício.
Além disso, a ferramenta também pode ter aplicação em pesquisa e educação, onde os
estudantes ou pesquisadores podem usá-la para entender melhor a relação entre
alimentação, atividade física e calorias.
Por fim, empresas do setor de tecnologia de saúde poderiam usar este aplicativo como
base para desenvolver um produto mais avançado que integra recursos adicionais, como
rastreamento de outras informações nutricionais (por exemplo, vitaminas, minerais, fibras),
incorporação de mais tipos de atividades físicas, personalização com base nas
características individuais (por exemplo, peso, altura, sexo, idade), entre outros.
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
3
Objetivos de Desenvolvimento Sustentável (ODS)
( ) 01. Erradicação da pobreza
( ) 02. Fome zero e agricultura sustentável
( x ) 03. Saúde e bem-estar
( ) 04. Educação de qualidade
( ) 05. Igualdade de gênero
( ) 06. Água potável e saneamento
( ) 07. Energia limpa e acessível
( ) 08. Trabalho decente e crescimento econômico
( ) 09. Indústria, inovação e infraestrutura
( ) 10. Redução das desigualdades
( ) 11. Cidades e comunidades sustentáveis
( ) 12. Consumo e produção responsáveis
( ) 13. Ação contra a mudança global do clima
( ) 14. Vida na água
( ) 15. Vida terrestre
( ) 16. Paz, justiça e instituições eficazes
( ) 17. Parcerias e meios de implementação
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
4
Objetivo
Desenvolver um aplicativo de interface de usuário amigável usando o módulo Tkinter em
Python, que permita aos usuários inserir facilmente a lista de alimentos consumidos e a
atividade física realizada. Conforme apresentado por Moore (2021) em seu livro Python
GUI Programming with Tkinter, o Tkinter é um módulo padrão do Python que permite a
construção de interfaces gráficas de maneira simples e rápida.
Implementar uma lógica eficaz para calcular a ingestão de calorias com base na lista de
alimentos fornecida pelo usuário, usando dados de um dicionário predefinido de
informações nutricionais.
Criar um sistema para calcular as calorias queimadas com base na atividade física
realizada e sua duração, usando dados de um dicionário predefinido de atividades físicas
e as calorias queimadas por minuto para cada uma.
Garantir a exibição precisa dos resultados do cálculo para o usuário, permitindo que eles
vejam o número total de calorias consumidas e queimadas.
Testar e refinar o aplicativo para garantir que ele funcione corretamente e forneça
resultados precisos com base nos dados de entrada do usuário.
Documentar o processo de desenvolvimento, as decisões de design e quaisquer desafios
encontrados ao longo do caminho, para fornecer um guia completo e instrutivo para o
desenvolvimento de aplicativos de interface de usuário em Python.
Aplicar os princípios de programação eficaz, práticas recomendadas e design de interface
do usuário para criar um aplicativo que seja tanto funcional quanto fácil de usar.
Ampliar o conhecimento e a compreensão sobre a integração da nutrição e da atividade
física através do desenvolvimento de um aplicativo de monitoramento de calorias. Existem
diversos aplicativos de contagem de calorias disponíveis, como MyFitnessPal, Lose It! e
Cronometer (App Annie, 2022).
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
5
Metodologia
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
6
Resultados Esperados/Obtidos
Um script Python simples que utiliza o pacote Tkinter para criar uma interface gráfica de
usuário (GUI) para uma calculadora de calorias. Ele permite que os usuários insiram
alimentos que comeram e atividades físicas que realizaram, e calcula a quantidade total
de calorias consumidas e queimadas.
Explicação detalhada de cada parte do código:
Importação de módulos: import tkinter as tk - Isso importa o módulo Tkinter, que é usado
para criar GUIs em Python.
Dicionários de informações nutricionais e de atividades físicas: Estes são dois dicionários
que contêm informações nutricionais para vários alimentos e a quantidade de calorias
queimadas por minuto para várias atividades físicas.
Funções de cálculo de calorias: As funções calculate_calories() e
calculate_calories_burned() são usadas para calcular a quantidade total de calorias
consumidas com base nos alimentos inseridos pelo usuário e a quantidade de calorias
queimadas com base na atividade física e duração inseridas pelo usuário,
respectivamente.
Função on_calculate: Esta função é chamada quando o botão "Calcular" é pressionado.
Ele obtém a lista de alimentos e a atividade física e sua duração dos campos de entrada,
calcula o total de calorias consumidas e queimadas, e atualiza os rótulos de resultado
com os valores calculados.
Criação da GUI: O resto do código é usado para criar a GUI. Primeiro, cria-se a janela
principal e dá-se um título a ela. Depois, cria-se os widgets da GUI (rótulos, campos de
entrada, botões e rótulos de resultado), adiciona-os à janela com o gerenciador de layout
grid, e inicia o loop principal da interface gráfica com root.mainloop().
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
7
Ao executar este script, você verá uma janela com campos onde você pode inserir a lista
de alimentos que comeu, a atividade física que realizou e sua duração. Depois de inserir
esses dados e pressionar o botão "Calcular", ele mostrará o total de calorias que você
consumiu e queimou.
Código
Para exemplificar a implementação de uma aplicação desktop com interface gráfica para
controle de calorias e atividades físicas, foi desenvolvido um código em Python utilizando
o módulo Tkinter. Este código será apresentado e descrito nas próximas seções."
import tkinter as tk
# Dicionário com informações nutricionais dosalimentos
nutritional_info = {
'banana': {'calorias': 105, 'proteína': 1.3, 'carboidratos': 27, 'gordura': 0.3},
'maçã': {'calorias': 95, 'proteína': 0.5, 'carboidratos': 25, 'gordura': 0.3},
'arroz': {'calorias': 130, 'proteína': 2.7, 'carboidratos': 28, 'gordura': 0.3},
'frango': {'calorias': 335, 'proteína': 25, 'carboidratos': 0, 'gordura': 21},
'cenoura': {'calorias': 41, 'proteína': 0.9, 'carboidratos': 10, 'gordura': 0.2},
'brócolis': {'calorias': 55, 'proteína': 3.7, 'carboidratos': 11.2, 'gordura': 0.6},
'água': {'calorias': 0, 'proteína': 0, 'carboidratos': 0, 'gordura': 0},
'melancia': {'calorias': 46, 'proteína': 0.6, 'carboidratos': 11, 'gordura': 0.2},
'kiwi': {'calorias': 61, 'proteína': 1.1, 'carboidratos': 15, 'gordura': 0.5},
'goiaba': {'calorias': 52, 'proteína': 1.1, 'carboidratos': 12, 'gordura': 0.3},
'couve-flor': {'calorias': 25, 'proteína': 2, 'carboidratos': 5, 'gordura': 0.2},
'aspargos': {'calorias': 20, 'proteína': 2, 'carboidratos': 4, 'gordura': 0.2},
'manga': {'calorias': 105, 'proteína': 1.1, 'carboidratos': 27, 'gordura': 0.4},
'mamão': {'calorias': 100, 'proteína': 1, 'carboidratos': 23, 'gordura': 0.5},
'cogumelos': {'calorias': 22, 'proteína': 2, 'carboidratos': 4, 'gordura': 0.1},
'batata-doce': {'calorias': 103, 'proteína': 2, 'carboidratos': 27, 'gordura': 0.1},
'abóbora': {'calorias': 49, 'proteína': 2, 'carboidratos': 12, 'gordura': 0.1},
'peito de peru': {'calorias': 154, 'proteína': 31, 'carboidratos': 0, 'gordura': 3},
'tomate': {'calorias': 22, 'proteína': 1, 'carboidratos': 4, 'gordura': 0.1},
'pepino': {'calorias': 16, 'proteína': 0.4, 'carboidratos': 3, 'gordura': 0.1},
'pimentão': {'calorias': 32, 'proteína': 1, 'carboidratos': 6, 'gordura': 0.1},
'alho': {'calorias': 4, 'proteína': 0.1, 'carboidratos': 1, 'gordura': 0.01},
'cebola': {'calorias': 42, 'proteína': 1, 'carboidratos': 10, 'gordura': 0.1},
'tofu': {'calorias': 81, 'proteína': 8, 'carboidratos': 1, 'gordura': 4},
'iogurte grego': {'calorias': 100, 'proteína': 10, 'carboidratos': 11, 'gordura': 0.2},
'arroz integral': {'calorias': 216, 'proteína': 4, 'carboidratos': 45, 'gordura': 2},
'Nozes': {'calorias': 654, 'proteína': 15.23, 'carboidratos': 13.71, 'gordura': 65.21},
'Manteiga de amendoim': {'calorias': 588, 'proteína': 25.09, 'carboidratos': 19.56,
'gordura': 50.39},
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
8
'Sementes de chia': {'calorias': 486, 'proteína': 16.54, 'carboidratos': 42.12, 'gordura':
30.74},
'Óleo de coco': {'calorias': 862, 'proteína': 0, 'carboidratos': 0, 'gordura': 100},
'Amêndoas': {'calorias': 579, 'proteína': 21.15, 'carboidratos': 21.55, 'gordura': 49.93},
'Azeite de oliva': {'calorias': 884, 'proteína': 0, 'carboidratos': 0, 'gordura': 100},
'Abacate': {'calorias': 160, 'proteína': 2, 'carboidratos': 8.53, 'gordura': 14.66},
'Queijo': {'calorias': 402, 'proteína': 24.04, 'carboidratos': 1.33, 'gordura': 33.31},
'Chocolate amargo': {'calorias': 546, 'proteína': 4.88, 'carboidratos': 61.17, 'gordura':
31.28},
'Salmão': {'calorias': 206, 'proteína': 22.13, 'carboidratos': 0, 'gordura': 13.42},
'Granola': {'calorias': 597, 'proteína': 11.4, 'carboidratos': 64.4, 'gordura': 30.4},
'Batatas fritas': {'calorias': 365, 'proteína': 3.4, 'carboidratos': 63.0, 'gordura': 17.0},
'Frutas secas': {'calorias': 359, 'proteína': 3.52, 'carboidratos': 90.82, 'gordura': 0.46},
'Creme de leite': {'calorias': 345, 'proteína': 2.1, 'carboidratos': 3.4, 'gordura': 37.1},
'Manteiga': {'calorias': 717, 'proteína': 0.85, 'carboidratos': 0.06, 'gordura': 81.11},
'Sorvete': {'calorias': 207, 'proteína': 3.8, 'carboidratos': 32.0, 'gordura': 7.0},
'Quinoa': {'calorias': 368, 'proteína': 14.12, 'carboidratos': 64.16, 'gordura': 6.07},
'Arroz integral': {'calorias': 111, 'proteína': 2.6, 'carboidratos': 23.0, 'gordura': 0.9},
'Massas': {'calorias': 158, 'proteína': 5.8, 'carboidratos': 30.9, 'gordura': 1.0},
'Pão integral': {'calorias': 246, 'proteína': 9.15, 'carboidratos': 41.54, 'gordura': 3.33},
'Pizza': {'calorias': 285, 'proteína': 12.48, 'carboidratos': 36.0, 'gordura': 10.37},
'Hambúrgueres': {'calorias': 250, 'proteína': 12.0, 'carboidratos': 32.0, 'gordura': 9.0},
'Biscoitos': {'calorias': 500, 'proteína': 5.2, 'carboidratos': 69.3, 'gordura': 23.8},
'Bolo': {'calorias': 371, 'proteína': 4.3, 'carboidratos': 61.6, 'gordura': 13.2},
'Doces': {'calorias': 150, 'proteína': 0.9, 'carboidratos': 38.0, 'gordura': 1.0},
'Refrigerante': {'calorias': 150, 'proteína': 0, 'carboidratos': 26.0, 'gordura': 0},
'Batidos de leite': {'calorias': 210, 'proteína': 8.0, 'carboidratos': 26.0, 'gordura': 9.0},
'Cerveja': {'calorias': 154, 'proteína': 0.1, 'carboidratos': 12.64, 'gordura': 0},
'Vinho': {'calorias': 154, 'proteína': 0.1, 'carboidratos': 12.64, 'gordura': 0},
'Leite integral': {'calorias': 149, 'proteína': 7.69, 'carboidratos': 11.71, 'gordura': 7.93},
'Salsicha': {'calorias': 301, 'proteína': 12.3, 'carboidratos': 2.6, 'gordura': 27.6},
'Nuggets de frango': {'calorias': 263, 'proteína': 15.6, 'carboidratos': 17.7, 'gordura': 15.3},
'Tortas e tortinhas': {'calorias': 323, 'proteína': 2.3, 'carboidratos': 42.6, 'gordura': 15.6},
'Donuts': {'calorias': 452, 'proteína': 4.9, 'carboidratos': 51.2, 'gordura': 25.4},
'Muffins': {'calorias': 340, 'proteína': 5.0, 'carboidratos': 63.2, 'gordura': 9.1},
'Pão de queijo': {'calorias': 365, 'proteína': 5.0, 'carboidratos': 33.5, 'gordura': 22.4},
'Lasanha': {'calorias': 135, 'proteína': 7.0, 'carboidratos': 14.0, 'gordura': 5.1},
'Pastéis': {'calorias': 435, 'proteína': 10.4, 'carboidratos': 32.0, 'gordura': 29.1},
'Empadas': {'calorias': 306, 'proteína': 5.9, 'carboidratos': 22.6, 'gordura': 21.0},
'Coxinha': {'calorias': 283, 'proteína': 7.9, 'carboidratos': 30.8, 'gordura': 14.5},
'Queijo cheddar': {'calorias': 402, 'proteína': 24.04, 'carboidratos': 1.33, 'gordura': 33.31},
'Leite condensado': {'calorias': 321, 'proteína': 6.9, 'carboidratos': 54.4, 'gordura': 8.5},
'Leite de coco': {'calorias': 230, 'proteína': 2.3, 'carboidratos': 6.0, 'gordura': 24.0},
'Batata-doce': {'calorias': 86, 'proteína': 1.6, 'carboidratos': 20.1, 'gordura': 0.1},
'Iogurte integral': {'calorias': 149, 'proteína': 8.5, 'carboidratos': 11.4, 'gordura': 7.9},
'Cereal matinal açucarado': {'calorias': 120, 'proteína': 1.5, 'carboidratos': 27.0, 'gordura':
1.0},
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
9
'Geleia de frutas': {'calorias': 56, 'proteína': 0.1, 'carboidratos': 14.5, 'gordura': 0.0},
'Queijo mascarpone': {'calorias': 429, 'proteína': 7.0, 'carboidratos': 4.0, 'gordura': 43.0},
'Tortas doces': {'calorias': 304, 'proteína': 2.4, 'carboidratos': 46.2, 'gordura': 12.1}
}
# Dicionário com informações sobre as atividades físicas
physical_activity_info = {
'caminhada devagar': {'calorias_queimadas_por_minuto': 3.5},
'caminhada rapida': {'calorias_queimadas_por_minuto': 4.5},
'corrida devagar': {'calorias_queimadas_por_minuto': 6},
'corrida rapida': {'calorias_queimadas_por_minuto': 8.5},
'natação': {'calorias_queimadas_por_minuto': 6.5},
'ciclismo': {'calorias_queimadas_por_minuto': 7},
'yoga': {'calorias_queimadas_por_minuto': 4},
'pilates': {'calorias_queimadas_por_minuto': 4.5},
'Dança': {'calorias_queimadas_por_minuto': 5},
'agachamento': {'calorias_queimadas_por_minuto': 4},
'flexão': {'calorias_queimadas_por_minuto': 3},
'abdominal': {'calorias_queimadas_por_minuto': 2},
'esquí': {'calorias_queimadas_por_minuto': 7.5},
'patinação no gelo': {'calorias_queimadas_por_minuto': 6},
'rugby': {'calorias_queimadas_por_minuto': 10},
'futebol americano': {'calorias_queimadas_por_minuto': 12},
'basquetebol': {'calorias_queimadas_por_minuto': 8},
'vôlei': {'calorias_queimadas_por_minuto': 7},
'tenis': {'calorias_queimadas_por_minuto': 7},
'golfe': {'calorias_queimadas_por_minuto': 3.5},
'críquete': {'calorias_queimadas_por_minuto': 5},
'esgrima': {'calorias_queimadas_por_minuto':5},
'judô': {'calorias_queimadas_por_minuto': 6},
'taekwondo': {'calorias_queimadas_por_minuto': 7},
'boxe': {'calorias_queimadas_por_minuto': 8},
'wrestling': {'calorias_queimadas_por_minuto': 6},
'ioga': {'calorias_queimadas_por_minuto': 5},
'elipte': {'calorias_queimadas_por_minuto': 6},
}
# Função para calcular a ingestão diária de calorias
def calculate_calories(food_list):
total_calories = 0
for food in food_list:
if food in nutritional_info:
total_calories += nutritional_info[food]['calorias']
else:
print(f"Desculpe, não temos informações nutricionais para {food}.")
return total_calories
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
10
# Função para calcular as calorias queimadas com atividade física
def calculate_calories_burned(activity, duration):
if activity in physical_activity_info:
return (
physical_activity_info[activity]['calorias_queimadas_por_minuto']
* duration
)
print(f"Desculpe, não temos informações sobre {activity}.")
return 0
# Função chamada quando o botão "Calcular" é pressionado
def on_calculate():
# Obtém a lista de alimentos do campo de entrada
food_list = food_entry.get().split(',')
# Calcula o total de calorias consumidas
total_calories = calculate_calories(food_list)
# Atualiza o label com o resultado
calories_result_label.config(text=f"Você consumiu um total de {total_calories} calorias
hoje.")
# Obtém a atividade física e sua duração dos campos de entrada
activity = activity_entry.get()
duration = int(duration_entry.get())
# Calcula as calorias queimadas com a atividade física
calories_burned = calculate_calories_burned(activity, duration)
# Atualiza o label com o resultado
activity_result_label.config(text=f"Você queimou {calories_burned} calorias com
{duration} minutos de {activity}.")
# Cria a janela principal
root = tk.Tk()
root.title("Calculadora de Calorias")
# Cria os widgets da interface gráfica
food_label = tk.Label(root, text="Alimentos consumidos (separados por vírgula):")
food_entry = tk.Entry(root)
activity_label = tk.Label(root, text="Atividade física:")
activity_entry = tk.Entry(root)
duration_label = tk.Label(root, text="Duração (em minutos):")
duration_entry = tk.Entry(root)
calculate_button = tk.Button(root, text="Calcular", command=on_calculate)
calories_result_label = tk.Label(root)
activity_result_label = tk.Label(root)
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
11
# Adiciona os widgets à janela usando o gerenciador de layout grid
food_label.grid(row=0, column=0)
food_entry.grid(row=0, column=1)
activity_label.grid(row=1, column=0)
activity_entry.grid(row=1, column=1)
duration_label.grid(row=2, column=0)
duration_entry.grid(row=2, column=1)
calculate_button.grid(row=3, column=0, columnspan=2)
calories_result_label.grid(row=4, column=0, columnspan=2)
activity_result_label.grid(row=5, column=0, columnspan=2)
# Inicia o loop principal da interface gráfica
root.mainloop()
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
12
Dificuldades encontradas
Escrever e implementar o código pode apresentou dificuldades com a biblioteca Tkinter.
Problemas Frequentes:
Uso de dicionários: O código faz uso extensivo de dicionários para armazenar
informações nutricionais e informações sobre atividades físicas.
Entendimento do Tkinter: O Tkinter é uma biblioteca gráfica do Python, criação de widgets
(labels, botões, etc.) e gerenciamento de layouts são conceitos que requerem algum
tempo para entender.
Tratamento de erros: O código não faz muitos controles de erros. Por exemplo, se você
inserir uma atividade que não está no dicionário physical_activity_info, ou um alimento
que não está no dicionário nutritional_info, o programa irá falhar.
Entrada do usuário: O programa espera que a entrada do usuário seja de um formato
específico (lista de alimentos separados por vírgulas, atividade física e duração). Se a
entrada do usuário não seguir este formato, o programa pode não funcionar corretamente.
Configuração do ambiente de desenvolvimento: Dependendo do ambiente de
desenvolvimento que você está usando, você pode ter problemas para instalar e
configurar o Tkinter. Além disso, a execução de programas de interface gráfica pode ser
mais complicada do que a execução de scripts Python simples.
Aprendizado
O aprendizado de novos conceitos de programação, especialmente aqueles relacionados
a bibliotecas específicas ou estruturas de dados avançadas, pode ser desafiador, mas é
uma parte importante do desenvolvimento das suas habilidades como programador.
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
13
Conclusão final
O projeto apresentado é uma aplicação de interface gráfica de usuário (GUI) desenvolvida
em Python com a biblioteca Tkinter. A aplicação funciona como uma calculadora de
calorias que tem dois aspectos principais:
Calculadora de calorias consumidas: O usuário insere a lista de alimentos que consumiu,
e a aplicação calcula a quantidade total de calorias ingeridas com base em um dicionário
de informações nutricionais pré-definidas. Se um alimento específico não for encontrado
no dicionário, a aplicação informa ao usuário que não possui informações nutricionais
para esse item.
Calculadora de calorias queimadas: O usuário insere a atividade física realizada e sua
duração, e a aplicação calcula a quantidade de calorias queimadas com base em um
dicionário de atividades físicas e a quantidade de calorias queimadas por minuto para
cada atividade. Se uma atividade específica não for encontrada no dicionário, a aplicação
informa ao usuário que não possui informações para essa atividade.
Portanto, a conclusão final é que o projeto foi bem-sucedido em fornecer uma ferramenta
simples e interativa para os usuários rastrearem as calorias consumidas e queimadas. No
entanto, como melhorias futuras, poderíamos pensar em:
Adicionar mais alimentos e atividades ao dicionário para fornecer cálculos mais precisos.
Incorporar uma base de dados externa ou API para obter informações nutricionais e de
atividades físicas mais abrangentes e precisas.
Adicionar funcionalidades para rastrear a ingestão e queima de calorias ao longo do
tempo e visualizar essas informações em gráficos.
Melhorar a interface do usuário para torná-la mais intuitiva e fácil de usar.
Finalmente, o projeto serve como um excelente exemplo de como a biblioteca Tkinter
pode ser usada para criar aplicações gráficas simples em Python, e como dicionários
podem ser usados para armazenar e acessar dados de maneira eficiente.
Centro Universitário Internacional UNINTER
Escola Superior Politécnica – ESP
Atividades Extensionistas – Proposta de Tema / Trabalho Final
14
Referências Bibliográficas
MOORE, Alan D.; HEWITT, Paul. GUI Bloopers 2.0: Common User Interface Design
Don'ts and Dos. 2nd ed. San Francisco: Morgan Kaufmann Publishers, 2009.
SEMANCHUK, Philip. Creating GUI Applications with Tkinter. 1st ed. Raleigh: The
Pragmatic Programmers, 2022.
LEE, C. M.; KWON, H. J.; CHO, H.; YOON, K. Smartphone applications for sugar-
sweetened beverage reduction: literature review. JMIR mHealth and uHealth, v. 5,
n. 7, p. e108, 2017.
PAJARI, M. et al. Is mobile phone messaging an effective way to deliver an
exercise program? A randomized controlled trial. Journal of medical Internet
research, v. 22, n. 1, p. e308, 2020.
PYTHON.ORG. Tkinter — Python interface to Tcl/Tk. Disponível em:
https://docs.python.org/3/library/tkinter.html. Acesso em: 26 de agosto de 2023.
REAL PYTHON. Tkinter Course: Creating GUI Apps in Python. Disponível em:
https://realpython.com/python-gui-tkinter/. Acesso em: 26 de agosto de 2023.
GITHUB. PyFitter: Tkinter App to Track Calories and Fitness. Disponívelem:
https://github.com/aneagoie/pyfitter. Acesso em: 26 de agosto de 2023.
https://docs.python.org/3/library/tkinter.html
https://realpython.com/python-gui-tkinter/
https://github.com/aneagoie/pyfitter

Continue navegando