{"id":28209676,"url":"https://github.com/juletopi/linguagem_de_programacao_visual","last_synced_at":"2026-03-15T04:02:27.953Z","repository":{"id":92470342,"uuid":"606588552","full_name":"juletopi/Linguagem_de_Programacao_Visual","owner":"juletopi","description":"📟 • Repositório back-end com os conteúdos de Linguagem de Programação Visual, utilizando o Visual Studio, a linguagem CSharp e a estrutura de interface do Windows Forms como ferramentas de aprendizado.","archived":false,"fork":false,"pushed_at":"2024-08-29T18:37:06.000Z","size":2382,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-10T21:44:06.073Z","etag":null,"topics":["back-end","backend","csharp","graphic-interface","graphical-user-interface","gui","interface","interface-grafica","programacao-visual","visual-programming","visual-programming-language","visual-studio","windows-forms"],"latest_commit_sha":null,"homepage":"https://www.linkedin.com/in/reinaldo-lima-pereira-7b726856/","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/juletopi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-02-25T23:48:45.000Z","updated_at":"2024-10-05T20:13:31.000Z","dependencies_parsed_at":null,"dependency_job_id":"7997a8e9-e8b6-476d-a168-b7b72cdf7739","html_url":"https://github.com/juletopi/Linguagem_de_Programacao_Visual","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/juletopi/Linguagem_de_Programacao_Visual","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juletopi%2FLinguagem_de_Programacao_Visual","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juletopi%2FLinguagem_de_Programacao_Visual/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juletopi%2FLinguagem_de_Programacao_Visual/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juletopi%2FLinguagem_de_Programacao_Visual/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/juletopi","download_url":"https://codeload.github.com/juletopi/Linguagem_de_Programacao_Visual/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juletopi%2FLinguagem_de_Programacao_Visual/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261143149,"owners_count":23115674,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["back-end","backend","csharp","graphic-interface","graphical-user-interface","gui","interface","interface-grafica","programacao-visual","visual-programming","visual-programming-language","visual-studio","windows-forms"],"created_at":"2025-05-17T16:13:00.796Z","updated_at":"2026-03-15T04:02:27.932Z","avatar_url":"https://github.com/juletopi.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!--\nReferences used in this Repository\nhttps://github.com/piyushsuthar/github-readme-quotes\nhttps://github.com/kyechan99/capsule-render\nhttps://github.com/DenverCoder1/custom-icon-badges\nhttps://profilepicturemaker.com\nhttps://shields.io\nhttps://emoji.gg\nhttps://getemoji.com\n--\u003e\n\n\u003cdiv align=\"left\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/license/juletopi/Linguagem_de_Programacao_Visual\" alt=\"Licence-badge\"\u003e\n\u003c/div\u003e\n\n\u003cbr\u003e\n\n\u003c!-- PRESENTATION --\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/WindowsForms-pic.png\"\u003e\n    \u003cimg src=\"https://user-images.githubusercontent.com/76459155/221386519-5f7aa521-6c02-4adb-a1ed-9c2e79e1454d.png\" alt=\"VisualProgramming-pic\" width=\"116px\" title=\"Repositório de Linguagem de Programação Visual\"\u003e\n  \u003c/a\u003e\n  \u003ch2 align=\"center\"\u003eLinguagem de Programação Visual 📟\u003c/h2\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n \n  • Este é um repositório com os conteúdos de Linguagem de Programação Visual, \\\n  ministradas pelo professor [**Reinaldo Lima Pereira**](https://www.linkedin.com/in/reinaldo-lima-pereira-7b726856/), utilizando o **Visual Studio**, \\\n  a linguagem **CSharp** e a estrutura de interface do **Windows Forms** \\\n  como ferramentas de aprendizado.\n \n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://visualstudio.microsoft.com/\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Made%20with%20IDE:-Visual%20Studio%20-gray.svg?colorA=655BE1\u0026amp;colorB=4F44D6\u0026amp;style=for-the-badge\" alt=\"VisualStudioIDE-badge\" style=\"max-width: 100%;\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://dotnet.microsoft.com/en-us/languages/csharp\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Made%20with%20language:-CSharp%20-gray.svg?colorA=61c265\u0026amp;colorB=4CAF50\u0026amp;style=for-the-badge\" alt=\"CSharpLanguage-badge\" style=\"max-width: 100%;\"\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://learn.microsoft.com/en-us/visualstudio/ide/create-csharp-winform-visual-studio?view=vs-2022\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Made%20with%20GUI:-Windows%20Forms-gray.svg?colorA=636363\u0026amp;colorB=343434\u0026amp;style=for-the-badge\" alt=\"WindowsForms-badge\" style=\"max-width: 100%;\"\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n\u003c!-- SUMMARY --\u003e\n\n\u003ch2 align=\"center\"\u003eSumário 🧾\u003c/h2\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cp align=\"center\"\u003e\n    \u003ca href=\"#%E2%80%8D-professor\"\u003eProfessor\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#1-ferramentas-do-windows-forms-e-criando-uma-calculadora-simples\"\u003eConceitos Aprendidos 1\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#2-criando-uma-calculadora-de-desconto\"\u003eConceitos Aprendidos 2\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#3-criando-um-menu-de-seleção-para-abrir-novas-janelas\"\u003eConceitos Aprendidos 3\u003c/a\u003e\n  \u003c/p\u003e\n    \u003ca href=\"#31-o-menu-de-conversores\"\u003eConceitos Aprendidos 3.1\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#32-as-novas-janelas-conversor-de-hectares--alqueires\"\u003eConceitos Aprendidos 3.2\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#33-as-novas-janelas-conversor-de-metros--km\"\u003eConceitos Aprendidos 3.3\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#34-as-novas-janelas-conversor-de-horas--minutos\"\u003eConceitos Aprendidos 3.4\u003c/a\u003e\n    \u003c/p\u003e\n    \u003ca href=\"#35-as-novas-janelas-conversor-de-hectares--km\"\u003eConceitos Aprendidos 3.5\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#4-exemplos-de-interação-com-o-usuário\"\u003eConceitos Aprendidos 4\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#41-o-menu-de-opções-de-interação\"\u003eConceitos Aprendidos 4.1\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#42-as-novas-janelas-exemplos-de-alertas\"\u003eConceitos Aprendidos 4.2\u003c/a\u003e\n  \u003c/p\u003e\n    \u003ca href=\"#43-as-novas-janelas-exemplo-com-alerta\"\u003eConceitos Aprendidos 4.3\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#44-as-novas-janelas-exemplo-com-rótulo\"\u003eConceitos Aprendidos 4.4\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#45-as-novas-janelas-exemplo-com-combo-box\"\u003eConceitos Aprendidos 4.5\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#5-simulador-de-média\"\u003eConceitos Aprendidos 5\u003c/a\u003e\n  \u003c/p\u003e\n    \u003ca href=\"#51-simuladormedia-janela-de-menu-principal\"\u003eConceitos Aprendidos 5.1\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#52-simuladormedia-janela-de-simulador-de-média\"\u003eConceitos Aprendidos 5.2\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#53-simuladormedia-janela-de-nota-mínima\"\u003eConceitos Aprendidos 5.3\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#54-simuladormedia-janela-de-exame-final\"\u003eConceitos Aprendidos 5.4\u003c/a\u003e\n  \u003c/p\u003e\n    \u003ca href=\"#6-calculadora-de-juros\"\u003eConceitos Aprendidos 6\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#7-exemplos-de-formatação-de-caracteres\"\u003eConceitos Aprendidos 7\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#8-simulador-de-comissão-da-concessionária-ômega\"\u003eConceitos Aprendidos 8\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#9-gerasorte---gerador-de-números-da-sorte\"\u003eConceitos Aprendidos 9\u003c/a\u003e\n  \u003c/p\u003e\n    \u003ca href=\"#91-gerasorte-janela-de-menu-principal\"\u003eConceitos Aprendidos 9.1\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#92-gerasorte-janela-da-lotofácil\"\u003eConceitos Aprendidos 9.2\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#93-gerasorte-janela-da-lotomania\"\u003eConceitos Aprendidos 9.3\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#94-gerasorte-janela-da-megasena\"\u003eConceitos Aprendidos 9.4\u003c/a\u003e\n  \u003c/p\u003e\n    \u003ca href=\"#95-gerasorte-janela-da-quina\"\u003eConceitos Aprendidos 9.5\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#96-gerasorte-janela-da-supersete\"\u003eConceitos Aprendidos 9.6\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#97-gerasorte-janela-da-dia-de-sorte\"\u003eConceitos Aprendidos 9.7\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#-autor\"\u003eAutor\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003cbr\u003e\n\n\u003cdiv align=\"center\"\u003e\n \n  [![Readme Quotes](https://quotes-github-readme.vercel.app/api?type=horizontal\u0026theme=dark\u0026quote=Algumas%20pessoas%20pensam%20que%20design%20significa%20como%20ele%20se%20parece.%20Mas,%20é%20claro,%20se%20você%20cavar%20mais%20fundo,%20na%20verdade%20é%20como%20ele%20funciona.\u0026author=Steve%20Jobs)](https://github.com/piyushsuthar/github-readme-quotes)\n\u003c/div\u003e\n\n\u003c!-- ABOUT TEACHER --\u003e\n\n## 👨‍🏫 Professor:\n\n\u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/ReinaldoLima-pic.png\"\u003e\n  \u003cimg align=\"left\" height=\"135px\" width=\"135px\" alt=\"ReinaldoLima-pic\" title=\"Professor Reinaldo Lima\" src=\"https://user-images.githubusercontent.com/76459155/221387561-1a565eeb-2f3a-4524-bccf-5d0fcd03927f.png\"\u003e\n\u003c/a\u003e\n \n  **Reinaldo Lima Pereira - Professor de Informática | Professor de Curso Técnico, Superior e Pós-Graduação** \\\n  [**IFRO Campus Ji-Paraná**](https://portal.ifro.edu.br/ji-parana) • \u003ci\u003eAtuando desde Março de 2016\u003c/i\u003e \\\n  Linguagens \u0026 Tecnologias: `C#` • `Windows Forms` • `Java` • `Delphi` \\\n  Contato: **[reinaldo.pereira@ifro.local](mailto:reinaldo.pereira@ifro.local)**\n\n\u003cbr\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003c!-- LEARNED CONCEPTS --\u003e\n\n## 📚 Conceitos Aprendidos:\n\n### 1. Ferramentas do Windows Forms e Criando uma Calculadora Simples\n\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaCalculadoraSimples-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://user-images.githubusercontent.com/76459155/222274248-4f711c97-50e6-4b9f-a779-18d0ad695f66.PNG\" alt=\"JanelaCalculadoraSimples-pic\" title=\"Calculadora Simples\" style=\"width: 60%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Calculadora_WinForms](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Calculadora_WinForms/Form1.cs)\"*\n \n  Nesta aula foram aprendidos:\n  - Conceitos básicos da ferramenta do Windows Forms\n  - Criação labels, text-boxes e buttons com a Caixa de Ferramentas\n  - Algoritmos simples de Soma, Subtração, Multiplicação e Divisão\n\n```c#\nprivate void btnSomar_Click(object sender, EventArgs e)\n{\n    lblResultadoNum.Text = (float.Parse(txtValor1.Text) + float.Parse(txtValor2.Text) + float.Parse(txtValor3.Text) + float.Parse(txtValor4.Text)).ToString();\n}\n\nprivate void btnSubtrair_Click(object sender, EventArgs e)\n{\n    lblResultadoNum.Text = (float.Parse(txtValor1.Text) - float.Parse(txtValor2.Text) - float.Parse(txtValor3.Text) - float.Parse(txtValor4.Text)).ToString();\n}\n\nprivate void btnMultiplicar_Click(object sender, EventArgs e)\n{\n    lblResultadoNum.Text = (float.Parse(txtValor1.Text) * float.Parse(txtValor2.Text) * float.Parse(txtValor3.Text) * float.Parse(txtValor4.Text)).ToString();\n}\n\nprivate void btnDividir_Click(object sender, EventArgs e)\n{\n    lblResultadoNum.Text = (float.Parse(txtValor1.Text) / float.Parse(txtValor2.Text) / float.Parse(txtValor3.Text) / float.Parse(txtValor4.Text)).ToString();\n}\n\nprivate void btnLimpar_Click(object sender, EventArgs e)\n{\n    txtValor1.Clear();\n    txtValor2.Clear();\n    txtValor3.Clear();\n    txtValor4.Clear();\n    txtValor1.Select();\n    lblResultadoNum.Text = \"0\";\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 2. Criando uma Calculadora de Desconto\n\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaCalcDeDesconto-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://user-images.githubusercontent.com/76459155/222634709-7ce89082-bb4b-4cf3-9578-cded6cf2e2ac.PNG\" alt=\"JanelaCalcDeDesconto-pic\" title=\"Calculadora de Desconto\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Calc_de_Desconto_WinForms](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Calc_de_Desconto_WinForms/Form1.cs)\"*\n \n  Nesta aula foram aprendidos:\n  - Criação labels, text-boxes e buttons com a Caixa de Ferramentas\n  - Algoritmo matemático simples de aplicação de desconto em porcentagem\n\n```c#\nprivate void btnCalcularDesconto_Click(object sender, EventArgs e)\n{\n    double valorDaCompra = 0, percDeDesconto = 0, valorComDesconto = 0;\n\n    valorDaCompra = Convert.ToDouble(txtValorDaCompra.Text);\n    percDeDesconto = Convert.ToDouble(txtPercDeDesconto.Text);\n    valorComDesconto = Convert.ToDouble(lblResultadoNum.Text);\n\n    valorComDesconto = valorDaCompra - valorDaCompra * (percDeDesconto / 100);\n\n    lblResultadoNum.Text = valorComDesconto.ToString(\"F\");\n}\n\n    private void btnLimpar_Click(object sender, EventArgs e)\n{\n    txtPercDeDesconto.Clear();\n    txtValorDaCompra.Clear();\n    txtValorDaCompra.Select();\n    lblResultadoNum.Text = \"0\";\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 3. Criando um Menu de Seleção para abrir Novas Janelas\n\n  Nesta aula foram aprendidos:\n  - Criação de novos formulários para criar novas janelas para acessar através dos botões\n  - Linkar o acesso de uma janela a outra através do código\n  - Criar um conversor de Hectares ⇆ Alqueires\n  - Criar um conversor de Horas ⇆ Minutos\n  - Criar um conversor de Metros ⇆ Km\n  - Criar um conversor de Hectares ⟶ Km²\n\n\u003e ### 3.1 O Menu de Conversores\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Menu_de_Forms_WinForms/GUI%20Images/JanelaMenuPrincipaldeConversores-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/assets/76459155/67d8238b-a908-45a4-b292-a5b62511f9f4\" alt=\"JanelaMenudeConversores-pic\" title=\"Menu de Conversores\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Menu_de_Forms_WinForms](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Menu_de_Forms_WinForms/Form1.cs)\"*\n\n```c#\nprivate void btnConversorHecteAlqu_Click(object sender, EventArgs e)\n{\n    FormConverterHecteAlqu form = new FormConverterHecteAlqu();\n    form.ShowDialog();\n}\n\nprivate void btnConversorMetroseKilometros_Click(object sender, EventArgs e)\n{\n    FormConverterMetroseKilometros form = new FormConverterMetroseKilometros();\n    form.ShowDialog();\n}\n\nprivate void btnConversorHoraseMinutos_Click(object sender, EventArgs e)\n{\n    FormConverterHoraseMinutos form = new FormConverterHoraseMinutos();\n    form.ShowDialog();\n}\n\nprivate void btnConversorHecteKmQuadrado_Click(object sender, EventArgs e)\n{\n    FormConverterHecteKmQuadrado form = new FormConverterHecteKmQuadrado();\n    form.ShowDialog();\n}\n\nprivate void linkJuletopi_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)\n{\n    string url = \"https://github.com/juletopi\";\n    Process.Start(url);\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 3.2 As Novas Janelas: Conversor de Hectares ⇆ Alqueires\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Menu_de_Forms_WinForms/GUI%20Images/JanelaConversorHectaresAlqueires-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/assets/76459155/410fa54c-d2a1-4782-95cd-1ce67659fac5\" alt=\"JanelaConversorHectAlque-pic\" title=\"Janela de Conversor de Hectares ⇆ Alqueires\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Menu_de_Forms_WinForms](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Menu_de_Forms_WinForms/Formularios/FormConverterHecParaAlq.cs)\"*\n\n```c#\nprivate void btnConverterHectare_Click(object sender, EventArgs e)\n{\n    double valorHectare = 0, valorAlqueire = 0;\n\n    valorHectare = Convert.ToDouble(txtValorHectare.Text);\n    valorAlqueire = Convert.ToDouble(lblResultadoHectareParaAlqueire.Text);\n\n    valorAlqueire = valorHectare * 2.42;\n\n    lblResultadoHectareParaAlqueire.Text = valorAlqueire.ToString();\n}\n\nprivate void btnConverterAlquere_Click(object sender, EventArgs e)\n{\n    double valorHectare = 0, valorAlqueire = 0;\n\n    valorAlqueire = Convert.ToDouble(txtValorAlqueire.Text);\n    valorHectare = Convert.ToDouble(lblResultadoAlqueireParaHectare.Text);\n\n    valorHectare = valorAlqueire / 2.42;\n\n    lblResultadoAlqueireParaHectare.Text = valorHectare.ToString();\n}\n\nprivate void btnLimpar_Click(object sender, EventArgs e)\n{\n    txtValorHectare.Clear();\n    txtValorAlqueire.Clear();\n    txtValorHectare.Select();\n    lblResultadoHectareParaAlqueire.Text = \"0\";\n    lblResultadoAlqueireParaHectare.Text = \"0\";\n}\n\nprivate void linkJuletopi_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)\n{\n    string url = \"https://github.com/juletopi\";\n    Process.Start(url);\n}\n\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 3.3 As Novas Janelas: Conversor de Metros ⇆ Km\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Menu_de_Forms_WinForms/GUI%20Images/JanelaConversorMetrosKilometros-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/assets/76459155/86032714-6a3a-4f17-b724-b03bcaf6c7cd\" alt=\"JanelaConversorMetrosKm\" title=\"Janela de Conversor de Metros ⇆ Km\" style=\"width: 50%;\"\u003e\u003c/a\u003e \n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Menu_de_Forms_WinForms](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Menu_de_Forms_WinForms/Formularios/FormConverterMetroseKilometros.cs)\"*\n\n```c#\nprivate void btnConverterMetrosParaKm_Click(object sender, EventArgs e)\n{\n    double valorMetros = 0, valorQuilometros = 0;\n\n    valorMetros = Convert.ToDouble(txtValorMetros.Text);\n    valorQuilometros = Convert.ToDouble(lblResultadoMetrosParaKm.Text);\n\n    valorQuilometros = valorMetros / 1000;\n\n    lblResultadoMetrosParaKm.Text = valorQuilometros.ToString();\n}\n\nprivate void btnConverterKmParaMetros_Click(object sender, EventArgs e)\n{\n    double valorMetros = 0, valorQuilometros = 0;\n\n    valorQuilometros = Convert.ToDouble(txtValorKm.Text);\n    valorMetros = Convert.ToDouble(lblResultadoKmParaMetros.Text);\n\n    valorMetros = valorQuilometros * 1000;\n\n    lblResultadoKmParaMetros.Text = valorMetros.ToString();\n}\n\nprivate void btnLimpar_Click(object sender, EventArgs e)\n{\n    txtValorMetros.Clear();\n    txtValorKm.Clear();\n    txtValorMetros.Select();\n    lblResultadoMetrosParaKm.Text = \"0\";\n    lblResultadoKmParaMetros.Text = \"0\";\n}\n\nprivate void linkJuletopi_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)\n{\n    string url = \"https://github.com/juletopi\";\n    Process.Start(url);\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 3.4 As Novas Janelas: Conversor de Horas ⇆ Minutos\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Menu_de_Forms_WinForms/GUI%20Images/JanelaConversorHorasMinutos-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/assets/76459155/6ca87344-998b-4359-80b6-8e0ffd92cbc6\" alt=\"JanelaConversorHorasMinutos-pic\" title=\"Janela de Conversor de Horas ⇆ Minutos\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Menu_de_Forms_WinForms](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Menu_de_Forms_WinForms/Formularios/FormConverterHoraseMinutos.cs)\"*\n\n```c#\nprivate void btnConverterHorasParaMinutos_Click(object sender, EventArgs e)\n{\n    double valorHoras = 0, valorMinutos = 0;\n\n    valorHoras = Convert.ToDouble(txtValorHoras.Text);\n    valorMinutos = Convert.ToDouble(lblResultadoHorasParaMinutos.Text);\n\n    valorMinutos = valorHoras * 60;\n\n    lblResultadoHorasParaMinutos.Text = valorMinutos.ToString();\n}\n\nprivate void btnConverteMinutosParaHoras_Click(object sender, EventArgs e)\n{\n    double valorHoras = 0, valorMinutos = 0;\n\n    valorMinutos = Convert.ToDouble(txtValorMinutos.Text);\n    valorHoras = Convert.ToDouble(lblResultadoMinutosParaHoras.Text);\n\n    valorHoras = valorMinutos / 60;\n\n    lblResultadoMinutosParaHoras.Text = valorHoras.ToString();\n}\n\nprivate void btnLimpar_Click(object sender, EventArgs e)\n{\n    txtValorHoras.Clear();\n    txtValorMinutos.Clear();\n    txtValorHoras.Select();\n    lblResultadoHorasParaMinutos.Text = \"0\";\n    lblResultadoMinutosParaHoras.Text = \"0\";\n}\n\nprivate void linkJuletopi_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)\n{\n    string url = \"https://github.com/juletopi\";\n    Process.Start(url);\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 3.5 As Novas Janelas: Conversor de Hectares ⟶ Km²\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Menu_de_Forms_WinForms/GUI%20Images/JanelaConversorHectKmQuadrado-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/assets/76459155/659a4b0f-8c38-4f06-b54b-dd95402be0ae\" alt=\"JanelaConversorHectKmQuadrado-pic\" title=\"Janela de Conversor de Hectares ⟶ Km²\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Menu_de_Forms_WinForms](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Menu_de_Forms_WinForms/Formularios/FormConverterHecteKmQuadrado.cs)\"*\n\n```c#\nprivate void btnConverterHectParaKmQuadrado_Click(object sender, EventArgs e)\n{\n    double valorHectare = 0, valorKmQuadrado = 0;\n\n    valorHectare = Convert.ToDouble(txtValorHectare.Text);\n    valorKmQuadrado = Convert.ToDouble(lblResultadoHectParaKmQuadrado.Text);\n\n    valorKmQuadrado = valorHectare * 0.0042;\n\n    lblResultadoHectParaKmQuadrado.Text = valorKmQuadrado.ToString();\n}\n\nprivate void btnLimpar_Click(object sender, EventArgs e)\n{\n    txtValorHectare.Clear();\n    txtValorHectare.Select();\n    lblResultadoHectParaKmQuadrado.Text = \"0\";\n}\n\nprivate void linkJuletopi_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)\n{\n    string url = \"https://github.com/juletopi\";\n    Process.Start(url);\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 4. Exemplos de Interação com o Usuário\n\n  Nesta aula foram aprendidos:\n  - Message boxes para interação com o usuário\n  - Diferentes formas de inserir message boxes\n  - Eventos de click in e click out\n\n\u003e ### 4.1 O Menu de Opções de Interação\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppExemplo2/GUI%20Images/JanelaMenuPrincipaldeInteracoes-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/assets/76459155/8218d73c-10ad-49e4-b3a3-40a63d057a3f\" alt=\"JanelaMenudeOpcoesdeInteracao-pic\" title=\"Menu de Opções de Interação\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppExemplo2](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppExemplo2/Form1.cs)\"*\n\n```c#\n// Criando o Menu Principal\n\nprivate void btnAlertas_Click(object sender, EventArgs e)\n{\n    FormAlertas form = new FormAlertas();\n    form.ShowDialog(); // \u003c-- Não permite que o usuário faça qualquer outra ação até que termine\n                              // ou conclua o processo da janela atual do qual ele abriu.\n}\n\nprivate void btnExemploAlerta_Click(object sender, EventArgs e)\n{\n    FormExemploAlerta form = new FormExemploAlerta(); // \u003c-- Linkando a ação do click para abrir uma nova janela\n    form.ShowDialog();\n}\n\nprivate void btnExemploAltdeRotulo_Click(object sender, EventArgs e)\n{\n    FormExemploRotulos form = new FormExemploRotulos();\n    form.ShowDialog();\n}\n\nprivate void btnExemploComboBox_Click(object sender, EventArgs e)\n{\n    FormExemploComboBox form = new FormExemploComboBox();\n    form.ShowDialog();\n}\n\nprivate void linkJuletopi_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)\n{\n    string url = \"https://github.com/juletopi\";\n    Process.Start(url);\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 4.2 As Novas Janelas: Exemplos de Alertas\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppExemplo2/GUI%20Images/JanelaAlertasdeInteracao-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/assets/76459155/36bca590-ad50-43dd-8d91-5eb47141c77a\" alt=\"JanelaExemplosdeAlertas-pic\" title=\"Janela de Exemplos de Alertas\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppExemplo2](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppExemplo2/Formularios/FormAlertas.cs)\"*\n\n```c#\n// Como criar Mensagens de Interação com o Usuário\n\nprivate void btnInformacao_Click(object sender, EventArgs e)\n{\n    MessageBox.Show(\"Texto da Menssagem\", \"Título da Mensagem\", MessageBoxButtons.OK, MessageBoxIcon.Information); // \u003c-- Menssagem de INFORMAÇÂO\n}\n\nprivate void btnAtencao_Click(object sender, EventArgs e)\n{\n    MessageBox.Show(\"Texto da Menssagem\", \"Título da Mensagem\", MessageBoxButtons.OK, MessageBoxIcon.Warning); // \u003c-- Mensagem de ALERTA\n}\n\nprivate void btnErro_Click(object sender, EventArgs e)\n{\n    MessageBox.Show(\"Texto da Menssagem\", \"Título da Mensagem\", MessageBoxButtons.OK, MessageBoxIcon.Error); // \u003c-- Mensagem de ERRO\n}\n\nprivate void btnPergunta_Click(object sender, EventArgs e)\n{\n    MessageBox.Show(\"Texto da Menssagem\", \"Título da Mensagem\", MessageBoxButtons.YesNo, MessageBoxIcon.Question); // \u003c-- Mensagem de PERGUNTA\n}\n\nprivate void btnExemplo_Click(object sender, EventArgs e)\n{\n    DialogResult resposta;\n    resposta = MessageBox.Show(\"Em caminho de Paca, Tatu caminha dentro?\", \"Pergunta:\", MessageBoxButtons.YesNo, MessageBoxIcon.Question);\n\n    MessageBox.Show(\"Resposta\" +resposta.ToString(), \"Pergunta:\", MessageBoxButtons.OK, MessageBoxIcon.Information);\n\n    MessageBox.Show(\"Deseja fechar o programa?\", \"Pergunta:\", MessageBoxButtons.YesNo, MessageBoxIcon.Question);\n\n    if(resposta == DialogResult.Yes) \n    {\n        this.Close(); // \u003c-- Fecha o programa\n    }\n}\n\nprivate void linkJuletopi_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)\n{\n    string url = \"https://github.com/juletopi\";\n    Process.Start(url);\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 4.3 As Novas Janelas: Exemplo com Alerta\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppExemplo2/GUI%20Images/JanelaExemploAlerta-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/assets/76459155/6708975c-f2cb-48fa-a257-a405a75f568e\" alt=\"JanelaExemplocomAlerta-pic\" title=\"Janela de Exemplo com Alerta\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppExemplo2](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppExemplo2/Formularios/FormExemploAlerta.cs)\"*\n\n```c#\nprivate void btnCalcular_Click(object sender, EventArgs e)\n{\n    double valor1, valor2, total;\n    valor1 = Convert.ToDouble(txtValor1.Text);\n    valor2 = Convert.ToDouble(txtValor2.Text);\n\n    if (valor2 != 0)\n    {\n        total = valor1 / valor2;\n        lblResultadoDivisao.Text = total.ToString(\"F2\");\n    }\n    else\n    {\n        MessageBox.Show(\"Não é possível dividir por zero!\", \"Alerta\", MessageBoxButtons.OK, MessageBoxIcon.Warning);\n        txtValor1.Clear();\n        txtValor2.Clear();\n        txtValor1.Select();\n        lblResultadoDivisao.Text = \"0\";\n    }\n}\n\nprivate void btnLimpar_Click(object sender, EventArgs e)\n{\n    txtValor1.Clear();\n    txtValor2.Clear();\n    txtValor1.Select();\n    lblResultadoDivisao.Text = \"0\";\n}\n\nprivate void linkJuletopi_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)\n{\n    string url = \"https://github.com/juletopi\";\n    Process.Start(url);\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 4.4 As Novas Janelas: Exemplo com Rótulo\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppExemplo2/GUI%20Images/JanelaExemploRotuloANTES-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/assets/76459155/3d38dcf7-e084-4b06-9338-0d95b432cb99\" alt=\"JanelaExemplocomRotuloANTES-pic\" title=\"Janela de Exemplo com Alteração de Rótulo (ANTES)\" style=\"width: 40%;\"\u003e\u003c/a\u003e\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppExemplo2/GUI%20Images/JanelaExemploRotuloDEPOIS-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/assets/76459155/be57704a-b8ed-4c13-8a29-4b726441d081\" alt=\"JanelaExemplocomRotuloDEPOIS-pic\" title=\"Janela de Exemplo com Alteração de Rótulo (DEPOIS)\" style=\"width: 40%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppExemplo2](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppExemplo2/Formularios/FormExemploRotulos.cs)\"*\n\n```c#\nprivate void btnNovo_Click(object sender, EventArgs e)\n{\n    txtPercentual.Clear();\n    txtSalarioAtual.Clear();\n    txtSalarioAtual.Select();\n    lblResultado.Text = \"Salário Reajustado\";\n    lblResultado.ForeColor = Color.Black;\n}\n\nprivate void btnCalcular_Click(object sender, EventArgs e)\n{\n    double salarioAtual = 0, percentual = 0, salarioReajustado;\n\n    salarioAtual = Convert.ToDouble(txtSalarioAtual.Text);\n    percentual = Convert.ToDouble(txtPercentual.Text);\n    percentual = percentual / 100;\n\n    salarioReajustado = salarioAtual + salarioAtual * percentual;\n\n    lblResultado.Text = \"O salário atualizado é: \" + salarioReajustado.ToString(\"C2\"); // \u003c-- \"C2\" adiciona a moeda corrente: \"R$ 0,00\" ao resultado numérico\n    lblResultado.ForeColor = Color.Blue;\n}\n\nprivate void txtSalarioAtual_KeyDown(object sender, KeyEventArgs e)\n{\n    if(e.KeyCode == Keys.Enter) // \u003c-- Vai para o campo seguinte\n    {\n        if(txtSalarioAtual.Text == \" \") // \u003c-- Verifica se o campo está vazio\n        {\n            MessageBox.Show(\"O campo está vazio!\", \"Alerta\", MessageBoxButtons.OK, MessageBoxIcon.Warning);\n            txtSalarioAtual.Select(); // \u003c-- Volta ao campo\n        }\n        else\n        {\n            txtPercentual.Select();\n        }\n    }\n}\n\nprivate void txtSalarioAtual_KeyUp(object sender, KeyEventArgs e)\n{\n    bool verificarNumero = false;\n\n    // Verificando o que foi digitado, \"Número\" ou \"Letra\"?\n\n    if((e.KeyCode \u003e= Keys.D0 \u0026\u0026 e.KeyCode \u003c= Keys.D9) || (e.KeyCode \u003e= Keys.NumPad0 \u0026\u0026 e.KeyCode \u003c= Keys.NumPad9))\n    {\n        verificarNumero = true;\n    }\n    else\n    {\n        if (e.KeyCode == Keys.Oemcomma || e.KeyCode == Keys.Decimal) verificarNumero = true; // \u003c-- Liberar a virgula\n\n        if (e.KeyCode == Keys.Enter) verificarNumero = true; // \u003c-- Liberar a tecla \"enter\"\n\n        if (e.KeyCode == Keys.Back) verificarNumero = true; // \u003c-- Liberar a tecla \"backspace\"\n\n        int qtdVirgula = txtSalarioAtual.Text.Count(v =\u003e v == ','); // \u003c-- Contar as virgulas\n\n        if (qtdVirgula \u003e 1) verificarNumero = false; // \u003c-- Verificar as virgulas\n    }\n\n    // Validação Final: A mensagem vai aparecer se um dos dois itens não foi atendido\n\n    if (verificarNumero == false)\n    {\n        MessageBox.Show(\"Somente números!\", \"Alerta\", MessageBoxButtons.OK, MessageBoxIcon.Warning);\n        txtSalarioAtual.Text = txtSalarioAtual.Text.Remove(txtSalarioAtual.Text.Length- 1);\n    }\n}\n\nprivate void linkJuletopi_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)\n{\n    string url = \"https://github.com/juletopi\";\n    Process.Start(url);\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 4.5 As Novas Janelas: Exemplo com Combo-box\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppExemplo2/GUI%20Images/JanelaExemploComboBox-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/assets/76459155/013093d0-94ee-4ff9-bdc6-f3a7edbe0f76\" alt=\"JanelaExemplocomCombobox-pic\" title=\"Janela de Exemplo com Combo-box\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppExemplo2](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppExemplo2/Formularios/FormExemploComboBox.cs)\"*\n\n```c#\npublic FormExemploComboBox()\n{\n    InitializeComponent();\n    txtPercDesconto.Visible = false; // \u003c-- A caixa de texto \"Perc(%) Desconto\" ficará invisível\n    lblPercDesconto.Visible = false; // \u003c-- O label \"Perc(%) Desconto\" ficará invisível\n}\n\nprivate void btnCalcular_Click(object sender, EventArgs e)\n{\n    int tipoCliente = cbTipoCliente.SelectedIndex;\n    double valorCompra = Convert.ToDouble(txtValorCompra.Text);\n    double valorDesconto = 0;\n\n    switch (tipoCliente)\n    {\n        case 0: // Cliente Diamante (25% de Desconto)\n            {\n                valorDesconto = valorCompra - valorCompra * 0.25;\n                lblResultado.Text = valorDesconto.ToString(\"C2\");\n                break;\n            }\n\n        case 1: // Cliente Ouro (20% de Desconto)\n            {\n                valorDesconto = valorCompra - valorCompra * 0.20;\n                lblResultado.Text = valorDesconto.ToString(\"C2\");\n                break;\n            }\n\n        case 2: // Cliente VIP (15% de Desconto)\n            {\n                valorDesconto = valorCompra - valorCompra * 0.15;\n                lblResultado.Text = valorDesconto.ToString(\"C2\");\n                break;\n            }\n\n        case 3: // Cliente Comum (10% de Desconto)\n            {\n                valorDesconto = valorCompra - valorCompra * 0.10;\n                lblResultado.Text = valorDesconto.ToString(\"C2\");\n                break;\n            }\n\n        case 4: // Cliente Aleatório (5% de Desconto)\n            {\n                valorDesconto = valorCompra - valorCompra * 0.05;\n                lblResultado.Text = valorDesconto.ToString(\"C2\");\n                break;\n            }\n\n        default:\n            {\n                MessageBox.Show(\"Selecione um cliente!\", \"Alerta\", MessageBoxButtons.OK, MessageBoxIcon.Warning);\n                break;\n            }\n        }\n    }\n\n    private void btnNovo_Click(object sender, EventArgs e)\n    {\n        cbTipoCliente.SelectedIndex = -1;\n        txtPercDesconto.Clear();\n        lblResultado.Text = \"R$ 0,00\";\n        txtValorCompra.Clear();\n        txtPercDesconto.Visible = false; // \u003c-- A caixa de texto \"Perc(%) Desconto\" ficará invisível\n        lblPercDesconto.Visible = false; // \u003c-- O label \"Perc(%) Desconto\" ficará invisível\n    }\n\n    private void cbTipoCliente_SelectedIndexChanged(object sender, EventArgs e)\n    {\n        int tipoCliente = cbTipoCliente.SelectedIndex;\n\n        if (tipoCliente == 4)\n        {\n            txtPercDesconto.Visible = true; // \u003c-- A caixa de texto \"Perc(%) Desconto\" ficará visível\n            lblPercDesconto.Visible = true; // \u003c-- O label \"Perc(%) Desconto\" ficará visível\n        }\n        else\n        {\n            txtPercDesconto.Visible = false; // \u003c-- A caixa de texto \"Perc(%) Desconto\" ficará invisível\n            lblPercDesconto.Visible = false; // \u003c-- O label \"Perc(%) Desconto\" ficará invisível\n        }\n    }\n\n   private void linkJuletopi_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)\n   {\n       string url = \"https://github.com/juletopi\";\n       Process.Start(url);\n   }\n\n    private void txtValorCompra_KeyDown(object sender, KeyEventArgs e)\n    {\n        if (e.KeyCode == Keys.Enter) // \u003c-- Vai para o campo seguinte\n        {\n            if (txtValorCompra.Text == \" \") // \u003c-- Verifica se o campo está vazio\n            {\n                MessageBox.Show(\"O campo está vazio!\", \"Alerta\", MessageBoxButtons.OK, MessageBoxIcon.Warning);\n                txtValorCompra.Select(); // \u003c-- Volta ao campo\n            }\n            else\n            {\n                txtPercDesconto.Select();\n            }\n        }\n    }\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 5. Simulador de Média\n \n  Conjunto de forms que fazem parte da 1º avaliação da disciplina. Neste, foram aprendidos:\n  - Criação de um forms com um menu principal e mais 3 forms para \"Simular Média\", \"Verificar Nota Mínima\" e \"Verificar Exame Final\".\n\n\u003e ### 5.1 SimuladorMedia: Janela de Menu Principal\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaSimuladorMediaMenuPrincipal-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaSimuladorMediaMenuPrincipal-pic.PNG\" alt=\"JanelaSimuladorMediaMenuPrincipal-pic\" title=\"Janela de Menu Principal\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Atividade (14-03-24)](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Atividade%20(14-03-24)/SimuladorMedia/Form1.cs)\"*\n\n```c#\nusing SimuladorMedia.Formularios;\n\nnamespace SimuladorMedia\n{\n    public partial class FormSimuladorMedia : Form\n    {\n        public FormSimuladorMedia()\n        {\n            InitializeComponent();\n        }\n\n        private void btSimularMedia_Click(object sender, EventArgs e)\n        {\n            FormSimularMedia form = new FormSimularMedia();\n            form.ShowDialog();\n        }\n\n        private void btNotaMinima_Click(object sender, EventArgs e)\n        {\n            FormNotaMinima form = new FormNotaMinima();\n            form.ShowDialog();\n        }\n\n        private void btVerificarMedia_Click(object sender, EventArgs e)\n        {\n            FormExameFinal form = new FormExameFinal();\n            form.ShowDialog();\n        }\n    }\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 5.2 SimuladorMedia: Janela de Simulador de Média\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaSimuladorMedia-pic.PNG?raw=true\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaSimuladorMedia-pic.PNG?raw=true\" alt=\"JanelaSimuladorMedia-pic\" title=\"Janela de Simulador de Média\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Atividade (14-03-24)](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Atividade%20(14-03-24)/SimuladorMedia/Formularios/FormSimularMedia.cs)\"*\n\n```c#\nprivate void btVerificarMedia_Click(object sender, EventArgs e)\n{\n    double nota1 = 0, nota2 = 0;\n    double resultado;\n    string nome;\n\n    try\n    {\n        nota1 = Convert.ToDouble(txtNota1.Text);\n        nota2 = Convert.ToDouble(txtNota2.Text);\n    }\n    catch (FormatException)\n    {\n        MessageBox.Show(\"Por favor, insira apenas números válidos nas notas.\", \"Erro de entrada\", MessageBoxButtons.OK, MessageBoxIcon.Error);\n        return;\n    }\n\n    nome = txtNomeAluno.Text;\n\n    resultado = (nota1 + nota2) / 2;\n\n    lblResultadoNota.Text = resultado.ToString();\n\n    if (resultado \u003e= 60)\n    {\n        lblResultadoNota.Text = $\"A sua nota foi de {resultado} pontos.\";\n        lblAprovadoReprovado.Text = $\"{nome}, você foi aprovado(a)!\";\n    }\n    else\n    {\n        lblResultadoNota.Text = $\"A sua nota foi de {resultado} pontos.\";\n        lblAprovadoReprovado.Text = $\"{nome}, você foi reprovado(a)!\";\n    }\n}\n\nprivate void btLimpar_Click(object sender, EventArgs e)\n{\n    txtNomeAluno.Clear();\n    txtNota1.Clear();\n    txtNota2.Clear();\n    lblResultadoNota.Text = \"\";\n    lblAprovadoReprovado.Text = \"\";\n\n    txtNomeAluno.Select();\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 5.3 SimuladorMedia: Janela de Nota Mínima\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaNotaMinima-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaNotaMinima-pic.PNG\" alt=\"JanelaNotaMínima-pic\" title=\"Janela de Nota Mínima\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Atividade (14-03-24)](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Atividade%20(14-03-24)/SimuladorMedia/Formularios/FormNotaMinima.cs)\"*\n\n```c#\nprivate void btVerificarNotaMinima_Click(object sender, EventArgs e)\n{\n    double mediaFinal = 0;\n    double notaNecessaria = 0;\n    string nome;\n\n    mediaFinal = Convert.ToDouble(txtMediaFinal.Text);\n    nome = txtNomeAluno.Text;\n\n    notaNecessaria = (500 - 6 * mediaFinal) / 4;\n\n    if (notaNecessaria \u003c= 0)\n    {\n        lblNotaParaPassar.Text = $\"Aluno(a) {nome}, você está \\naprovado(a), não é necessário \\nmais nota.\";\n    }\n        else\n    {\n        lblNotaParaPassar.Text = $\"Aluno(a) {nome}, \\nvocê precisa de {notaNecessaria} pontos \\npara passar.\";\n    }\n}\n\nprivate void btLimpar_Click(object sender, EventArgs e)\n{\n    txtNomeAluno.Clear();\n    txtMediaFinal.Clear();\n    lblNotaParaPassar.Text = \"\";\n\n    txtNomeAluno.Select();\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 5.4 SimuladorMedia: Janela de Exame Final\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaExameFinal-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaExameFinal-pic.PNG\" alt=\"JanelaExameFinal-pic\" title=\"Janela de Exame Final\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Atividade (14-03-24)](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Atividade%20(14-03-24)/SimuladorMedia/Formularios/FormExameFinal.cs)\"*\n\n```c#\nprivate void btVerificarMedia_Click(object sender, EventArgs e)\n{\n    double MediaFinal = 0.00;\n    double NotaAposExame = 0.00;\n    string nome;\n\n    try\n    {\n        MediaFinal = double.Parse(txtMediaFinal.Text);\n        NotaAposExame = double.Parse(txtExameFinal.Text);\n    }\n    catch (FormatException)\n    {\n        MessageBox.Show(\"Por favor, insira apenas números válidos nas notas.\", \"Erro de entrada\", MessageBoxButtons.OK, MessageBoxIcon.Error);\n        return;\n    }\n    \n    nome = txtNomeAluno.Text;\n\n    NotaAposExame = (6 * MediaFinal + 4 * NotaAposExame) / 10;\n\n    if (NotaAposExame \u003e= 50)\n    {\n        lblAprovadoReprovado.Text = $\"Parabéns {nome}! \\nVocê foi aprovado(a)!\";\n    }\n    else\n    {\n        lblAprovadoReprovado.Text = $\"Aluno(a) {nome}, você \\nnão foi aprovado(a).\";\n    }\n}\n\nprivate void btLimpar_Click(object sender, EventArgs e)\n{\n    txtNomeAluno.Clear();\n    txtMediaFinal.Clear();\n    txtExameFinal.Clear();\n    lblAprovadoReprovado.Text = \"\";\n\n    txtNomeAluno.Select();\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 6. Calculadora de Juros\n\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaCalculadoradeJuros-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaCalculadoradeJuros-pic.PNG\" alt=\"JanelaCalculadoradeJuros-pic\" title=\"Calculadora de Juros\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Atividade (14-03-24)](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Atividade%20(14-03-24)/CalculadoraJuros/Form1.cs)\"*\n\n  Form criado na 1º avaliação da disciplina. Neste, foram aprendidos:\n  - Construção de um forms complexo com seleção única de resultado dentre diversos campos disponíveis.\n\n```c#\nnamespace CalculadoraJuros\n{\n    public partial class CalculadoraJuros : Form\n    {\n        public CalculadoraJuros()\n        {\n            InitializeComponent();\n        }\n\n        private void btCalcular_Click(object sender, EventArgs e)\n        {\n            // Verificando se o combo-box foi inicializado e se há um item selecionado\n            if (cbTipoCalculo != null \u0026\u0026 cbTipoCalculo.SelectedItem != null)\n            {\n                double montante = 0, capital = 0, taxa = 0, tempo = 0;\n\n                // Verificando se os campos de entrada têm valores válidos\n                if (!string.IsNullOrEmpty(txtMontante.Text))\n                {\n                    if (!double.TryParse(txtMontante.Text, out montante))\n                    {\n                        MessageBox.Show(\"Valor inválido em um dos campos! Digite um valor válido.\", \"Erro\", MessageBoxButtons.OK, MessageBoxIcon.Error);\n                        return;\n                    }\n                }\n\n                if (!string.IsNullOrEmpty(txtCapital.Text))\n                {\n                    if (!double.TryParse(txtCapital.Text, out capital))\n                    {\n                        MessageBox.Show(\"Valor inválido em um dos campos! Digite um valor válido.\", \"Erro\", MessageBoxButtons.OK, MessageBoxIcon.Error);\n                        return;\n                    }\n                }\n\n                if (!string.IsNullOrEmpty(txtTaxa.Text))\n                {\n                    if (!double.TryParse(txtTaxa.Text, out taxa))\n                    {\n                        MessageBox.Show(\"Valor inválido em um dos campos! Digite um valor válido.\", \"Erro\", MessageBoxButtons.OK, MessageBoxIcon.Error);\n                        return;\n                    }\n                }\n\n                if (!string.IsNullOrEmpty(txtTempo.Text))\n                {\n                    if (!double.TryParse(txtTempo.Text, out tempo))\n                    {\n                        MessageBox.Show(\"Valor inválido em um dos campos! Digite um valor válido.\", \"Erro\", MessageBoxButtons.OK, MessageBoxIcon.Error);\n                        return;\n                    }\n                }\n\n                // Realizando o cálculo com base no tipo selecionado a partir do combo-box\n                switch (cbTipoCalculo.SelectedItem.ToString())\n                {\n                    case \"Montante\":\n                        montante = capital * (1 + taxa * tempo);\n                        if (txtMontante.Enabled)\n                            txtMontante.Text = montante.ToString(\"F2\");\n                    break;\n\n                    case \"Capital\":\n                        capital = montante / (1 + taxa * tempo);\n                        if (txtCapital.Enabled)\n                            txtCapital.Text = capital.ToString(\"F2\");\n                    break;\n\n                    case \"Taxa\":\n                        taxa = (montante - capital) / (capital * tempo);\n                        if (txtTaxa.Enabled)\n                            txtTaxa.Text = (taxa * 100).ToString(\"F2\");\n                    break;\n\n                    case \"Tempo\":\n                        tempo = (montante - capital) / (capital * taxa);\n                        if (txtTempo.Enabled)\n                            txtTempo.Text = tempo.ToString(\"F2\");\n                    break;\n                }\n\n                // Calculando e exibindo os juros\n                double juros = montante - capital;\n                lblResultadoJuros.Text = $\"{juros.ToString(\"F2\")}%\";\n            }\n            else\n            {\n                MessageBox.Show(\"Selecione um tipo de operação primeiro!\", \"Erro\", MessageBoxButtons.OK, MessageBoxIcon.Error);\n                return;\n            }\n        }\n\n        // Limpando os campos e restaurando as configurações-padrão\n        private void btLimpar_Click(object sender, EventArgs e)\n        {\n            // Limpando e resetando o ComboBox\n            cbTipoCalculo.SelectedIndex = -1;\n            cbTipoCalculo.ResetText();\n\n            // Limpando os outros campos\n            txtMontante.Clear();\n            txtCapital.Clear();\n            txtTaxa.Clear();\n            txtTempo.Clear();\n\n            // Restaurando a cor de fundo padrão dos campos de entrada\n            txtMontante.BackColor = SystemColors.Window;\n            txtCapital.BackColor = SystemColors.Window;\n            txtTaxa.BackColor = SystemColors.Window;\n            txtTempo.BackColor = SystemColors.Window;\n\n            // Habilitando a edição dos campos\n            txtMontante.ReadOnly = false;\n            txtMontante.TabStop = true;\n            txtCapital.ReadOnly = false;\n            txtCapital.TabStop = true;\n            txtTaxa.ReadOnly = false;\n            txtTaxa.TabStop = true;\n            txtTempo.ReadOnly = false;\n            txtTempo.TabStop = true;\n\n            // Limpando o label de resultado dos juros\n            lblResultadoJuros.Text = \"\";\n        }\n\n        // Mudando a cor de fundo do campo selecionado a partir do\n        // combo-box e desabilitando a edição dos outros campos\n        private void cbTipoCalculo_SelectedIndexChanged(object sender, EventArgs e)\n        {\n            // Verificando se um item foi selecionado no combo-box\n            if (cbTipoCalculo.SelectedItem != null)\n            {\n                // Restaurando a cor de fundo padrão dos campos de entrada\n                txtMontante.BackColor = SystemColors.Window;\n                txtCapital.BackColor = SystemColors.Window;\n                txtTaxa.BackColor = SystemColors.Window;\n                txtTempo.BackColor = SystemColors.Window;\n\n                // Identificando qual item foi selecionado no combo-box\n                switch (cbTipoCalculo.SelectedItem.ToString())\n                {\n                    case \"Montante\":\n                        // Destacando o campo Montante e limpando os demais campos\n                        txtMontante.BackColor = Color.LightGreen;\n                        txtMontante.Clear();\n                        txtCapital.Clear();\n                        txtTaxa.Clear();\n                        txtTempo.Clear();\n\n                        // Habilitando a edição apenas do campo Montante\n                        txtMontante.ReadOnly = true;\n                        txtMontante.TabStop = false;\n                        txtCapital.ReadOnly = false;\n                        txtCapital.TabStop = true;\n                        txtTaxa.ReadOnly = false;\n                        txtTaxa.TabStop = true;\n                        txtTempo.ReadOnly = false;\n                        txtTempo.TabStop = true;\n\n                        // Limpando o label de resultado dos juros\n                        lblResultadoJuros.Text = \"\";\n                        break;\n\n                    case \"Capital\":\n                        // Destacando o campo Capital e limpando os demais campos\n                        txtCapital.BackColor = Color.LightGreen;\n                        txtMontante.Clear();\n                        txtCapital.Clear();\n                        txtTaxa.Clear();\n                        txtTempo.Clear();\n\n                        // Habilitando a edição apenas do campo Capital\n                        txtMontante.ReadOnly = false;\n                        txtMontante.TabStop = true;\n                        txtCapital.ReadOnly = true;\n                        txtCapital.TabStop = false;\n                        txtTaxa.ReadOnly = false;\n                        txtTaxa.TabStop = true;\n                        txtTempo.ReadOnly = false;\n                        txtTempo.TabStop = true;\n\n                        // Limpando o label de resultado dos juros\n                        lblResultadoJuros.Text = \"\";\n                        break;\n\n                    case \"Taxa\":\n                        // Destacando o campo Taxa e limpando os demais campos\n                        txtTaxa.BackColor = Color.LightGreen;\n                        txtMontante.Clear();\n                        txtCapital.Clear();\n                        txtTaxa.Clear();\n                        txtTempo.Clear();\n\n                        // Habilitando a edição apenas do campo Taxa\n                        txtMontante.ReadOnly = false;\n                        txtMontante.TabStop = true;\n                        txtCapital.ReadOnly = false;\n                        txtCapital.TabStop = true;\n                        txtTaxa.ReadOnly = true;\n                        txtTaxa.TabStop = false;\n                        txtTempo.ReadOnly = false;\n                        txtTempo.TabStop = true;\n\n                        // Limpando o label de resultado dos juros\n                        lblResultadoJuros.Text = \"\";\n                        break;\n\n                    case \"Tempo\":\n                        // Destacando o campo Tempo e limpando os demais campos\n                        txtTempo.BackColor = Color.LightGreen;\n                        txtMontante.Clear();\n                        txtCapital.Clear();\n                        txtTaxa.Clear();\n                        txtTempo.Clear();\n\n                        // Habilitando a edição apenas do campo Tempo\n                        txtMontante.ReadOnly = false;\n                        txtMontante.TabStop = true;\n                        txtCapital.ReadOnly = false;\n                        txtCapital.TabStop = true;\n                        txtTaxa.ReadOnly = false;\n                        txtTaxa.TabStop = true;\n                        txtTempo.ReadOnly = true;\n                        txtTempo.TabStop = false;\n\n                        // Limpando o label de resultado dos juros\n                        lblResultadoJuros.Text = \"\";\n                        break;\n                }\n            }\n        }\n    }\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 7. Exemplos de Formatação de Caracteres\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppExemploString](https://github.com/juletopi/Linguagem_de_Programacao_Visual/tree/main/AppExemploString)\"*\n\n  Nesta aula foram aprendidos:\n  - Substituição de caracteres e palavras em uma string usando Replace.\n  - Concatenação de strings usando o operador +.\n  - Conversão de strings para maiúsculas e minúsculas usando ToUpper e ToLower.\n  - Remoção de espaços em branco no início e no final de uma string usando Trim.\n  - Comparação de strings usando Equals.\n  - Manipulação de partes de uma string usando Substring.\n  - Separação e formatação de informações em uma string usando Split.\n\n```c#\n﻿namespace AppExemploString\n{\n    internal class Program\n    {\n        static void Main(string[] args)\n        {\n            // Exemplos de Formatação de Caracteres\n\n            // Exemplo 1: Substituindo caracteres na string\n            string str = \"Hello\";\n            string resultado = str.Replace(\"l\", \"w\");\n\n            Console.WriteLine(str); // \u003c-- Texto original\n            Console.WriteLine(resultado); // \u003c-- Texto com caracteres substituídos\n            Console.WriteLine();\n\n            // Exemplo 2: Substituindo palavras na string\n            string str1 = \"Leite em pó\";\n            string resultado2 = str1.Replace(\"Leite\", \"Achocolatado\");\n\n            Console.WriteLine(str1); // \u003c-- Texto original\n            Console.WriteLine(resultado2); // \u003c-- Texto com palavras substituídas\n            Console.WriteLine();\n\n            // Exemplo 3: Concatenando strings\n            string str3 = \"Olá\";\n            string textoadd = str3 + \" Mundo!\";\n\n            Console.WriteLine(textoadd); // \u003c-- Texto combinado\n            Console.WriteLine();\n\n            // Exemplo 4: Concatenando strings com números\n            int n = 3;\n            string textoadd2 = \"A \" + n + \"º palavra\";\n\n            Console.WriteLine(textoadd2); // \u003c-- Texto com número\n            Console.WriteLine();\n\n            // Exemplo 5: Convertendo para maiúsculas\n            string str4 = \"hello\";\n            string maiusculo = str4.ToUpper();\n\n            Console.WriteLine(str4); // \u003c-- Texto original\n            Console.WriteLine(maiusculo); // \u003c-- Texto em maiúsculo\n            Console.WriteLine();\n\n            // Exemplo 6: Convertendo para minúsculas\n            string str5 = \"HELLO\";\n            string minusculo = str5.ToLower();\n\n            Console.WriteLine(str5); // \u003c-- Texto original\n            Console.WriteLine(minusculo); // \u003c-- Texto em minúsculo\n            Console.WriteLine();\n\n            // Exemplo 7: Removendo espaços em branco\n            string str6 = \"Vamos aprender Java? \u003e:) \";\n            Console.WriteLine(str6); // \u003c-- Texto original\n\n            string res = str6.Trim();\n            Console.WriteLine(res); // \u003c-- Texto sem espaços em branco\n            Console.WriteLine();\n\n            // Exemplo 8: Comparando strings\n            string str7 = \"Hello\";\n            string str8 = \"Hell0\";\n\n            bool bol1 = str7.Equals(\"Hello\"); // \u003c-- Comparando com uma string literal\n            bool bol2 = str7.Equals(str8); // \u003c-- Comparando com outra string\n\n            Console.WriteLine(\"1: \" + bol1);\n            Console.WriteLine(\"2: \" + bol2);\n            Console.WriteLine();\n\n            // Exemplo 9: Manipulando partes de uma string\n            string tel = \"6940028922\";\n\n            string ddd = tel.Substring(0, 2); // \u003c-- Obtendo os primeiros dígitos\n            string num1 = tel.Substring(2, 4); // \u003c-- Obtendo parte do meio\n            string num2 = tel.Substring(6); // \u003c-- Obtendo os últimos dígitos\n\n            string mask = $\"({ddd}){num1}-{num2}\";\n            Console.WriteLine(mask); // \u003c-- Texto formatado\n\n            string tel2 = \"(69) 4002-8922\";\n\n            string ddd2 = tel2.Substring(1, 2); // \u003c-- Obtendo os primeiros dígitos\n            string num3 = tel2.Substring(5, 4); // \u003c-- Obtendo parte do meio\n            string num4 = tel2.Substring(10); // \u003c-- Obtendo os últimos dígitos\n\n            string noMask = ddd2 + num3 + num4;\n            Console.WriteLine(noMask); // \u003c-- Texto sem máscara\n            Console.WriteLine();\n\n            // Exemplo 10: Separando e formatando informações\n            string nome1 = \"Carmen Gizelle/90/85/70\";\n            string nome2 = \"Ruben Laerte/80/80/45\";\n            string nome3 = \"Maxwell Kelvin/75/80/40\";\n            string nome4 = \"Tobias Arruda/78/85/90\";\n\n            string[] nomes = { nome1, nome2, nome3, nome4 };\n\n            foreach (string aluno in nomes)\n            {\n                string[] info = aluno.Split('/');\n\n                string nome = info[0];\n                string matematica = info[1];\n                string portugues = info[2];\n                string ciencias = info[3];\n\n                Console.WriteLine($\"Nome: {nome}\");\n                Console.WriteLine($\"Matemática: {matematica}\");\n                Console.WriteLine($\"L. Portuguesa: {portugues}\");\n                Console.WriteLine($\"Ciências: {ciencias}\");\n                Console.WriteLine();\n            }\n\n            // Atividade proposta em sala: Conversão de data\n            Console.Write(\"Digite a data no formato dd/mm/aaaa: \");\n            string data = Console.ReadLine();\n\n            string[] partesData = data.Split('/');\n            string dia = partesData[0];\n            string mes = partesData[1];\n            string ano = partesData[2];\n\n            string dataAmericana = $\"{ano}/{mes}/{dia}\";\n\n            Console.WriteLine(\"\\nData no formato americano: \" + dataAmericana);\n\n            Console.ReadKey();\n        }\n    }\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 8. Simulador de Comissão da Concessionária Ômega\n\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaSimulacaoComissaoVendedorPadrao-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaSimulacaoComissaoVendedorPadrao-pic.PNG\" alt=\"JanelaSimulacaoComissaoVendedorPadrao-pic\" title=\"Janela de Simulador de Comissão (Vendedor Padrão)\" style=\"width: 40%;\"\u003e\u003c/a\u003e\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaSimulacaoComissaoVendedorMaster-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaSimulacaoComissaoVendedorMaster-pic.PNG\" alt=\"JanelaSimulacaoComissaoVendedorMaster-pic\" title=\"Janela de Simulador de Comissão (Vendedor Master)\" style=\"width: 40%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Atividade (28-03-24)](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Atividade%20(28-03-24)/Form1.cs)\"*\n \n  Form criado na 2º avaliação da disciplina. Neste, foram aprendidos:\n  - Criação de um forms complexo com um múltiplas mudanças dinâmicas de características visuais para melhor interatividade com o usuário.\n\n```c#\nnamespace Atividade__28_03_24_\n{\n    public partial class FormSimulacaoComissao : Form\n    {\n        public FormSimulacaoComissao()\n        {\n            InitializeComponent();\n        }\n\n        private void btSimular_Click(object sender, EventArgs e)\n        {\n            // Verificando se um cargo foi selecionado\n            if (cbSelecaoCargo.SelectedIndex == -1)\n            {\n                MessageBox.Show(\"Por favor, selecione um cargo.\", \"Aviso\", MessageBoxButtons.OK, MessageBoxIcon.Warning);\n                return;\n            }\n\n            // Verificando se todos os campos estão preenchidos\n            if (string.IsNullOrEmpty(txtSalario.Text) || string.IsNullOrEmpty(txtMeta.Text) || string.IsNullOrEmpty(txtVendas.Text))\n            {\n                MessageBox.Show(\"Por favor, preencha todos os campos corretamente!\", \"Aviso\", MessageBoxButtons.OK, MessageBoxIcon.Warning);\n                return;\n            }\n\n            double salario, meta, vendas;\n\n            // Verificando se os campos de entrada tem valores válidos\n            if (!double.TryParse(txtSalario.Text, out salario) || !double.TryParse(txtVendas.Text, out vendas) || !double.TryParse(txtMeta.Text, out meta))\n            {\n                MessageBox.Show(\"Valor inválido em um dos campos! Digite um valor válido.\", \"Erro\", MessageBoxButtons.OK, MessageBoxIcon.Error);\n                return;\n            }\n\n            // Calculando a comissão de acordo com o cargo\n            string cargo = cbSelecaoCargo.SelectedItem.ToString();\n            double comissao = 0, bonus = 0;\n\n            switch (cargo)\n            {\n                case \"Vendedor Junior\":\n                    comissao = vendas * 0.04;\n                    bonus = salario * 0.02;\n                    break;\n                case \"Vendedor Padrão\":\n                    comissao = vendas * 0.06;\n                    bonus = salario * 0.02;\n                    break;\n                case \"Vendedor Master\":\n                    comissao = vendas * 0.08;\n                    bonus = salario * 0.02;\n                    break;\n                case \"Supervisor de Vendas\":\n                    comissao = vendas * 0.10;\n                    bonus = salario * 0.02 + vendas * 0.01;\n                    break;\n                case \"Gerente\":\n                    comissao = vendas * 0.10;\n                    bonus = salario * 0.02 + vendas * 0.02;\n                    break;\n            }\n\n            // Verificando se a meta foi atingida\n            if (vendas \u003e= meta * 0.65)\n            {\n                // Verificando se a meta da concessionária foi atingida\n                if (vendas \u003e= meta * 0.85 || cargo == \"Supervisor de Vendas\" || cargo == \"Gerente\")\n                {\n                    double comissaoTotal = comissao + bonus;\n                    double salarioFinal = salario + comissaoTotal;\n\n                    lblResultadosComissao.Visible = true;\n                    lblResultadosComissao.Text =\n                    $\"Comissão: {comissao.ToString(\"C2\")}\\n\" +\n                    $\"Bônus: {bonus.ToString(\"C2\")}\\n\" +\n                    $\"Comissão Total: {comissaoTotal.ToString(\"C2\")}\\n\" +\n                    $\"Salário Final: {salarioFinal.ToString(\"C2\")}\";\n                }\n                else\n                {\n                    MessageBox.Show(\"A concessionária não atingiu a meta de vendas para pagar a comissão sobre as vendas da concessionária.\", \"Aviso\", MessageBoxButtons.OK, MessageBoxIcon.Information);\n                }\n            }\n            else\n            {\n                MessageBox.Show(\"O vendedor não atingiu 65% da sua meta de vendas.\", \"Aviso\", MessageBoxButtons.OK, MessageBoxIcon.Information);\n            }\n        }\n\n        private void btLimpar_Click(object sender, EventArgs e)\n        {\n            // Limpando e resetando o ComboBox\n            cbSelecaoCargo.SelectedIndex = -1;\n            cbSelecaoCargo.ResetText();\n\n            // Limpando os outros campos\n            txtSalario.Clear();\n            txtVendas.Clear();\n            txtMeta.Clear();\n\n            // Restaurando a cor de fundo padrão dos campos de entrada\n            txtSalario.BackColor = SystemColors.Window;\n            txtVendas.BackColor = SystemColors.Window;\n            txtMeta.BackColor = SystemColors.Window;\n\n            // Limpando e restaurando os labels\n            lblResultadosComissao.Visible = false;\n            lblSubtitulo.Visible = false;\n            lblSubtitulo.AutoSize = false;\n            lblSubtitulo.TextAlign = ContentAlignment.MiddleCenter;\n            lblSubtitulo.Text = \"{Texto de cargo selecionado}\";\n        }\n\n        private void lblLinkJuletopi_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)\n        {\n            string url = \"https://github.com/juletopi\";\n            Process.Start(url);\n        }\n\n        private void cbSelecaoCargo_SelectedIndexChanged(object sender, EventArgs e)\n        {\n            // Mudando a cor de fundo dos campos de acordo com o cargo\n            switch (cbSelecaoCargo.SelectedIndex)\n            {\n                case 0: // Vendedor Junior\n                    txtSalario.BackColor = Color.LightGray;\n                    txtMeta.BackColor = Color.LightGray;\n                    txtVendas.BackColor = Color.LightGray;\n                    txtSalario.Clear();\n                    txtVendas.Clear();\n                    txtMeta.Clear();\n                    lblResultadosComissao.Visible = false;\n                    lblSubtitulo.Visible = true;\n                    lblSubtitulo.AutoSize = false;\n                    lblSubtitulo.Text = \"Cargo: Vendedor Junior\";\n                    break;\n                case 1: // Vendedor Padrão\n                    txtSalario.BackColor = Color.LightGreen;\n                    txtMeta.BackColor = Color.LightGreen;\n                    txtVendas.BackColor = Color.LightGreen;\n                    txtSalario.Clear();\n                    txtVendas.Clear();\n                    txtMeta.Clear();\n                    lblResultadosComissao.Visible = false;\n                    lblSubtitulo.Visible = true;\n                    lblSubtitulo.AutoSize = false;\n                    lblSubtitulo.TextAlign = ContentAlignment.MiddleCenter;\n                    lblSubtitulo.Text = \"Cargo: Vendedor Padrão\";\n                    break;\n                case 2: // Vendedor Master\n                    txtSalario.BackColor = Color.LightBlue;\n                    txtMeta.BackColor = Color.LightBlue;\n                    txtVendas.BackColor = Color.LightBlue;\n                    txtSalario.Clear();\n                    txtVendas.Clear();\n                    txtMeta.Clear();\n                    lblResultadosComissao.Visible = false;\n                    lblSubtitulo.Visible = true;\n                    lblSubtitulo.AutoSize = false;\n                    lblSubtitulo.TextAlign = ContentAlignment.MiddleCenter;\n                    lblSubtitulo.Text = \"Cargo: Vendedor Master\";\n                    break;\n                case 3: // Supervisor de Vendas\n                    txtSalario.BackColor = Color.LightPink;\n                    txtMeta.BackColor = Color.LightPink;\n                    txtVendas.BackColor = Color.LightPink;\n                    txtSalario.Clear();\n                    txtVendas.Clear();\n                    txtMeta.Clear();\n                    lblResultadosComissao.Visible = false;\n                    lblSubtitulo.Visible = true;\n                    lblSubtitulo.AutoSize = false;\n                    lblSubtitulo.TextAlign = ContentAlignment.MiddleCenter;\n                    lblSubtitulo.Text = \"Cargo: Surpevisor de Vendas\";\n                    break;\n                case 4: // Gerente\n                    txtSalario.BackColor = Color.LightSalmon;\n                    txtMeta.BackColor = Color.LightSalmon;\n                    txtVendas.BackColor = Color.LightSalmon;\n                    txtSalario.Clear();\n                    txtVendas.Clear();\n                    txtMeta.Clear();\n                    lblResultadosComissao.Visible = false;\n                    lblSubtitulo.Visible = true;\n                    lblSubtitulo.AutoSize = false;\n                    lblSubtitulo.TextAlign = ContentAlignment.MiddleCenter;\n                    lblSubtitulo.Text = \"Cargo: Gerente\";\n                    break;\n                default:\n            break;\n            }\n        }\n    }\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 9. GeraSorte - Gerador de Números da Sorte\n \n  Conjunto de forms que fazem parte da 2º avaliação da disciplina. Neste, foram aprendidos:\n  - Criação de um forms com um menu principal e mais 6 forms de geração de números da sorte pra diferentes lotéricas: \"LotoFácil\", \"LotoMania\", \"MegaSena\", \"Quina\", \"SuperSete\" e \"Dia de Sorte\".\n\n\u003e ### 9.1 GeraSorte: Janela de Menu Principal\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaMenudeOpcoesGeraSorte-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaMenudeOpcoesGeraSorte-pic.PNG\" alt=\"JanelaMenudeOpcoesGeraSorte-pic\" title=\"Janela de Menu Principal\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppLoterias](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppLoterias/Form1.cs)\"*\n\n```c#\nusing AppLoterias.Formularios;\n\nnamespace AppLoterias\n{\n    public partial class FormMenuPrincipal : Form\n    {\n        public FormMenuPrincipal()\n        {\n            InitializeComponent();\n        }\n\n        private void btnLotoFacil_Click(object sender, EventArgs e)\n        {\n            FormLotoFacil form = new FormLotoFacil();\n            form.ShowDialog();\n        }\n\n        private void btnMegaSena_Click(object sender, EventArgs e)\n        {\n            FormMegaSena form = new FormMegaSena();\n            form.ShowDialog();\n        }\n\n        private void btnLotomania_Click(object sender, EventArgs e)\n        {\n            FormLotoMania form = new FormLotoMania();\n            form.ShowDialog();\n        }\n\n        private void btnQuina_Click(object sender, EventArgs e)\n        {\n            FormQuina form = new FormQuina();\n            form.ShowDialog();\n        }\n\n        private void btnDiaDeSorte_Click(object sender, EventArgs e)\n        {\n            FormDiaDeSorte form = new FormDiaDeSorte();\n            form.ShowDialog();\n        }\n\n        private void btnSuperSete_Click(object sender, EventArgs e)\n        {\n            FormSuperSete form = new FormSuperSete();\n            form.ShowDialog();\n        }\n    }\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 9.2 GeraSorte: Janela da LotoFácil\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteLotoFacil-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteLotoFacil-pic.PNG\" alt=\"JanelaGeraSorteLotoFacil-pic\" title=\"Janela da LotoFácil\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppLoterias](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppLoterias/Formularios/FormLotoFacil.cs)\"*\n\n```c#\nnamespace AppLoterias.Formularios\n{\n    public partial class FormLotoFacil : Form\n    {\n        public List\u003cint\u003e NumerosDaSorte = new List\u003cint\u003e();\n        public FormLotoFacil()\n        {\n            InitializeComponent();\n        }\n\n        /*\n          LotoFácil\n\n          Números envolvidos: 15 números sorteados entre 1 e 25.\n          Classificação de chances de ganhar:\n            - 7 pares e 8 ímpares: \"MUITO ALTO!\"\n            - 8 pares e 7 ímpares: \"ALTO!\"\n            - 6 pares e 9 ímpares: \"ALTO!\"\n            - 9 pares e 6 ímpares: \"MÉDIO!\"\n            - 5 pares e 10 ímpares: \"MÉDIO!\"\n            - Outras combinações: \"BAIXO!\"\n        */\n\n        public void Classificacao(int par, int impar)\n        {\n            lblPar.Text = \"Pares: \" + par;\n            lblImpar.Text = \"Ímpares: \" + impar;\n\n            // Estatísticas\n            if (impar == 8 \u0026\u0026 par == 7)\n            {\n                lblClass.Text = \"MUITO ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n\n            if (impar == 7 \u0026\u0026 par == 8)\n            {\n                lblClass.Text = \"ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n\n            if (impar == 9 \u0026\u0026 par == 6)\n            {\n                lblClass.Text = \"MÉDIO!\";\n                lblClass.ForeColor = Color.Orange;\n            }\n\n            if (impar == 6 \u0026\u0026 par == 9)\n            {\n                lblClass.Text = \"BAIXO!\";\n                lblClass.ForeColor = Color.OrangeRed;\n            }\n\n            if (impar \u003c= 5 \u0026\u0026 par \u003e= 10)\n            {\n                lblClass.Text = \"MUITO BAIXO!\";\n                lblClass.ForeColor = Color.Red;\n            }\n\n            if (impar \u003e= 10 \u0026\u0026 par \u003c= 5)\n            {\n                lblClass.Text = \"MUITO BAIXO!\";\n                lblClass.ForeColor = Color.Red;\n            }\n        }\n\n        public void GerarNumeros()\n        {\n            int numero = 0;\n            int contador = 0;\n            int qtdPar = 0;\n            int qtdImpar = 0;\n            Random radNum = new Random();\n            NumerosDaSorte.Clear();\n\n            while (contador \u003c 15) // LotoFácil são 15 números\n            {\n                numero = radNum.Next(1, 26); // LotoFácil tem 25 números\n                if (NumerosDaSorte.Contains(numero) == false)\n                {\n                    NumerosDaSorte.Add(numero);\n                    if (numero % 2 == 0) qtdPar++;\n                    if (numero % 2 == 1) qtdImpar++;\n                    contador++;\n                }\n\n                NumerosDaSorte = NumerosDaSorte.OrderBy(num =\u003e num).ToList();\n                Classificacao(qtdPar, qtdImpar);\n                dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new { Numero = Numeros }).ToList();\n            }\n        }\n\n        private void btnGerarNumeros_Click(object sender, EventArgs e)\n        {\n            GerarNumeros();\n        }\n\n        private void btnLimpar_Click(object sender, EventArgs e)\n        {\n            NumerosDaSorte.Clear();\n            lblPar.Text = \"Pares: 0\";\n            lblImpar.Text = \"Ímpares: 0\";\n            lblClass.Text = \"Classificação\";\n            lblClass.ForeColor = Color.Black;\n            dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new {Numero = Numeros}).ToList();\n        }\n    }\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 9.3 GeraSorte: Janela da LotoMania\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteLotoMania-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteLotoMania-pic.PNG\" alt=\"JanelaGeraSorteLotoMania-pic\" title=\"Janela da LotoMania\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppLoterias](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppLoterias/Formularios/FormLotoMania.cs)\"*\n\n```c#\nnamespace AppLoterias.Formularios\n{\n    public partial class FormLotoMania : Form\n    {\n        public List\u003cint\u003e NumerosDaSorte = new List\u003cint\u003e();\n        public FormLotoMania()\n        {\n            InitializeComponent();\n        }\n\n        /*\n          LotoMania\n\n          Números envolvidos: 50 números sorteados entre 0 e 99.\n          Classificação de chances de ganhar:\n            - 25 pares e 25 ímpares: \"MUITO ALTO!\"\n            - 24 pares e 26 ímpares: \"ALTO!\"\n            - 26 pares e 24 ímpares: \"ALTO!\"\n            - 23 pares e 27 ímpares: \"MÉDIO!\"\n            - 27 pares e 23 ímpares: \"MÉDIO!\"\n            - Outras combinações: \"BAIXO!\"\n        */\n\n        public void Classificacao(int par, int impar)\n        {\n            lblPar.Text = \"Pares: \" + par;\n            lblImpar.Text = \"Ímpares: \" + impar;\n\n            // Estatísticas\n            if (par == 25 \u0026\u0026 impar == 25)\n            {\n                lblClass.Text = \"MUITO ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n            else if ((par == 26 \u0026\u0026 impar == 24) || (par == 24 \u0026\u0026 impar == 26))\n            {\n                lblClass.Text = \"ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n            else if ((par == 23 \u0026\u0026 impar == 27) || (par == 27 \u0026\u0026 impar == 23))\n            {\n                lblClass.Text = \"MÉDIO!\";\n                lblClass.ForeColor = Color.Orange;\n            }\n            else\n            {\n                lblClass.Text = \"BAIXO!\";\n                lblClass.ForeColor = Color.Red;\n            }\n        }\n\n        public void GerarNumeros()\n        {\n            int numero = 0;\n            int contador = 0;\n            int qtdPar = 0;\n            int qtdImpar = 0;\n            Random radNum = new Random();\n            NumerosDaSorte.Clear();\n\n            while (contador \u003c 50) // Lotomania são 50 números\n            {\n                numero = radNum.Next(0, 100); // Lotomania tem números de 0 a 99\n                if (NumerosDaSorte.Contains(numero) == false)\n                {\n                    NumerosDaSorte.Add(numero);\n                    if (numero % 2 == 0) qtdPar++;\n                    if (numero % 2 == 1) qtdImpar++;\n                    contador++;\n                }\n\n                NumerosDaSorte = NumerosDaSorte.OrderBy(num =\u003e num).ToList();\n                Classificacao(qtdPar, qtdImpar);\n                dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new { Numero = Numeros }).ToList();\n            }\n        }\n\n        private void btnGerarNumeros_Click(object sender, EventArgs e)\n        {\n            GerarNumeros();\n        }\n\n        private void btnLimpar_Click(object sender, EventArgs e)\n        {\n            NumerosDaSorte.Clear();\n            lblPar.Text = \"Pares: 0\";\n            lblImpar.Text = \"Ímpares: 0\";\n            lblClass.Text = \"Classificação\";\n            lblClass.ForeColor = Color.Black;\n            dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new { Numero = Numeros }).ToList();\n        }\n    }\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 9.4 GeraSorte: Janela da MegaSena\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteMegaSena-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteMegaSena-pic.PNG\" alt=\"JanelaGeraSorteMegaSena-pic\" title=\"Janela da MegaSena\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppLoterias](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppLoterias/Formularios/FormMegaSena.cs)\"*\n\n```c#\nnamespace AppLoterias.Formularios\n{\n    public partial class FormMegaSena : Form\n    {\n        public List\u003cint\u003e NumerosDaSorte = new List\u003cint\u003e();\n        public FormMegaSena()\n        {\n            InitializeComponent();\n        }\n\n        /*\n          MegaSena\n\n          Números envolvidos: 6 números sorteados entre 1 e 60.\n          Classificação de chances de ganhar:\n            - 3 pares e 3 ímpares: \"MUITO ALTO!\"\n            - 4 pares e 2 ímpares: \"ALTO!\"\n            - 2 pares e 4 ímpares: \"MÉDIO!\"\n            - 5 pares e 1 ímpar: \"BAIXO!\"\n            - 1 par e 5 ímpares: \"MUITO BAIXO!\"\n        */\n\n        public void Classificacao(int par, int impar)\n        {\n            lblPar.Text = \"Pares: \" + par;\n            lblImpar.Text = \"Ímpares: \" + impar;\n\n            // Estatísticas\n            if (impar == 3 \u0026\u0026 par == 3)\n            {\n                lblClass.Text = \"MUITO ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n\n            if (impar == 4 \u0026\u0026 par == 2)\n            {\n                lblClass.Text = \"ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n\n            if (impar == 2 \u0026\u0026 par == 4)\n            {\n                lblClass.Text = \"MÉDIO!\";\n                lblClass.ForeColor = Color.Orange;\n            }\n\n            if (impar == 5 \u0026\u0026 par == 1)\n            {\n                lblClass.Text = \"BAIXO!\";\n                lblClass.ForeColor = Color.OrangeRed;\n            }\n\n            if (impar == 1 \u0026\u0026 par == 5)\n            {\n                lblClass.Text = \"MUITO BAIXO!\";\n                lblClass.ForeColor = Color.Red;\n            }\n        }\n\n        public void GerarNumeros()\n        {\n            int numero = 0;\n            int contador = 0;\n            int qtdPar = 0;\n            int qtdImpar = 0;\n            Random radNum = new Random();\n            NumerosDaSorte.Clear();\n\n            while (contador \u003c 6) // Mega Sena são 6 números\n            {\n                numero = radNum.Next(1, 61); // Mega Sena tem 60 números\n                if (NumerosDaSorte.Contains(numero) == false)\n                {\n                    NumerosDaSorte.Add(numero);\n                    if (numero % 2 == 0) qtdPar++;\n                    if (numero % 2 == 1) qtdImpar++;\n                    contador++;\n                }\n\n                NumerosDaSorte = NumerosDaSorte.OrderBy(num =\u003e num).ToList();\n                Classificacao(qtdPar, qtdImpar);\n                dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new { Numero = Numeros }).ToList();\n            }\n        }\n\n        private void btnGerarNumeros_Click_1(object sender, EventArgs e)\n        {\n            GerarNumeros();\n        }\n\n        private void btnLimpar_Click_1(object sender, EventArgs e)\n        {\n            NumerosDaSorte.Clear();\n            lblPar.Text = \"Pares: 0\";\n            lblImpar.Text = \"Ímpares: 0\";\n            lblClass.Text = \"Classificação\";\n            lblClass.ForeColor = Color.Black;\n            dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new { Numero = Numeros }).ToList();\n        }\n    }\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 9.5 GeraSorte: Janela da Quina\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteQuina-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteQuina-pic.PNG\" alt=\"JanelaGeraSorteQuina-pic\" title=\"Janela da Quina\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppLoterias](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppLoterias/Formularios/FormQuina.cs)\"*\n\n```c#\nnamespace AppLoterias.Formularios\n{\n    public partial class FormQuina : Form\n    {\n        public List\u003cint\u003e NumerosDaSorte = new List\u003cint\u003e();\n        public FormQuina()\n        {\n            InitializeComponent();\n        }\n\n        /*\n          Quina\n          \n          Números envolvidos: 5 números sorteados entre 1 e 80.\n          Classificação de chances de ganhar:\n            - 3 pares e 2 ímpares: \"MUITO ALTO!\"\n            - 2 pares e 3 ímpares: \"ALTO!\"\n            - 4 pares e 1 ímpar: \"MÉDIO!\"\n            - 1 par e 4 ímpares: \"BAIXO!\"\n            - 5 pares ou 5 ímpares: \"MUITO BAIXO!\"\n        */\n\n        private void btnGerarNumeros_Click(object sender, EventArgs e)\n        {\n            GerarNumeros();\n        }\n\n        public void Classificacao(int par, int impar)\n        {\n            lblPar.Text = \"Pares: \" + par;\n            lblImpar.Text = \"Ímpares: \" + impar;\n\n            // Estatísticas\n            if (par == 2 \u0026\u0026 impar == 3)\n            {\n                lblClass.Text = \"MUITO ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n            else if (par == 3 \u0026\u0026 impar == 2)\n            {\n                lblClass.Text = \"ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n            else if (par == 4 \u0026\u0026 impar == 1)\n            {\n                lblClass.Text = \"MÉDIO!\";\n                lblClass.ForeColor = Color.Orange;\n            }\n            else if (par == 1 \u0026\u0026 impar == 4)\n            {\n                lblClass.Text = \"BAIXO!\";\n                lblClass.ForeColor = Color.OrangeRed;\n            }\n            else\n            {\n                lblClass.Text = \"MUITO BAIXO!\";\n                lblClass.ForeColor = Color.Red;\n            }\n        }\n\n        public void GerarNumeros()\n        {\n            int numero = 0;\n            int contador = 0;\n            int qtdPar = 0;\n            int qtdImpar = 0;\n            Random radNum = new Random();\n            NumerosDaSorte.Clear();\n\n            while (contador \u003c 5) // Quina são 5 números\n            {\n                numero = radNum.Next(1, 81); // Quina tem números de 1 a 80\n                if (NumerosDaSorte.Contains(numero) == false)\n                {\n                    NumerosDaSorte.Add(numero);\n                    if (numero % 2 == 0) qtdPar++;\n                    if (numero % 2 == 1) qtdImpar++;\n                    contador++;\n                }\n\n                NumerosDaSorte = NumerosDaSorte.OrderBy(num =\u003e num).ToList();\n                Classificacao(qtdPar, qtdImpar);\n                dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new { Numero = Numeros }).ToList();\n            }\n        }\n\n        private void btnLimpar_Click(object sender, EventArgs e)\n        {\n            NumerosDaSorte.Clear();\n            lblPar.Text = \"Pares: 0\";\n            lblImpar.Text = \"Ímpares: 0\";\n            lblClass.Text = \"Classificação\";\n            lblClass.ForeColor = Color.Black;\n            dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new { Numero = Numeros }).ToList();\n        }\n    }\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 9.6 GeraSorte: Janela da SuperSete\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteSuperSete-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteSuperSete-pic.PNG\" alt=\"JanelaGeraSorteSuperSete-pic\" title=\"Janela da SuperSete\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppLoterias](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppLoterias/Formularios/FormSuperSete.cs)\"*\n\n```c#\nnamespace AppLoterias.Formularios\n{\n    public partial class FormSuperSete : Form\n    {\n        public List\u003cint\u003e NumerosDaSorte = new List\u003cint\u003e();\n        public FormSuperSete()\n        {\n            InitializeComponent();\n        }\n\n        /*\n          SuperSete\n\n          Números envolvidos: 7 números sorteados entre 1 e 9.\n          Classificação de chances de ganhar:\n            - 4 pares e 3 ímpares: \"MUITO ALTO!\"\n            - 3 pares e 4 ímpares: \"ALTO!\"\n            - 5 pares e 2 ímpares: \"MÉDIO!\"\n            - 2 pares e 5 ímpares: \"MÉDIO!\"\n            - 6 pares e 1 ímpar: \"BAIXO!\"\n            - 1 par e 6 ímpares: \"BAIXO!\"\n        */\n\n        private void btnGerarNumeros_Click(object sender, EventArgs e)\n        {\n            GerarNumeros();\n        }\n\n        public void Classificacao(int par, int impar)\n        {\n            lblPar.Text = \"Pares: \" + par;\n            lblImpar.Text = \"Ímpares: \" + impar;\n\n            // Estatísticas\n            if (par == 3 \u0026\u0026 impar == 4)\n            {\n                lblClass.Text = \"MUITO ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n            else if (par == 4 \u0026\u0026 impar == 3)\n            {\n                lblClass.Text = \"ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n            else if (par == 2 \u0026\u0026 impar == 5)\n            {\n                lblClass.Text = \"MÉDIO!\";\n                lblClass.ForeColor = Color.Orange;\n            }\n            else if (par == 5 \u0026\u0026 impar == 2)\n            {\n                lblClass.Text = \"BAIXO!\";\n                lblClass.ForeColor = Color.OrangeRed;\n            }\n            else\n            {\n                lblClass.Text = \"MUITO BAIXO!\";\n                lblClass.ForeColor = Color.Red;\n            }\n        }\n\n        public void GerarNumeros()\n        {\n            int numero = 0;\n            int contador = 0;\n            int qtdPar = 0;\n            int qtdImpar = 0;\n            Random radNum = new Random();\n            NumerosDaSorte.Clear();\n\n            while (contador \u003c 7) // SuperSete são 7 números\n            {\n                numero = radNum.Next(0, 10); // SuperSete tem números de 0 a 9\n                if (NumerosDaSorte.Contains(numero) == false)\n                {\n                    NumerosDaSorte.Add(numero);\n                    if (numero % 2 == 0) qtdPar++;\n                    if (numero % 2 == 1) qtdImpar++;\n                    contador++;\n                }\n\n                NumerosDaSorte = NumerosDaSorte.OrderBy(num =\u003e num).ToList();\n                Classificacao(qtdPar, qtdImpar);\n                dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new { Numero = Numeros }).ToList();\n            }\n        }\n\n        private void btnLimpar_Click(object sender, EventArgs e)\n        {\n            NumerosDaSorte.Clear();\n            lblPar.Text = \"Pares: 0\";\n            lblImpar.Text = \"Ímpares: 0\";\n            lblClass.Text = \"Classificação\";\n            lblClass.ForeColor = Color.Black;\n            dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new { Numero = Numeros }).ToList();\n        }\n    }\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=100% align=\"center\" src=\"https://capsule-render.vercel.app/api?type=rect\u0026color=636363\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003e ### 9.7 GeraSorte: Janela da Dia de Sorte\n\u003e \u003ca href=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteDiaDeSorte-pic.PNG\"\u003e\u003cimg align=\"center\" src=\"https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/Assets/Images/JanelaGeraSorteDiaDeSorte-pic.PNG\" alt=\"JanelaGeraSorteDiaDeSorte-pic\" title=\"Janela da Dia de Sorte\" style=\"width: 50%;\"\u003e\u003c/a\u003e\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[AppLoterias](https://github.com/juletopi/Linguagem_de_Programacao_Visual/blob/main/AppLoterias/Formularios/FormDiaDeSorte.cs)\"*\n\n```c#\nnamespace AppLoterias.Formularios\n{\n    public partial class FormDiaDeSorte : Form\n    {\n        public List\u003cint\u003e NumerosDaSorte = new List\u003cint\u003e();\n        public FormDiaDeSorte()\n        {\n            InitializeComponent();\n        }\n\n        /*\n          Dia de Sorte\n          \n          Números envolvidos: 7 números sorteados entre 1 e 31.\n          Classificação de chances de ganhar:\n            - 4 pares e 3 ímpares: \"MUITO ALTO!\"\n            - 3 pares e 4 ímpares: \"ALTO!\"\n            - 5 pares e 2 ímpares: \"MÉDIO!\"\n            - 2 pares e 5 ímpares: \"MÉDIO!\"\n            - 6 pares e 1 ímpar: \"BAIXO!\"\n            - 1 par e 6 ímpares: \"BAIXO!\"\n        */\n\n        public void Classificacao(int par, int impar)\n        {\n            lblPar.Text = \"Pares: \" + par;\n            lblImpar.Text = \"Ímpares: \" + impar;\n\n            // Estatísticas\n            if (par == 4 \u0026\u0026 impar == 3)\n            {\n                lblClass.Text = \"MUITO ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n            else if (par == 3 \u0026\u0026 impar == 4)\n            {\n                lblClass.Text = \"ALTO!\";\n                lblClass.ForeColor = Color.Green;\n            }\n            else if (par == 5 \u0026\u0026 impar == 2)\n            {\n                lblClass.Text = \"MÉDIO!\";\n                lblClass.ForeColor = Color.Orange;\n            }\n            else if (par == 2 \u0026\u0026 impar == 5)\n            {\n                lblClass.Text = \"BAIXO!\";\n                lblClass.ForeColor = Color.OrangeRed;\n            }\n            else\n            {\n                lblClass.Text = \"MUITO BAIXO!\";\n                lblClass.ForeColor = Color.Red;\n            }\n        }\n\n        public void GerarNumeros()\n        {\n            int numero = 0;\n            int contador = 0;\n            int qtdPar = 0;\n            int qtdImpar = 0;\n            Random radNum = new Random();\n            NumerosDaSorte.Clear();\n\n            while (contador \u003c 7) // Dia de Sorte são 7 números\n            {\n                numero = radNum.Next(1, 32); // Dia de Sorte tem números de 1 a 31\n                if (NumerosDaSorte.Contains(numero) == false)\n                {\n                    NumerosDaSorte.Add(numero);\n                    if (numero % 2 == 0) qtdPar++;\n                    if (numero % 2 == 1) qtdImpar++;\n                    contador++;\n                }\n\n                NumerosDaSorte = NumerosDaSorte.OrderBy(num =\u003e num).ToList();\n                Classificacao(qtdPar, qtdImpar);\n                dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new { Numero = Numeros }).ToList();\n            }\n        }\n\n        private void btnGerarNumeros_Click(object sender, EventArgs e)\n        {\n            GerarNumeros();\n        }\n\n        private void btnLimpar_Click(object sender, EventArgs e)\n        {\n            NumerosDaSorte.Clear();\n            lblPar.Text = \"Pares: 0\";\n            lblImpar.Text = \"Ímpares: 0\";\n            lblClass.Text = \"Classificação\";\n            lblClass.ForeColor = Color.Black;\n            dgvNumeros.DataSource = NumerosDaSorte.Select(Numeros =\u003e new { Numero = Numeros }).ToList();\n        }\n    }\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cbr\u003e\n\n\u003c!-- AUTHOR --\u003e\n\n## 👤 Autor\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd valign=\"middle\" width=\"25%\"\u003e\n      \u003cdiv align=\"center\"\u003e  \n        \u003ca href=\"https://github.com/juletopi\" title=\"Perfil no GitHub\" aria-label=\"GitHub - Juletopi\"\u003e\n          \u003cimg src=\"https://avatars.githubusercontent.com/u/76459155?s=400\u0026u=4b9bd87cae92eea4fc154c28eafe226ed034a1d8\u0026v=4\" width=\"150\" alt=\"Profile Pic - Juletopi\"/\u003e\n          \u003cbr\u003e\n          \u003csub\u003e\u003cstrong\u003eJúlio Cézar | Juletopi\u003c/strong\u003e\u003c/sub\u003e\n          \u003cbr\u003e\n        \u003c/a\u003e\n      \u003c/div\u003e\n    \u003c/td\u003e\n    \u003ctd valign=\"middle\" width=\"75%\"\u003e\n      \u003cul style=\"list-style: none; padding-left: 0; margin: 0;\"\u003e\n        \u003cli\u003e\n          \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon/icons/linkedin/linkedin-original.svg\" width=\"15\" alt=\"LinkedIn\" style=\"vertical-align:middle;\"\u003e\n          LinkedIn — \n          \u003ca href=\"https://www.linkedin.com/in/julio-cezar-pereira-camargo/\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"LinkedIn - Júlio Cézar P. Camargo\"\u003e\n            Júlio Cézar P. Camargo\n          \u003c/a\u003e\n        \u003c/li\u003e\n        \u003cli\u003e\n          \u003cimg src=\"https://pngimg.com/uploads/email/email_PNG100738.png\" width=\"15\" alt=\"Email\" style=\"vertical-align:middle;\"\u003e\n          Email — \n          \u003ca href=\"mailto:juliocezarpvh@hotmail.com\" aria-label=\"Send email - juliocezarpvh@hotmail.com\"\u003e\n            juliocezarpvh@hotmail.com\n          \u003c/a\u003e\n        \u003c/li\u003e\n        \u003cli\u003e\n          \u003cimg src=\"https://cdn3.emoji.gg/emojis/2116-facebook.png\" width=\"15\" alt=\"Facebook\" style=\"vertical-align:middle;\"\u003e\n          Facebook — \n          \u003ca href=\"https://www.facebook.com/juhletopi\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"Facebook - Juhletopi\"\u003e\n            facebook.com/juhletopi\n          \u003c/a\u003e\n        \u003c/li\u003e\n        \u003cli\u003e\n          \u003cimg src=\"https://cdn3.emoji.gg/emojis/6333-instagram.png\" width=\"15\" alt=\"Instagram\" style=\"vertical-align:middle;\"\u003e\n          Instagram — \n          \u003ca href=\"https://www.instagram.com/juletopi/\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"Instagram - Juletopi\"\u003e\n            @juletopi\n          \u003c/a\u003e\n        \u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"2\" align=\"center\"\u003e\n      \u003cimg src=\"https://github.com/user-attachments/assets/a3e6ca25-6035-4a7a-94b9-f35cb9d24a96\" width=\"18\" alt=\"Portfolio\" align=\"center\"/\u003e\n      Portfolio —\n      \u003ca href=\"https://juletopi.github.io/JCPC_Portfolio/\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"Portfolio - Juletopi\"\u003e\n        juletopi.github.io/JCPC_Portfolio\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#linguagem-de-programação-visual-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cbr\u003e\n\n\u003c!-- THANK YOU, GOODBYE --\u003e\n\n----\n\n\u003cdiv align=\"center\"\u003e\n  Feito com 🖤 e ☕ por \u003ca href=\"https://github.com/juletopi\"\u003e Juletopi\u003c/a\u003e.\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuletopi%2Flinguagem_de_programacao_visual","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuletopi%2Flinguagem_de_programacao_visual","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuletopi%2Flinguagem_de_programacao_visual/lists"}