Você está aqui: Cards de AutoCAD Civil 3D |
||
|
||
|
|
||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercício Resolvido de Java - Como rotacionar os elementos de um vetor de inteiros n vezes para a direita - Solução usando vetor temporárioQuantidade de visualizações: 790 vezes |
|
Pergunta/Tarefa: Dado o vetor:
// vamos criar um vetor de inteiros
int valores[] = {1, 6, 9, 3, 7, 8, 5, 2};
Importante: a solução que apresentamos usa um array adicional para resolver o desafio. Fique à vontade para usar força-bruta ou outra abordagem que achar mais conveniente. Sua saída deverá ser parecida com: Array na ordem original: 1 6 9 3 7 8 5 2 Rotação do vetor no passo 1 do primeiro laço: 8 0 0 0 0 0 0 0 Rotação do vetor no passo 2 do primeiro laço: 8 5 0 0 0 0 0 0 Rotação do vetor no passo 3 do primeiro laço: 8 5 2 0 0 0 0 0 Rotação do vetor no passo 1 do segundo laço: 8 5 2 1 0 0 0 0 Rotação do vetor no passo 2 do segundo laço: 8 5 2 1 6 0 0 0 Rotação do vetor no passo 3 do segundo laço: 8 5 2 1 6 9 0 0 Rotação do vetor no passo 4 do segundo laço: 8 5 2 1 6 9 3 0 Rotação do vetor no passo 5 do segundo laço: 8 5 2 1 6 9 3 7 Array depois de rotacionar 3 vezes: 8 5 2 1 6 9 3 7 Veja a resolução comentada deste exercício em Java:
package estudos;
public class Estudos {
public static void main(String[] args) {
// vamos criar um vetor de inteiros
int valores[] = {1, 6, 9, 3, 7, 8, 5, 2};
// mostramos o array na ordem original
System.out.println("Array na ordem original:");
exibirVetor(valores);
// vamos rotacionar o array 3 casas para a direita
valores = rotacionarArray(valores, 3);
// e mostramos o resultado
System.out.println("Array depois de rotacionar 3 vezes:");
exibirVetor(valores);
}
// método usado para exibir o array
public static void exibirVetor(int []vetor){
// percorremos cada elemento do vetor
for (int i = 0; i < vetor.length; i++) {
System.out.print(vetor[i] + " ");
}
System.out.println("\n");
}
// método que recebe um vetor de inteiros e o rotaciona um
// determinado número de vezes
public static int[] rotacionarArray(int[] vetor, int n) {
// vamos obter a quantidade de elementos no vetor
int quant = vetor.length;
// o número de rotações é maior que a quantidade de
// elementos no vetor? Se for nós ajustamos o número
// de rotações usando o operador de módulo
if(n > quant){
n = n % quant;
}
// criamos um vetor temporário
int[] resultado = new int[quant];
// o primeiro laço movimenta os elementos a partir
// do valor de n
for(int i = 0; i < n; i++){
resultado[i] = vetor[quant - n + i];
// mostramos o progresso
System.out.println("Rotação do vetor no passo " + (i + 1) +
" do primeiro laço:");
exibirVetor(resultado);
}
// ajustamos o índice para o primeiro elemento do vetor
int indice = 0;
for(int i = n; i < quant; i++){
resultado[i] = vetor[indice];
// mostramos o progresso
System.out.println("Rotação do vetor no passo " + (indice + 1) +
" do segundo laço:");
exibirVetor(resultado);
indice++; // incrementa o índice
}
// retorna o vetor rotacionado
return resultado;
}
}
A solução que apresentamos aqui usa um vetor temporário, isto é, um array adicional, para melhorar a perfomance. Em outras dicas do site nós apresentamos uma solução para este desafio usando força-bruta. A força-bruta não é a melhor abordagem, mas pode ser mais fácil de ser entendida por iniciantes em programação. |
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 1Quantidade de visualizações: 7330 vezes |
|
Uma das maiores dificuldades de quem está aprendendo a desenvolver aplicações em Laravel é encontrar livros e tutoriais realmente direcionados para os iniciantes. A documentação do framework Laravel é muito consistente e apurada, mas não nos oferece um caminho progressivo para desenvolver do zero uma aplicação que vai de encontro ao anseio daqueles que querem desenvolver códigos Laravel com conexão à banco de dados, principalmente com o MySQL (ou MariaDB). Nesta série de tutoriais eu mostrarei como criar um CRUD completo em Laravel e MySQL, usando o XAMPP (PHP, MySQL e Apache Web Server). CRUD é uma abreviação para CREATE, READ, UPDADE e DELETE, ou seja, as quatro operações que comumente usamos em cadastros de clientes, produtos, etc. Então, sem mais atrasos, vamos colocar a mão na massa. Comece verificando se você já tem o Laravel instalado. Caso não tenha, aqui mesmo no site você encontrará instruções para fazer a instalação. Certifique-se também de que o seu XAMPP esteja instalado e funcionando corretamente. Criando a aplicação Laravel Para começar, vamos criar a aplicação. Daremos a ela o nome de biblioteca e faremos o cadastro de alguns livros. Abra uma janela de prompt e dispare os comandos abaixo: C:\Users\Osmar>cd C:\xampp\htdocs C:\xampp\htdocs>composer create-project --prefer-dist laravel/laravel biblioteca Aguarde um pouco até que a aplicação seja criada e as dependências sejam instaladas. Vá pegar um cafezinho e, quando voltar, verifique se tudo correu bem e vamos progredir. Hora de criar a base de dados no MySQL Depois de criada a aplicação Laravel, vamos até o banco MySQL criar a nossa base de dados. Daremos a ela o nome de biblioteca. Você pode criar a base de dados usando o phpMyAdmin, a linha de comando ou sua ferramenta GUI favorita. O passo seguinte é configurar os parâmetros de conexão essa base de dados. Para isso, abra o arquivo .env na raiz do projeto e localize as linhas abaixo (caso não saiba como abrir o arquivo .env, use a opção File -> Open File do Visual Code da Microsoft): DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laravel DB_USERNAME=root DB_PASSWORD= Encontrou as linhas mencionadas? Agora altere-as para as definições abaixo: DB_CONNECTION=mysql DB_HOST=localhost DB_PORT=3306 DB_DATABASE=biblioteca DB_USERNAME=root DB_PASSWORD=osmar1234 É claro que os parâmetros de conexão Laravel + MySQL podem variar do meu exemplo para o seu. Vamos criar a migração (migration) - Mais café, por favor Com a base de dados MySQL já criada, vamos criar agora uma tabela chamada livros. Em uma janela de terminal, dispare os comandos abaixo: C:\xampp\htdocs>cd C:\xampp\htdocs\biblioteca C:\xampp\htdocs\biblioteca>php artisan make:migration criar_tabela_livros --create=livros Created Migration: 2021_01_29_141019_criar_tabela_livros Se tudo correu bem, abra o diretório C:\xampp\htdocs\biblioteca\database\migrations e verá um arquivo chamado 2021_01_29_141019_criar_tabela_livros.php. Abra-o e teremos o seguinte conteúdo:
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CriarTabelaLivros extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('livros', function (Blueprint $table) {
$table->id();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('livros');
}
}
?>
Note que temos uma classe chamada CriarTabelaLivros que extende Migration e, dentro dessa classe, foram criados dois métodos: up(), que permite criar a tabela livros e down(), que permite excluí-la. Vamos alterar o método up() para a seguinte versão:
public function up()
{
Schema::create('livros', function (Blueprint $table) {
$table->increments('id');
$table->string('titulo');
$table->string('autor');
$table->integer('paginas');
$table->timestamps();
});
}
Veja que nossa tabela livros será composta de quatro campos: id (chave primária auto-incremento), titulo (varchar), autor (varchar) e paginas (int). O Laravel incluirá dois outros campos: created_at e updated_at para podemos registrar data e hora da criação e alteração dos registros individuais. Vamos fazer a migração agora? Agora que já temos a base de dados MySQL criada, configuramos os parâmetros de conexão no arquivo .env e criamos o arquivo de migração, o passo seguinte é rodar a migração. Para isso abra uma janela de terminal e digite o comando a seguir: C:\xampp\htdocs\biblioteca>php artisan migrate Migrating: 2021_01_29_141019_criar_tabela_livros Migrated: 2021_01_29_141019_criar_tabela_livros (63.66ms) Se olharmos na base de dados agora, veremos que a tabela livros foi devidamente criada. Confira os campos atentamente e faça as alterações que julgar necessárias. Na parte 2 deste tutorial de CRUD usando Laravel + MySQL, veremos como criar a rota de direcionamento das ações CRUD, o controlador (controller), o model (model) e as views (visões). Até lá e bons estudos. Leia a parte 2 aqui: Como criar um CRUD completo em Laravel 8 - CRUD em Laravel usando PHP e MySQL (MariaDB) - Parte 2 |
C ::: Dicas & Truques ::: Matemática e Estatística |
Como arredondar valores de ponto-flutuante usando a função round() da linguagem CQuantidade de visualizações: 17557 vezes |
|
A função round() da linguagem C é usada quando precisamos arredondar um valor de ponto-flutuante (com casas decimais) para cima ou para baixo, de acordo com as seguintes regras: a) Se a parte fracionária for igual ou maior que 0,5, o valor será arredondado para o menor inteiro maior que o valor fornecido à função (arredonda para cima). b) Se a parte fracionária for menor que 0,5, o valor será arredondado para o maior inteiro menor que o valor fornecido à função (arredonda para baixo). Para entender o funcionamento desta função, vamos considerar o valor 4.3. Ao aplicarmos a função round() a este valor, o retorno será 4.0. Isso pode ser comprovado no trecho de código abaixo:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
printf("O valor 4.3 arredondado usando round() e %f",
round(4.3));
printf("\n\n");
system("pause");
return 0;
}
Ao executarmos este código teremos o seguinte resultado: O valor 4.3 arredondado usando round() é 4.000000. |
jQuery ::: Dicas & Truques ::: Atributos ou Propriedades HTML |
Apostila jQuery - Como verificar se um elemento HTML pertence a uma determinada classe usando a função hasClass() do jQueryQuantidade de visualizações: 637 vezes |
Muitas vezes precisamos saber se um elemento HTML pertence a uma determinada classe CSS. Isso pode ser feito com o auxílio do método hasClass() da biblioteca jQuery. Basta passarmos a classe CSS que queremos verificar. Veja como usá-lo no trecho de código abaixo:
<script type="text/javascript">
<!--
function pertenceClass(){
// testa se o parágrafo com o id "parag"
// pertence à classe "destaque"
if($('#parag').hasClass("destaque"))
window.alert("Pertence à classe destaque");
else
window.alert("NÃO pertence à classe destaque");
}
//-->
</script>
O retorno deste método é um valor boolean (true ou false). |
C ::: C para Engenharia ::: Física - Mecânica |
Como calcular a Energia Potencial Gravitacional de um corpo dado a sua massa e altura em CQuantidade de visualizações: 2615 vezes |
|
A Energia Potencial Gravitacional ou Energia Gravitacional é a energia potencial que um objeto massivo tem em relação a outro objeto massivo devido à gravidade. É a energia potencial associada ao campo gravitacional, que é parcialmente convertida em energia cinética quando os objetos caem uns contra os outros. A energia potencial gravitacional aumenta quando dois objetos são separados. A fórmula para obtenção da Energia Potencial Gravitacional de um corpo em relação à sua massa e distância do chão, ou seja, da superfície terrestre, é: \[ E_\text{pg} = \text{m} \cdot \text{g} \cdot \text{h} \] Onde: Epg: energia potencial gravitacional (em joule, J). m: massa do corpo (em kg). g: aceleração da gravidade (m/s2). h: altura do objeto em relação ao chão (em metros). Como podemos ver, a Energia Potencial Gravitacional está diretamente relacionada à distância do corpo em relação à superfície terrestre. Dessa forma, quanto mais distante da terra o objeto estiver, maior a sua energia gravitacional. Isso nós diz também que, um objeto de altura zero possui Energia Potencial Gravitacional nula. Vamos ver um exemplo agora? Observe o seguinte enunciado: 1) Uma pessoa levanta um tijolo com peso de 2 quilogramas à distância de 1,5 metros do chão. Qual é a Energia Potencial Gravitacional deste corpo? Como o exercício nos dá a massa do objeto em kg e a distância dele em relação ao chão já está em metros, tudo que temos a fazer é jogar na fórmula. Veja o código C completo para o cálculo:
#include <stdio.h>
#include <stdlib.h>
// função principal do programa
int main(int argc, char *argv[]){
// gravidade terrestre em m/s2
float gravidade = 9.80665;
// massa do corpo
float massa = 2; // em kg
// altura do corpo em relação ao chão
float altura = 1.5; // em metros
// vamos calcular a energia potencial gravitacional
float epg = massa * gravidade * altura;
// mostramos o resultado
printf("A Energia Potencial Gravitacional é: %fJ", epg);
printf("\n\n");
system("PAUSE");
return 0;
}
Ao executar este código C nós teremos o seguinte resultado: A Energia Potencial Gravitacional é: 29.419950J |
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
|
PHP - Como inserir um determinado número de zeros antes de um número em PHP usando a função sprintf() |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





