Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Você está aqui: Laravel ::: Dicas & Truques ::: Request Object - Objeto Request |
|
Como usar o método path() da classe Request para retornar o caminho da requisição HTTPQuantidade de visualizações: 2662 vezes |
|
Em algumas situações nós precisamos obter o caminho da requisição feita às nossas aplicações Laravel. Para isso podemos usar o método path() da classe Request. Antes, porém, vamos entender o que é o caminho (path) da requisição. Suponha que o usuário acesse a aplicação pela URL: http://localhost/loja/public/cadastrar/usuario o caminho da requisição será: cadastrar/usuario Veja agora o código completo para uma rota na qual usamos app('request') para obter a requisição atual e em seguida efetuamos uma chamada ao seu método path(): <?php use Illuminate\Support\Facades\Route; Route::get('cadastrar/{quem}', function(){ $request = app('request'); return "Caminho da requisição: " . $request->path(); }); ?> Agora observe como obter o mesmo resultado a partir de um controller: <?php namespace App\Http\Controllers; class ClienteController extends Controller{ // vamos obter o objeto Request public function novo(){ return "Caminho da requisição: " . request()->path(); } } ?> A rota para chamar o método novo() deste controller é: <?php use Illuminate\Support\Facades\Route; use App\Http\Controllers\ClienteController; // vamos chamar o método novo() do controller Route::get('/novo', [ClienteController::class, 'novo']); ?> Ao executar o exemplo nós teremos o seguinte resultado: Caminho da requisição: novo Esta dica foi escrita e testada no Laravel 8. |
|
Link para compartilhar na Internet ou com seus amigos: | |
C ::: Dicas & Truques ::: Strings e Caracteres |
Como copiar os caracteres de uma string para outra usando a função strcpy() da linguagem CQuantidade de visualizações: 12566 vezes |
Pessoas acostumadas com Delphi, Java ou PHP podem pensar que a tarefa de copiar o conteúdo de uma string para outra em C pode ser tão simples quanto o código a seguir:#include <stdio.h> #include <stdlib.h> #include <string.h> int main(int argc, char *argv[]){ char frase1[] = "Gosto de PHP"; char frase2[50]; // pode receber até 49 caracteres // copia a primeira frase para a segunda frase2 = frase1; // exibe o resultado printf(frase2); puts("\n\n"); system("PAUSE"); return 0; } Este código não funciona. No Dev-C++ (MingW) a seguinte mensagem de erro de compilação é exibida: incompatible types in assignment of `char[13]` to `char[50]` Em C, a forma correta de copiar os caracteres de uma string para outra é obtendo ponteiros para a posição inicial das duas strings, percorrer todos os caracteres da primeira e atribuí-los um de cada vez nas posições de memória reservadas para a segunda string. Veja o protótipo da função strcpy(), usada para tal finalidade: char *strcpy(char *destino, const char *origem); Como podemos ver, a função copiará todos os caracteres contidos na string origem para a string destino. É importante observar que a string destino deverá ser declarada de forma que todos os caracteres a serem copiados possam ser acomodados sem que o programa corra o risco de escrever em áreas de memória reservadas a outras finalidades. Veja um exemplo completo: #include <stdio.h> #include <stdlib.h> #include <string.h> int main(int argc, char *argv[]){ char frase1[] = "Gosto de PHP"; char frase2[50]; // pode receber até 50 caracteres // copia a primeira frase para a segunda strcpy(frase2, frase1); // exibe o resultado printf(frase2); puts("\n\n"); system("PAUSE"); return 0; } |
Delphi ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular MDC em DelphiQuantidade de visualizações: 11792 vezes |
Como calcular o MDC (Máximo Divisor Comum) em Delphi Atualmente a definição de Máximo Divisor Comum (MDC) pode ser assim formalizada: Sejam a, b e c números inteiros não nulos, dizemos que c é um divisor comum de a e b se c divide a (escrevemos c|a) e c divide b (c|b). Chamaremos D(a,b) o conjunto de todos os divisores comum de a e b. O trecho de código abaixo mostra como calcular o MDC de dois números informados: // função personalizada que permite calcular o MDC de dois // valores inteiros function MDC(a, b: Integer): Integer; var resto: Integer; begin while b <> 0 do begin resto := a mod b; a := b; b := resto; end; Result := a; end; procedure TForm3.Button1Click(Sender: TObject); var x, y: Integer; begin x := StrToInt(Dialogs.InputBox('MDC', 'Informe o primeiro valor:', '')); y := StrToInt(Dialogs.InputBox('MDC', 'Informe o segundo valor:', '')); // vamos mostrar o resultado ShowMessage('O Máximo Divisor Comum de ' + IntToStr(x) + ' e ' + IntToStr(y) + ' é ' + IntToStr(MDC(x, y))); end; Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
JavaScript ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como testar se um ponto está dentro de um círculo em JavaScript - Desenvolvimento de Games com JavaScriptQuantidade de visualizações: 1251 vezes |
Quando estamos trabalhando com computação gráfica, geometria e trigonometria ou desenvolvimento de jogos em JavaScript, é comum precisarmos verificar se um determinado ponto (uma coordenada x, y) está contido dentro de um círculo. Para melhor entendimento, veja a imagem a seguir: Veja que temos um círculo com raio igual a 115 e com centro nas coordenadas (x = 205; y = 166). Temos também dois pontos. O ponto vermelho está nas coordenadas (x = 140; y = 90) e o ponto azul está nas coordenadas (x = 330; y = 500. Como podemos ver na imagem, o ponto vermelho está dentro do círculo, enquanto o ponto azul está fora. E nosso intenção nesta dica é escrever o código JavaScript que permite fazer essa verificação. Tenha em mente que está técnica é muito útil para o teste de colisões no desenvolvimento de games. Veja o código completo para o exemplo: <!doctype html> <html> <head> <title>Desenvolvimento de Games usando HTML5 e JavaScript</title> </head> <body> <script type="text/javascript"> // vamos declarar a classe Circulo class Circulo{ constructor(xc, yc, raio){ this.xc = xc; // x do centro this.yc = yc; // y do centro this.raio = raio; // raio do círculo } } // agora vamos declarar a classe Ponto class Ponto{ constructor(x, y){ this.x = x; // coordenada x this.y = y; // coordenada y } } // vamos criar um objeto Circulo var c = new Circulo(90, 50, 115); // vamos criar um objeto Ponto var p = new Ponto(140, 90); // vamos verificar se o ponto está dentro do // círculo var dx = p.x - c.xc; var dy = p.y - c.yc; if((Math.pow(dx, 2) + Math.pow(dy, 2)) < Math.pow(c.raio, 2)){ document.writeln("O ponto está dentro do círculo"); } else{ document.writeln("O ponto NÃO está dentro do círculo"); } </script> </body> </html> Ao executar este código nós teremos o seguinte resultado: O ponto está dentro do círculo. Experimente com círculos de raios e coordenadas centrais diferentes e também com pontos em várias coordenadas e veja como os resultados são interessantes. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Pesquisando um valor em uma matriz de int e retornando o índice no qual o mesmo foi encontradoQuantidade de visualizações: 9075 vezes |
Pergunta/Tarefa: Escreva um programa Java GUI ou console que declara, constrói e inicializa uma matriz de 5 inteiros. Em seguida peça ao usuário para informar um valor inteiro e informe se o valor lido está contido na matriz. Se o valor for encontrado na matriz, retorne seu índice (lembre-se de que os índices dos elementos em uma matriz Java começam em 0). A declaração, construção e inicialização da matriz pode ser feita da seguinte forma: // declara, constrói e inicializa uma matriz de 5 inteiros int valores[] = {4, 21, 8, 120, 1}; Resposta/Solução: Veja a resolução comentada deste exercício usando Java console: package estudos; import javax.swing.JOptionPane; public class Estudos { public static void main(String[] args) { // declara, constrói e inicializa uma matriz de 5 inteiros int valores[] = {4, 21, 8, 120, 1}; // vamos ler um valor inteiro int pesquisa = Integer.parseInt(JOptionPane.showInputDialog("Valor:")); // vamos verificar se o valor está contido na matriz e retornar seu índice int pos = -1; // índice não existente na matriz for(int i = 0; i < valores.length; i++){ if(valores[i] == pesquisa){ pos = i; // encontrou? vamos anotar este índice break; } } // vamos mostrar o resultado if(pos > -1){ JOptionPane.showMessageDialog(null, "O valor foi encontrado no índice: " + pos); } else{ JOptionPane.showMessageDialog(null, "O valor não foi encontrado na matriz"); } } } Uma idéia na resolução deste exercício é inicializar a variável que guardará o índice do elemento pesquisado com o valor -1. Assim, se no final da pesquisa o valor ainda for -1, sabemos que o elemento não foi encontrado. |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: VisuAlg Básico |
Exercícios Resolvidos de VisuAlg - Uma loja está concedendo desconto de 20% para clientes do sexo feminino com idade entre 18 e 35 anos (ambas incluídas)Quantidade de visualizações: 226 vezes |
Exercícios Resolvidos de VisuAlg - Uma loja está concedendo desconto de 20% para clientes do sexo feminino com idade entre 18 e 35 anos (ambas incluídas) Pergunta/Tarefa: Uma loja está concedendo desconto de 20% para clientes do sexo feminino com idade entre 18 e 35 anos (ambas incluídas). Para os demais clientes o desconto é 5% apenas. Leia o valor do produto, o nome, sexo e a idade do cliente e aplique o desconto correspondente. Sua saída deverá ser parecida com: Informe o valor do produto: 520 Informe o nome do cliente: FABRICIA DE CASTRO Informe a idade: 23 Informe o sexo: F FABRICIA DE CASTRO, você ganhou o desconto de 20% Valor a pagar: 416.0 Informe o valor do produto: 830 Informe o nome do cliente: OSMAR SLVA Informe a idade: 38 Informe o sexo: M OSMAR SLVA, você ganhou apenas o desconto de 5% Valor a pagar: 788.5 Veja a resolução deste exercício em VisuAlg: algoritmo "Ler o valor do produto, o valor do produto, o sexo..." var valor: real nome, sexo: caractere idade: inteiro inicio // vamos ler o valor do produto escreva("Informe o valor do produto: ") leia(valor) // agora vamos ler o nome do cliente escreva("Informe o nome do cliente: ") leia(nome) // agora vamos ler a idade escreva("Informe a idade: ") leia(idade) // e finalmente vamos ler o sexo do cliente escreva("Informe o sexo: ") leia(sexo) // vamos verificar se o cliente faz jus ao desconto // de 20% se ((idade >= 18) e (idade <= 35) e (sexo = "F")) entao valor <- valor - (valor * (20 / 100)) escreval(nome, ", você ganhou o desconto de 20%") escreval("Valor a pagar: ", valor) senao valor <- valor - (valor * (5 / 100)) escreval(nome, ", você ganhou apenas o desconto de 5%") escreval("Valor a pagar: ", valor) fimse fimalgoritmo |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de VisuAlg |
Veja mais Dicas e truques de VisuAlg |
Dicas e truques de outras linguagens |
C# - Como abrir outros formulários de sua aplicação C# Windows Forms a partir do formulário principal Android Java - Como detectar um clique em um botão do Android usando setOnClickListener() e exibir uma mensagem AlertDialog |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |