Você está aqui: Python ::: Desafios e Lista de Exercícios Resolvidos ::: Python Básico |
Escreva um programa Python que declara duas variáveis do tipo int e atribui a elas os valores 9 e 4 (nessa ordem). Em seguida mostre, em uma linha de cada vez - Desafio de Programação Resolvido em PythonQuantidade de visualizações: 239 vezes |
Pergunta/Tarefa: Escreva um programa Python que declara duas variáveis do tipo int e atribui a elas os valores 9 e 4 (nessa ordem). Em seguida mostre, em uma linha de cada vez, a soma, a diferença, o produto (multiplicação), a divisão desses dois valores e o resto da divisão do primeiro número pelo segundo. Sua saída deverá ser parecida com: A soma é: 13 A diferença é: 5 O produto é: 36 A divisão é: 2.25 O resto da divisão é: 1 Veja a resolução comentada deste exercício em Python: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # função principal do programa def main(): # vamos declarar duas variáveis do tipo int a = 9 b = 4 # vamos mostrar a soma dos dois números print("A soma é: {0}".format(a + b)) # agora vamos mostrar a subtração print("A diferença é: {0}".format(a - b)) # agora vamos mostrar a multiplicação print("O produto é: {0}".format(a * b)) # agora a divisão print("A divisão é: {0}".format(a / b)) # e finalmente o resto da divisão inteira print("O resto da divisão é: {0}".format(a % b)) if __name__== "__main__": main() |
Link para compartilhar na Internet ou com seus amigos: |
PHP ::: Dicas & Truques ::: Data e Hora |
Como adicionar ou somar dias a uma data usando a função mktime() do PHPQuantidade de visualizações: 12235 vezes |
Nesta dica que mostrarei como é possível usar a função mktime() do PHP para adicionar dias a uma data. O truque aqui é construir uma nova data a partir da data atual e somar a quantidade de dias que queremos ao quinto argumento fornecido para a função mktime(). Quando fazemos isso, a própria função de encarrega de montar todo o resto e nos fornecer a nova data. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <html> <head> <title>Estudos PHP</title> </head> <body> <?php echo "Hoje é: " . date("d/m/Y") . "<br>"; $proxima_data = mktime(0, 0, 0, date("m"), date("d") + 20, date("Y")); echo "Daqui 20 dias será: " . date("d/m/Y", $proxima_data); ?> </body> </html> Ao executar este código nós teremos o seguinte resultado: Hoje é: 10/03/2021 Daqui 20 dias será: 30/03/2021 |
Laravel ::: Artigos e Tutorias ::: CRUD - CREATE, READ, UPDATE, DELETE |
Como criar um CRUD completo em Laravel 8 - CRUD em Laravel usando PHP e MySQL (MariaDB) - Parte 2Quantidade de visualizações: 2551 vezes |
Na parte 1 deste tutorial sobre CRUD em Laravel usando PHP e MySQL (MariaDB) nós criamos a base de dados MySQL para a nossa aplicação biblioteca, criamos a aplicação Laravel, fizemos a migração e rodamos a migração, o que resultou na criação de uma tabela MySQL chamada livros. Nessa segunda parte nós vamos iniciar criando a rota de redirecionamento das ações do CRUD. Vamos criar também o controller e as primeiras views. Criando a rota de redirecionamento - routes/web.php Vá até o diretório C:\xampp\htdocs\biblioteca\routes e abra o arquivo web.php. Você verá que ele possui o seguinte conteúdo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <?php use Illuminate\Support\Facades\Route; /* |-------------------------------------- | Web Routes |-------------------------------------- | | Here is where you can register web routes | for your application. These routes are loaded | by the RouteServiceProvider within a group | which contains the "web" middleware group. | Now create something great! | */ Route::get('/', function () { return view('welcome'); }); ?> Vamos alterar o seu conteúdo para a versão abaixo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <?php use Illuminate\Support\Facades\Route; use App\Http\Controllers\LivroController; Route::resource('livros', LivroController::class); ?> Veja que criamos uma rota para um recurso, que neste caso será o controller LivroController. Passamos o nome livros para esta rota, de forma que a URL http://localhost/biblioteca/public/livros/create abrirá a view para cadastrar um novo livro. Hora de criar o controller e o model - a parte controle e modelo do MVC Com a rota de direcionamento devidamente criada, vamos partir para o controller. Abra uma janela de terminal e digite o comando abaixo: C:\xampp\htdocs\biblioteca>php artisan make:controller LivroController --resource --model=Livro O Artisan nos perguntará se queremos criar o modelo também. Informe "yes" e pressione Enter. A App\Models\Livro model does not exist. Do you want to generate it? (yes/no) [yes]: > yes Se tudo correr bem, você verá a seguinte mensagem: Model created successfully. Controller created successfully. Vá até o diretório C:\xampp\htdocs\biblioteca\app\Http\Controllers e localize o arquivo LivroController.php. Abra-o e note que temos os métodos index(), create(), store(), show(), edit(), update() e destroy(). Cada um destes métodos corresponde a uma ação que podemos executar na tabela de livros. Vamos começar com o método create(). Limpe todo o conteúdo deste controller e deixe apenas o código abaixo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <?php namespace App\Http\Controllers; use App\Models\Livro; use Illuminate\Http\Request; class LivroController extends Controller{ // mostra a view para cadastrar um novo livro public function create(){ return view('livros.create'); } } ?> O método create() apenas exibirá a página (view) que nos permitirá cadastrar um novo livro. Porém, antes de criar a primeira view, vá no diretório C:\xampp\htdocs\biblioteca\app\Models, localize e abra o arquivo Livro.php. Vamos modificá-lo para o código abaixo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class Livro extends Model{ use HasFactory; protected $fillable = [ 'titulo', 'autor', 'paginas' ]; } ?> Veja que informamos, no model Livro, os campos da tabela que serão preenchidos com as nossas informações. Os campos id, created_at e updated_at serão gerenciados pelo Laravel. A view para cadastrar um novo livro Chegou o grande momento. Vamos criar a página que nos permitirá cadastrar os livros. Para manter as coisas simples, escreveremos um view bem simples, sem muita formatação. Mas você poderá deixá-la mais bonita mais tarde. O importante aqui é entender a funcionalidade. Veja o código completo para a view create.blade.php: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <html> <head> <meta charset="utf-8"> <title>Biblioteca</title> </head> <body> <h1>Novo Livro</h1> @if($status = Session::get('mensagem')) <h2>{{ $status }}</h2> @endif @if($errors->any()) <h2>Houve alguns erros ao processar o formulário</h2> <ul> @foreach($errors->all() as $error) <li>{{ $error }}</li> @endforeach </ul> @endif <form action="{{ route('livros.store') }}" method="post"> @csrf <table width="200" border="0" cellspacing="3" cellpadding="3"> <tr> <td>Título:</td> <td><input type="text" name="titulo" id="titulo" placeholder="Título"></td> </tr> <tr> <td>Autor:</td> <td><input type="text" name="autor" id="autor" placeholder="Autor"></td> </tr> <tr> <td>Páginas</td> <td><input type="text" size="10" name="paginas" id="paginas" placeholder="Quant. Páginas"></td> </tr> <tr> <td> </td> <td><button type="submit">Gravar</button></td> </tr> </table> </form> </body> </html> Aqui nós criamos um formulário com a action apontando para {{route('livros.store')}}, e a forma de envio é POST. Temos também três elementos HTML do tipo input text, cada um com a propriedade name contendo o mesmo nome do campo na tabela livros. Salve esta view no diretório C:\xampp\htdocs\biblioteca\resources\views\livros. Agora abra o seu navegador no endereço http://localhost/biblioteca/public/livros/create e teremos o seguinte resultado: Agora só precisamos obter as informações do formulário e salvá-las no banco de dados. Gravando o novo livro na tabela do banco de dados Vamos ver agora como obter os dados do formulário, passá-los para o controller, instanciar o model e finalmente persistir no banco de dados MySQL. Você viu que os dados do form são enviados para o método store() do controller livros. Assim, abra o LivroController.php e adicione o código abaixo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <?php namespace App\Http\Controllers; use App\Models\Livro; use Illuminate\Http\Request; class LivroController extends Controller{ // mostra a view para cadastrar um novo livro public function create(){ return view('livros.create'); } // recebe as informações do formulário e as grava // no banco de dados public function store(Request $request){ // valida o formulário $request->validate([ 'titulo' => 'required', 'autor' => 'required', 'paginas' => 'required']); // obtém os valores do form Livro::create($request->all()); // direciona para página cadastro novamente, // com uma mensagem de sucesso return redirect()->route('livros.create') ->with('mensagem', 'Livro salvo com sucesso.'); } } ?> Pronto! A parte CREATE do CRUD já está completa. Experimente cadastrar um novo livro e veja o resultado na tabela do banco de dados. Observe que temos também a validação dos dados do formulário (mensagens indicando quais campos não foram preenchidos) e também uma mensagem de sucesso indicando que os dados foram gravados com sucesso. Na parte 3 deste tutorial veremos como listar os livros cadastrados e a opção de excluir e editar os livros. Até lá. Leia a parte 3 aqui: Como criar um CRUD completo em Laravel 8 - CRUD em Laravel usando PHP e MySQL (MariaDB) - Parte 3 |
PostgreSQL ::: Dicas & Truques ::: Comandos DDL (Data Definition Language - Linguagem de Definição de Dados) |
Como excluir uma tabela no PostgreSQL usando o comando DDL DROP TABLEQuantidade de visualizações: 7219 vezes |
Em algumas situações precisamos excluir uma tabela em uma base de dados PostgreSQL. Isso pode ser feito por meio do comando DDL DROP TABLE. Este comando remove a tabela da base de dados completamente, incluindo índices, regras (rules), triggers e restrições (constraints). Para disparar um comando DROP TABLE, você precisa ser um super usuário ou possuir privilégios sobre a tabela e o schema na qual ela reside. Em geral excluímos tabelas usando a ferramenta pgAdmin. No entanto, é importante conhecer e dominar este comando de forma a conseguirmos excluir tabelas a partir da janela de Query do pgAdmin, do SQL Shell (psql) ou usando uma linguagem de programação. Veja um comando DDL DROP TABLE usado para excluir uma tabela chamada produtos: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- DROP TABLE produtos; Se o comando for executado com sucesso, o PostgreSQL nos exibirá a seguinte mensagem: Query returned successfully with no result in 31 ms. ERRO: tabela "produtos" não existe ********** Error ********** ERRO: tabela "produtos" não existe SQL state: 42P01 ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- DROP TABLE IF EXISTS produtos; Agora o PostgreSQL trocará a mensagem de erro por uma mensagem de advertência: NOTA: tabela "produtos" não existe, ignorando Query returned successfully with no result in 14 ms. |
Dart ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercícios Resolvidos de Dart - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equiláteroQuantidade de visualizações: 906 vezes |
Pergunta/Tarefa: Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra: A < (B + C), B < (A + C) e C < (A + B). Escreva um programa Dart que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais). Sua saída deverá ser parecida com: Informe o primeiro lado do triângulo: 30 Informe o segundo lado do triângulo: 40 Informe o terceiro lado do triângulo: 60 O triângulo é escaleno Veja a resolução comentada deste exercício usando Dart: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // Vamos importar a biblioteca dart:io import 'dart:io'; void main(){ // vamos ler o primeiro lado do triângulo stdout.write("Informe o primeiro lado do triângulo: "); int lado_a = int.parse(stdin.readLineSync()); // vamos ler o segundo lado do triângulo stdout.write("Informe o segundo lado do triângulo: "); int lado_b = int.parse(stdin.readLineSync()); // vamos ler o terceiro lado do triângulo stdout.write("Informe o terceiro lado do triângulo: "); int lado_c = int.parse(stdin.readLineSync()); // os lados informados formam um triângulo? if((lado_a < (lado_b + lado_c)) && (lado_b < (lado_a + lado_c)) && (lado_c < (lado_a + lado_b))){ // é um triângulo equilátero (todos os lados iguais)? if((lado_a == lado_b) && (lado_b == lado_c)){ stdout.write("\nO triângulo é equilátero\n"); } else{ // é isósceles (dois lados iguais e um diferente)? if((lado_a == lado_b) || (lado_a == lado_c) || (lado_c == lado_b)){ stdout.write("\nO triângulo é isósceles\n"); } else{ // é escaleno stdout.write("\nO triângulo é escaleno\n"); } } } else{ stdout.write("\nOs lados informados não formam um triângulo.\n"); } } |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Ler um número de três dígitos, separá-lo e invertê-lo, escrevendo o número lido e sua forma inversaQuantidade de visualizações: 15628 vezes |
Exercício Resolvido de Java - Ler um número de três dígitos, separá-lo e invertê-lo, escrevendo o número lido e sua forma inversa Pergunta/Tarefa: Escreva um programa Java console ou GUI que leia um número de 3 dígitos e o inverta, escrevendo o número lido e o invertido. Por exemplo, se o usuário informar o valor 753, seu programa deverá invertê-lo, resultando em 357. Seu programa deverá exibir a seguinte saída: Informe um valor inteiro de três dígitos: 753 O valor original é: 753 O valor invertido é: 357 Veja a resolução comentada deste exercício usando Java console: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public static void main(String[] args){ // não se esqueça de adicionar um import para a classe Scanner // import java.util.Scanner; // vamos criar um objeto da classe Scanner Scanner entrada = new Scanner(System.in); // vamos solicitar ao usuário que informe um valor inteiro // na faixa 100 a 999 (incluindo) System.out.print("Informe um valor inteiro de três dígitos: "); // vamos ler o valor informado int valor = Integer.parseInt(entrada.next()); // vamos verificar se o valor está na faixa permitida if(valor < 100 || valor > 999){ System.out.println("Valor fora da faixa permitida"); System.exit(0); } // vamos criar uma variável temporária para manter intacto o valor lido int temp = valor; int inverso = 0; // guardará o valor invertido // vamos inverter o valor agora while(temp != 0){ inverso = (inverso * 10) + (temp % 10); temp = temp / 10; } // vamos mostrar o resultado System.out.println("O valor original é: " + valor); System.out.println("O valor invertido é: " + inverso); } |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
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 |