{"id":28209672,"url":"https://github.com/juletopi/algoritmos_e_logica_de_programacao","last_synced_at":"2025-06-24T21:05:05.046Z","repository":{"id":59139261,"uuid":"531295128","full_name":"juletopi/Algoritmos_e_Logica_de_Programacao","owner":"juletopi","description":"👩‍💻 • Repositório back-end com os conteúdos de Algoritmos e Lógica de Programação, utilizando o Visual Studio e a linguagem CSharp como ferramentas de aprendizado.","archived":false,"fork":false,"pushed_at":"2024-08-01T17:28:05.000Z","size":2337,"stargazers_count":9,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-10T21:43:35.696Z","etag":null,"topics":["algorithms","algoritmos","arrays","back-end","backend","csharp","for-while","for-while-loops","functions","if-else","if-else-statements","logica-de-programacao","portugues","portuguese","programing-logic","switch-case","switch-case-statements","visual-studio"],"latest_commit_sha":null,"homepage":"https://github.com/claytonferraz","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":"2022-08-31T23:39:49.000Z","updated_at":"2025-03-16T02:56:52.000Z","dependencies_parsed_at":"2024-08-01T19:15:40.346Z","dependency_job_id":"be9d572a-99cc-4df0-854c-cf20a5c9612a","html_url":"https://github.com/juletopi/Algoritmos_e_Logica_de_Programacao","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/juletopi/Algoritmos_e_Logica_de_Programacao","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juletopi%2FAlgoritmos_e_Logica_de_Programacao","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juletopi%2FAlgoritmos_e_Logica_de_Programacao/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juletopi%2FAlgoritmos_e_Logica_de_Programacao/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juletopi%2FAlgoritmos_e_Logica_de_Programacao/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/juletopi","download_url":"https://codeload.github.com/juletopi/Algoritmos_e_Logica_de_Programacao/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juletopi%2FAlgoritmos_e_Logica_de_Programacao/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261756584,"owners_count":23205152,"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":["algorithms","algoritmos","arrays","back-end","backend","csharp","for-while","for-while-loops","functions","if-else","if-else-statements","logica-de-programacao","portugues","portuguese","programing-logic","switch-case","switch-case-statements","visual-studio"],"created_at":"2025-05-17T16:13:00.494Z","updated_at":"2025-06-24T21:05:05.037Z","avatar_url":"https://github.com/juletopi.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!--\n❗ ➤ References used in this Repository:\n🔗 • https://github.com/piyushsuthar/github-readme-quotes\n🔗 • https://github.com/kyechan99/capsule-render\n🔗 • https://github.com/DenverCoder1/custom-icon-badges\n🔗 • https://profilepicturemaker.com\n🔗 • https://shields.io\n🔗 • https://emoji.gg\n🔗 • https://getemoji.com\n--\u003e\n\n\u003cdiv align=\"left\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/license/juletopi/Algoritmos_e_Logica_de_Programacao\" 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/Algoritmos_e_Logica_de_Programacao/blob/main/Assets/Images/Algorithms-pic.png\"\u003e\n        \u003cimg src=\"https://user-images.githubusercontent.com/76459155/199731620-a4b5b177-51fa-4438-b156-a688add7e716.png\" alt=\"Algorithms-pic\" width=\"116px\" title=\"Repositório de Algoritmos e Lógica de Programação\"\u003e\n    \u003c/a\u003e\n    \u003ch2 align=\"center\"\u003eAlgoritmos e Lógica de Programação 👩‍💻\u003c/h2\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n \n  • Este é um repositório com o conteúdo das aulas de Algoritmos e Lógica de Programação, \\\n  ministradas pelo professor [**Clayton Ferraz Andrade**](https://www.linkedin.com/in/claytonferraz/), utilizando o **Visual Studio** e a \\\n  linguagem **CSharp** 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/dotnet/core/introduction\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Made%20with%20Framework:-.NET%20Framework-gray.svg?colorA=8731AB\u0026amp;colorB=6C2D93\u0026amp;style=for-the-badge\" alt=\"NETFramework-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=\"#-professor\"\u003eProfessor\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#1-coment%C3%A1rios-declara%C3%A7%C3%A3o-de-vari%C3%A1veis-e-comandos-do-console\"\u003eConceitos Aprendidos 1\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#2-conceitos-de-ifelse\"\u003eConceitos Aprendidos 2\u003c/a\u003e \n  \u003c/p\u003e\n    \u003ca href=\"#3-conceitos-de-switchcase\"\u003eConceitos Aprendidos 3\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#4-conceitos-de-forwhile\"\u003eConceitos Aprendidos 4\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#5-conceitos-e-métodos-de-arrayfunções\"\u003eConceitos Aprendidos 5\u003c/a\u003e\n  \u003c/p\u003e\n    \u003ca href=\"#6-conceitos-e-métodos-de-arrayfunções-avançados\"\u003eConceitos Aprendidos 6\u003c/a\u003e \u0026#xa0; | \u0026#xa0;\n    \u003ca href=\"#7-conceitos-e-métodos-de-matrizes\"\u003eConceitos Aprendidos 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=499627\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=merko\u0026quote=Medir%20o%20progresso%20da%20programação%20por%20linhas%20de%20código%20é%20como%20medir%20o%20progresso%20da%20construção%20de%20aeronaves%20em%20termos%20de%20peso.\u0026author=Bill%20Gates)](https://github.com/piyushsuthar/github-readme-quotes)\n\u003c/div\u003e\n\n\u003c!-- ABOUT TEACHER --\u003e\n\n\u003cdiv align=\"left\"\u003e\n\n## 👨‍🏫 Professor:\n\n\u003ca href=\"https://github.com/juletopi/Algoritmos_e_Logica_de_Programacao/blob/main/Assets/Images/ClaytonFerraz-pic.png\"\u003e\n  \u003cimg align=\"left\" height=\"135px\" width=\"135px\" alt=\"ClaytonFerraz-pic\" title=\"Professor Clayton Ferraz\" src=\"https://user-images.githubusercontent.com/76459155/194718233-86388040-0628-44bf-b28c-57d7535897f7.png\"\u003e\n\u003c/a\u003e\n\n  **Clayton Ferraz Andrade - Analista de Sistemas | Professor de Curso Técnico e Superior | Coordenador de Curso Superior de Tecnologia em ADS** \\\n  [**IFRO Campus Ji-Paraná**](https://portal.ifro.edu.br/ji-parana) • \u003ci\u003eAtuando desde Março de 2014\u003c/i\u003e \\\n  Linguagens \u0026 Tecnologias: `JavaScript` • `HTML` • `PHP` • `C#` • `GraphQL` • `E outros...` \\\n  Contato: **[clayton.andrade@ifro.edu.br](mailto:clayton.andrade@ifro.edu.br)**\n\n\u003c/div\u003e\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=499627\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n\u003c!-- LEARNED CONCEPTS --\u003e\n\n## 📚 Conceitos Aprendidos:\n\n### 1. Comentários, declaração de variáveis e comandos do console\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Calculadora_CSharp](https://github.com/juletopi/Algoritmos_e_Logica_de_Programacao/blob/main/Calculadora_CSharp/Program.cs)\"*\n\n\u003cdiv align=\"left\"\u003e\n\n  Nesta aula foram aprendidos:\n  - Conceitos básicos para o uso do Visual Studio\n  - Utilização do Visual Studio para conceitos matemáticos\n  - Criação de algoritmos matemáticos usando lógica de programação e comandos de console\n \n\u003c/div\u003e\n  \n```c#\n// Na criação de um \"algoritmo\", podemos seguir este sete passos ↴\n// 1.NOME, 2.INÍCIO, 3.DADOS/VARIÁVEIS, 4.ENTRADA, 5.PROCESSAMENTO, 6.SAÍDA, 7.FIM\n\n// 1.NOME:\nnamespace Calculadora_CSharp\n{\n    internal class Program\n    {\n        static void Main(string[] args)\n        {\n            // 2.INÍCIO\n            // Faça um algorítimo que receba dois valores e mostre\n            // a soma desses dois valores.\n\n            // 3.DADOS/VARIÁVEIS\n            double n1 = 0;\n            double n2 = 0;\n            double soma = 0;\n\n            // 4.ENTRADA\n            Console.WriteLine(\"Digite o primeiro número:\");\n            n1 = double.Parse(Console.ReadLine());\n            Console.WriteLine(\"\\r\\nDigite o segundo número:\");\n            n2 = double.Parse(Console.ReadLine());\n\n            // 5.PROCESSAMENTO\n            soma = n1 + n2;\n\n            // 6.SAÍDA\n            Console.WriteLine(\"\\r\\nOs números somados são: \" +soma);\n            Console.ReadKey();\n        }\n    }\n}\n// 7.FIM :)\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#algoritmos-e-lógica-de-programação-\"\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=499627\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 2. Conceitos de \"If/Else\"\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Saque_Bancario_CSharp](https://github.com/juletopi/Algoritmos_e_Logica_de_Programacao/blob/main/Saque_Bancario_CSharp/Program.cs)\"*\n\n\u003cdiv align=\"left\"\u003e\n \n  Nesta aula foram aprendidos:\n  - Utilização do comando \"If/Else\"\n  - Possibilidades de instrução\n \n\u003c/div\u003e\n\n```c#\n{\n    // \"If/Else\" é um comando que existe para executar uma de duas possibilidades\n    // de instrução. No caso de se a expressão original \"if\" ser avaliada como \n    // FALSE, a expressão secundária \"else\" será executada.\n    \n    // Exemplo: Saque bancário baseado no saldo informado ↴\n\n    double saldo = 0;\n    double saque = 0;\n\n    Console.WriteLine(\"Informe seu saldo (Somente números):\");\n    saldo = double.Parse(Console.ReadLine());\n    Console.WriteLine(\"\\r\\nDigite o quanto quer sacar (Somente números):\");\n    saque = double.Parse(Console.ReadLine());\n\n    if (saque \u003c= saldo)\n    {\n        saldo = (saldo - saque);\n        Console.WriteLine(\"\\r\\nSaque efetudado com sucesso! O seu saldo agora, é de: R$\" +saldo);\n    }\n    else\n    {\n        Console.WriteLine(\"\\r\\nSaldo insuficiente, o saque não foi efetuado! Seu saldo é de: R$\" +saldo);\n    }\n Console.ReadKey();\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#algoritmos-e-lógica-de-programação-\"\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=499627\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 3. Conceitos de \"Switch/Case\"\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Escolha_de_Cursos_CSharp](https://github.com/juletopi/Algoritmos_e_Logica_de_Programacao/blob/main/Escolha_de_Cursos_CSharp/Program.cs)\"*\n\n\u003cdiv align=\"left\"\u003e\n \n  Nesta aula foram aprendidos:\n  - Utilização do comando \"Switch/Case\"\n  - Estrutura de múltiplas escolhas\n \n\u003c/div\u003e\n\n```c#\n{\n    // Em alguma situações você pode usar o \"If/Else\" ou o \"Switch/Case\" para resolver\n    // o mesmo problema. Apesar de serem comandos parecidos, funcionam de formas diferentes.\n    // Normalmente se usa o comando do \"Switch/Case\" quando há diversas variáveis,\n    // executando uma peça diferente do código dependendo de qual valor ele se encaixar.\n    \n    // Exemplo: Tabela de escolha de cursos ↴\n\n    string curso, string turma;\n    int opc_curso = 0;\n\n    Console.WriteLine(\"O que você deseja cursar?\");\n    Console.WriteLine(\"\\r\\nDigite 1 para o curso de ADS\");\n    Console.WriteLine(\"Digite 2 para o curso de Química\");\n    Console.WriteLine(\"Digite 3 para o curso de Florestas\");\n    opc_curso = Convert.ToInt32(Console.ReadLine());\n\n    switch (opc_curso)\n    {\n        case 1:\n            curso = \"ADS\";\n        break;\n        case 2:\n            curso = \"Química\";\n        break;\n        case 3:\n            curso = \"Florestas\";\n        break;\n        default:\n            Console.WriteLine(\"\\r\\nVocê digitou alguma informação errada!!!\");\n            curso = \"Sem curso definido.\";\n        break;\n    }\n Console.WriteLine(\"\\r\\nO seu curso escolhido é: \" +curso);\n Console.ReadKey();\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#algoritmos-e-lógica-de-programação-\"\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=499627\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 4. Conceitos de \"For/While\"\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Tabuada_CSharp](https://github.com/juletopi/Algoritmos_e_Logica_de_Programacao/blob/main/Tabuada_CSharp/Program.cs)\"*\n\n\u003cdiv align=\"left\"\u003e\n \n  Nesta aula foram aprendidos:\n  - Conceitos de \"For/While\"\n  - Utilização do comando \"For\"\n  - Estrutura de repetição\n \n\u003c/div\u003e\n\n```c#\n{\n    // As estruturas de repetição são utilizadas para processar uma coleção\n    // de dados, que precisam ser processados por um mesmo bloco de código.\n    // O FOR é mais usado para loops definidos e WHILE para loops infinitos.\n\n    // Exemplo usando o FOR: Tabuada de um número até onde o usuário quiser ↴\n    \n    int i, n, m;\n    int resultado;\n\n    Console.WriteLine(\"Defina um número para exibir a tabuada dele:\");\n    n = int.Parse(Console.ReadLine());\n    Console.WriteLine(\"\\r\\nQuantas vezes?\");\n    m = int.Parse(Console.ReadLine());\n    Console.WriteLine(\"\");\n\n    for (i = 1; i \u003c= m; i++)\n    {\n        resultado = n * i;\n        Console.WriteLine(n + \" x \" + i + \" = \" + resultado);\n    }\n Console.ReadKey();\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#algoritmos-e-lógica-de-programação-\"\u003e Voltar para o início ↺\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n\u003cbr\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \n| \u003ch3 align=\"center\"\u003e⚠️ AVISO\u003c/h3\u003e |\n|:---------------------------------|\n| \u003cp\u003e\u003cdiv align=\"center\"\u003eA partir deste ponto, se inicia: \u003cbr\u003e**\"Algoritmos e Lógica de Programação II\"** \u003c/p\u003e |\n\n\u003c/div\u003e\n\u003cbr\u003e\n\n### 5. Conceitos e Métodos de Array/Funções\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Function_Arrays_Fixos_CSharp](https://github.com/juletopi/Algoritmos_e_Logica_de_Programacao/blob/main/Function_Arrays_Fixos_CSharp/Program.cs)\"*\n\n\u003cdiv align=\"left\"\u003e\n \n  Nesta aula foram aprendidos:\n  - Conceito sobre funções/arrays\n  - Criação de funções/arrays\n  - Chamada mais fixa de funções dentro do algoritmo\n \n\u003c/div\u003e\n\n```c#\n// - Vetores/Arrays\n//   Vetores, também conhecidos como arrays unidimensionais, são estruturas de dados que armazenam um \n//   conjunto de elementos do mesmo tipo em uma sequência contígua de memória. Os elementos são acessados \n//   por meio de um índice inteiro, que representa a posição do elemento no vetor.\n\nint[] valores = new int[3];\nstring[] nomes = new string[3];\n\nfor (int i = 0; i \u003c valores.Length; i++) // \u003c-- O \"for\" é usado para inserir os valores dinamicamente.\n{\n    Console.WriteLine(\"Digite valores: \");\n    valores[i] = Convert.ToInt32(Console.ReadLine());\n}\n\nfor (int i = 0; i \u003c valores.Length; i++)\n{\n    Console.WriteLine(\"Digite nomes: \");\n    nomes[i] = Console.ReadLine();\n}\n\nConsole.WriteLine(\"O 2º valor inserido é: \" + valores[2]); // \u003c-- Aqui é imprimido o 2º valor inserido no índice.\nConsole.WriteLine(\"O 3º nome inserido é: \" + nomes[3]); // \u003c-- Aqui é imprimido o 3º valor inserido no índice.\nConsole.WriteLine(\"A quantidade de nomes insiridos é: \" + nomes[Length]); // \u003c-- Ao usar o \"Lenght\", é imprimido o tamanho do vetor.\n\nfor (int i = 0; i \u003c valores.Length; i++)\n{\n    Console.WriteLine(\"Valor inserido: \" + valores[2]); // \u003c-- Aqui é imprimido todos os valores inseridos no índice.\n}\n\nint soma = valores[0] + valores[1] + valores[2]++;\nConsole.WriteLine(\"Resultado da soma dos valores inseridos: \" + soma); // \u003c-- Somando os valores inseridos em cada índice.\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#algoritmos-e-lógica-de-programação-\"\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=499627\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 6. Conceitos e Métodos de Array/Funções (Avançados)\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Function_Arrays_Dinamicos](https://github.com/juletopi/Algoritmos_e_Logica_de_Programacao/blob/main/Function_Arrays_Dinamicos/Program.cs)\"*\n\n\u003cdiv align=\"left\"\u003e\n \n  Nesta aula foram aprendidos:\n  - Conceitos mais avançados sobre funções/arrays\n  - Chamada mais dinâmica de funções dentro do algoritmo\n \n\u003c/div\u003e\n\n```c#\n// Exemplo feito em aula (Cadastro de notas de alunos)\n\nint x = 0;\n\nConsole.WriteLine(\"Digite quantos alunos deseja cadastrar: \"); // \u003c-- Pedindo para o usuário especificar \nx = int.Parse(Console.ReadLine());                                 // quantos cadastros deseja fazer\n\nstring[] nomeAluno;\ndouble[] nota1 = new double[x];\ndouble[] nota2 = new double[x];\ndouble[] media = new double[x];\nnomeAluno = new string[x];\n\nfor (int i = 0; i \u003c nomeAluno.Length; i++) // \u003c-- É aplicado o \"Lenght\" somente a variáveis do tipo vetor/array\n{\n    Console.WriteLine(\"\\r\\nDigite o nome do aluno: \");\n    nomeAluno[i] = Console.ReadLine();\n\n    Console.WriteLine(\"Digite a 1º nota do aluno: \");\n    nota1[i] = Convert.ToDouble(Console.ReadLine());\n    Console.WriteLine(\"Digite a 2º nota do aluno: \");\n    nota2[i] = Convert.ToDouble(Console.ReadLine());\n\n    media[i] = (nota1[i] + nota2[i]) / 2;\n}\n\nConsole.Clear();\n\nfor (int i = 0; i \u003c nomeAluno.Length; i++) // \u003c-- Criando um efeito de \"Calculando...\", exibindo a mensagem \n{                                              // \"Calculando notas\", seguida por 50 pontos impressos em uma\n    Console.Write(\"\\r\\n Calculando notas\");    // linha, com um atraso de 30 milissegundos entre cada ponto\n    for (int j = 0; j \u003c 50; j++)\n    {\n        System.Threading.Thread.Sleep(30);\n        Console.Write(\".\");\n    }\n\n    Console.WriteLine();\n    Console.WriteLine(\"\\r\\n-----------------------------------------\");\n\n    Console.WriteLine(\" As notas do aluno \" + nomeAluno[i] + \" são: \");\n    Console.WriteLine(\" Nota 1: \" + nota1[i] + \"pts\");\n    Console.WriteLine(\" Nota 2: \" + nota2[i] + \"pts\");\n    Console.WriteLine(\"\\r\\n A sua média é: \" + media[i] + \"pts\");\n\n    if (media[i] \u003e= 60)\n    {\n        Console.WriteLine(\"\\r\\n Está APROVADO!\");\n    }\n    else\n    {\n        Console.WriteLine(\"\\r\\n Está REPROVADO!\");\n    }\n\n    Console.WriteLine(\"\\r\\n Pressione ENTER para prosseguir...\");\n\n    Console.WriteLine(\"-----------------------------------------\");\n\n    Console.ReadKey();\n}\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#algoritmos-e-lógica-de-programação-\"\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=499627\u0026height=4\u0026section=header\u0026%20render\"\u003e\n\u003c/div\u003e\n\n### 7. Conceitos e Métodos de Matrizes\n\n\u003e [!NOTE]\\\n\u003e *Retirado da aula de \"[Function_Matrizes](https://github.com/juletopi/Algoritmos_e_Logica_de_Programacao/blob/main/Function_Matrizes/Program.cs)\"*\n\n\u003cdiv align=\"left\"\u003e\n \n  Nesta aula foram aprendidos:\n  - Conceitos sobre arrays/vetores multidimensionais (matrizes)\n  - Criação de matrizes\n \n\u003c/div\u003e\n\n```c#\n// Exemplo feito em aula (Cadastro de clientes, produtos e preços)\n\n// Matrizes são usadas para organizar e manipular dados de maneira eficiente em \n// uma estrutura tabular. Elas permitem armazenar informações relacionadas em \n// um formato de grade, o que facilita o acesso rápido a elementos específicos.\n\nstring[] nomeCliente;\nint[] quantProd;\ndouble[] precoProdTotal;\ndouble[][] precoProd;\nstring[][] nomeProd;\n\nConsole.WriteLine(\"Quantos clientes deseja cadastrar? \");\nint quant = Convert.ToInt32(Console.ReadLine());\n\nnomeCliente = new string[quant];\nquantProd = new int[quant];\nprecoProd = new double[quant][];\nnomeProd = new string[quant][];\n\nfor (int i = 0; i \u003c quant; i++)\n{\n    Console.WriteLine(\"\\r\\nDigite o nome do Cliente:\");\n    nomeCliente[i] = Console.ReadLine();\n    Console.Write(\"Digite quantos produtos este cliente quer comprar: \");\n    quantProd[i] = Convert.ToInt32(Console.ReadLine());\n\n    precoProd[i] = new double[quantProd[i]];\n    nomeProd[i] = new string[quantProd[i]];\n\n    for (int j = 0; j \u003c quantProd[i]; j++)\n    {\n        Console.Write(\"\\r\\nDigite o NOME do produto do cliente: \" + nomeCliente[i]);\n        nomeProd[i][j] = Console.ReadLine();\n        Console.Write(\"Digite o PREÇO do produto do cliente: \" + nomeCliente[i]);\n        precoProd[i][j] = Convert.ToDouble(Console.ReadLine());\n    }\n}\n\n// Mostrar os dados\n\nConsole.Write(\"Carregando.\");\nfor (int i = 0; i \u003c 60; i++)\n{\n    System.Threading.Thread.Sleep(30);\n    Console.Write(\".\");\n}\n\nConsole.WriteLine(\"\");\nfor (int i = 0; i \u003c quant; i++)\n{\n    Console.WriteLine(\"Cliente: \" + nomeCliente[i]);\n    Console.WriteLine(\"Este cliente comprou \" + quantProd[i] + \" produtos.\");\n\n    for (int j = 0; j \u003c quantProd[i]; j++)\n    {\n        Console.WriteLine(\"\\r\\nO \" + (j + 1) + \"º produto é: \" + nomeProd[i][j]);\n        Console.WriteLine(\"O \" + (j + 1) + \"º produto tem o valor de: \" + precoProd[i][j]);\n    }\n}\n\n// Calcular o valor total das compras aqui, se necessário\n```\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#algoritmos-e-lógica-de-programação-\"\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=\"top\" width=\"33%\"\u003e\n      \u003cdiv align=\"center\"\u003e  \n        \u003ca href=\"https://github.com/juletopi\"\u003e\n          \u003cimg src=\"https://user-images.githubusercontent.com/76459155/220271784-9f930c36-c370-4518-9b56-604627c6e2b5.png\" width=\"120px;\" alt=\"JuletopiAvatar-pic\" title=\"Autor: Juletopi\" /\u003e\n          \u003cbr\u003e\n          \u003csub\u003e\u003cb\u003eJúlio Cézar | Juletopi\u003c/b\u003e\u003c/sub\u003e\n        \u003c/a\u003e\n      \u003c/div\u003e\n    \u003c/td\u003e\n    \u003ctd valign=\"left\" width=\"100%\"\u003e\n      \u003cdiv align=\"left\"\u003e\n        \u003cul\u003e\n          \u003cli\u003e\n            \u003csub\u003e\u003cimg align=\"center\" src=\"https://cdn.jsdelivr.net/gh/devicons/devicon/icons/linkedin/linkedin-original.svg\" height=\"15\" alt=\"LinkedIn-icon\"\u003e LinkedIn - \u003ca href=\"https://www.linkedin.com/in/julio-cezar-pereira-camargo/\"\u003eJúlio Cézar P. Camargo\u003c/a\u003e\u003c/sub\u003e\n          \u003c/li\u003e\n          \u003cli\u003e\n            \u003csub\u003e\u003cimg align=\"center\" src=\"https://pngimg.com/uploads/email/email_PNG100738.png\" height=\"15\" alt=\"Facebook-icon\"\u003e Email - \u003ca href=\"mailto:juliocezarpvh@hotmail.com\"\u003ejuliocezarpvh@hotmail.com\u003c/a\u003e\u003c/sub\u003e\n          \u003c/li\u003e\n          \u003cli\u003e\n            \u003csub\u003e\u003cimg align=\"center\" src=\"https://cdn3.emoji.gg/emojis/6158-whatsapp.png\" height=\"15\" alt=\"WhatsApp-icon\"\u003e Whatsapp - \u003ca href=\"http://api.whatsapp.com/send?phone=5569993606894\"\u003e+55 (69) 9 9360-6894\u003c/a\u003e\u003c/sub\u003e\n          \u003c/li\u003e\n          \u003cli\u003e\n            \u003csub\u003e\u003cimg align=\"center\" src=\"https://cdn3.emoji.gg/emojis/6333-instagram.png\" height=\"15\" alt=\"Instagram-icon\"\u003e Instagram - \u003ca href=\"https://www.instagram.com/juletopi/\"\u003e@juletopi\u003c/a\u003e\u003c/sub\u003e\n          \u003c/li\u003e\n        \u003c/ul\u003e\n      \u003c/div\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003cdiv align=\"left\"\u003e\n  \u003ch6\u003e\u003ca href=\"#algoritmos-e-lógica-de-programação-\"\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%2Falgoritmos_e_logica_de_programacao","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuletopi%2Falgoritmos_e_logica_de_programacao","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuletopi%2Falgoritmos_e_logica_de_programacao/lists"}