Documentação (Programa Tabuada)


Introdução

Origem

logo da linguagem de programação php

     O objetivo desta documentação é esclarecer os pontos estabelecidos para a criação desse simples e útil site sobre criar tabuadas.
A ideia foi iniciada assim que houve um desafio de um trabalho do curso de Análise e Desenvolvimento de Sistemas da Instituição Gráu Técnico na cadeira de lógica de Programação onde foi introduzido o pseudocódigo chamado Portugol com a ferramenda chamada Visualg e após muitos desafios foi dado um gostinho do PHP, no qual decidi fazer os últimos desafios de lógica de programção em PHP.
Este é um pequeno apanhado desses desafios de lógica de programação feita em PHP, no qual eu e Mateus Henrique criamos esta documentação para o primeiro trabalho da cadeira de Análise e Projeto de Sistemas.

Requisitos

Utilidade

     A função do programa é facilitar a consulta rápida e direta de uma tabuada de acordo com o input(entrada de dados) do usuário
    assim o programa de forma perfeita usando loops(repetições de código) mostra o output(saída de dados) sendo de cima para baixo 
    em ordem crescente como mostra as relações abaixo:  
  
                                                                  Adição

                                                (n+1,n+2,n+3,n+4 ... n+10)

                                                                 Subtração

                                                (n-1,n-2,n-3,n-4 ... n-10)

                                                               Multiplicação

                                                (n*1,n*2,n*3,n*4 ... n*10)

                                                                 Divisão

                                                (n/1,n/2,n/3,n/4 ... n/10)
  

Público-alvo

    Como esperado o público-alvo do site da tabuada são estudantes e curiosos que querem aprender a tabuada ou consultar de forma rápida
   a função educacional deste simples.
Esse aspecto educacional e matemático é importante não apenas para a tabuada, mas também para os outros programas que estão fixados abaixos em Outros Projetos

Funcionalidades


Design

Minimalismo

     O design é funcional e simples, focado na usabilidade sem se preocupar com estética moderna ou elementos gráficos complexos. 
Ideal para um ambiente de aprendizado, o usuário assim que entrar no site, vai se deparar com o tema predominantemente escuro e texto branco e vai ter que digitar o número que ele deseja calcular e o site vai gerar para ela as tabuadas de Adição, Subtração, Multiplicação e Divisão.
A tabuadas utilizam bordas desenhadas com caracteres como e para criar a ilusão de tabelas e as operações matemáticas e seus resultados estão centralizados dentro dessas bordas.
tela preta mostrando tabuadas

Desenvolvimento

Organização no Desenvolvimento

    A arquitetura usada foi a cliente-servidor, a parte do front-end foi usado HTML/CSS  e no back-end foi usado PHP.
  

Arquitetura Cliente-Servidor

    Esse tipo de arquitetura foi usada no site e é esxtremamente comum em sites. 
Segue um texto abaixo sobre tal Arquitetura:
A arquitetura cliente-servidor é um modelo de computação distribuída em que tarefas e serviços são divididos entre clientes e servidores. O cliente é responsável por enviar solicitações ao servidor, enquanto o servidor processa essas solicitações e retorna respostas. Essa arquitetura é amplamente utilizada na internet, como em sites e aplicativos, onde o navegador atua como cliente e o servidor hospeda os recursos. Ela oferece vantagens como centralização de dados e fácil manutenção. No entanto, a performance pode ser impactada se o servidor for sobrecarregado.

Front-End

    Agora vamos esmiuçar o código do Front-End do site da tabuada, vamos começar com o HTML e depois partir para o CSS. 
Tudo foi feito num arquivo .php, pois o php suporta O HTML fora quanto dentro do código PHP, as tags html podem ser usadas tranquilamente no echo que é a forma do PHP de fazer o output(saída de dados).
No caso do HTML fora do código PHP em si, é praticamente recomendado jogar tudo num arquivo só, ou seja, o .php
    
      <!DOCTYPE html>
      <html lang="pt-br">
      <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Projeto Tabuada</title>
        <link rel="stylesheet" type="text/css" href="..&CSS/style.css">
      </head>
      <body>
        <hr>
        <hgroup>
          <h1>Projeto - Tabuada Quatro Operações</h1>
          <h2> Tabuada</h2>
        </hgroup>
        <form action="tabuada.php" method="get">
          <h3>Digite o número da tabuada </h3>
          <input type="number" name="num"> <br><br>
          <input value="Clique aqui!" type="submit">
        </form>
        <hr>
        <hr>
      </body>
      </html> 
    
      
      
Aqui é o exemplo do código HTML usado no site, vamos listar as principais tags do HTML:
      
No código CSS usamos o CSS fora do código HTML, assim indexando um arquivo .css dentro do HTML
<link rel="stylesheet" type="text/css" href="..&CSS/style.css">
Aqui vamos mostrar o código CSS abaixo:
        
          body{
            background-color: #171716;
            color: white;
            text-align: center;
            font-size: 18px;
            font-family: sans-serif;
            width: 70em;
            margin: auto;
            }        
        
      

Back-End

    No Back-End como já foi dito foi usado a linguagem de programação chamada PHP, foi usado loops de código. 
    Especificamente foi usado um loop(for) dentro de um loop(for), uma função, if/elseif/else e condicionais.
    Também usamos o método GET para pegar o input do usuário e colocar no back-end para haver o processamento de dados,
   assim aproveitando o uso de HTML dentro do código PHP, conseguimos fazer o output de dados.
Eis abaixo o código PHP:
        
          <?php
          if (isset($_GET["num"])) {
            $tabuada = $_GET["num"];
            if ($tabuada == null) {
              echo "<br>Digite o número para a tabuada";
            } else {
              
              function operacao($sinal){
                $tabuada = $_GET["num"];
                echo "-----------------------------------------------<br>";
                echo "<b>TABUADA DO $tabuada ($sinal)</b> <br>";
                echo "-----------------------------------------------<br>";
              }
              
              for($y = 1; $y <= 4; $y++){
                  if($y == 1){
                    operacao("ADIÇÃO");
                  } elseif ($y == 2) {
                    operacao("SUBTRAÇÃO");
                  } elseif ($y ==3){
                    operacao("MULTIPLICAÇÃO");
                  } else {
                    operacao("DIVISÃO");
                  }
                 
              for ($x = 1; $x <= 10; $x++) {
                if ($y == 1){
                  echo  "$tabuada + $x = " . $tabuada+$x . "<br>";
                } elseif ($y == 2) {
                  echo "$tabuada - $x = " . $tabuada-$x . "<br>";
                } elseif ($y == 3) {
                  echo "$tabuada * $x = " . $tabuada*$x . "<br>";
                } else {
                  echo "$tabuada / $x = " . round($tabuada/$x, 2) . "<br>";
                }
               
              }
              echo "-------------------------------------------------<br>";
              
            }
          }
          }
          ?>   

        
      

Confira o site do programa na íntegra!

Tabuada

Confira o GIthub do Projeto Tabuada na íntegra!

Github

Outros projetos em PHP

  1. Area
  2. Fatorial
  3. Fibonnaci
  4. Imposto
  5. Maior
  6. Média
  7. Primos
  8. Crescente & Decrescente
  9. Par