![]() |
|||||
![]() Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica. |
|||||
|
Java ::: Coleções (Collections) ::: ArrayList |
Como testar se um valor está contido em uma ArrayList do Java usando a função contains()Quantidade de visualizações: 19618 vezes |
Em algumas situações nós queremos verificar se um determinado valor está contido em um dos elementos da ArrayList. Para isso nós podemos usar o método contains(), que retorna true se o valor existir e false em caso contrário. Veja um exemplo de seu uso: package estudos_java; import java.util.ArrayList; public class Estudos{ public static void main(String[] args){ // cria uma ArrayList que conterá inteiros ArrayList<Integer> valores = new ArrayList<>(); // adiciona itens na lista valores.add(34); valores.add(12); valores.add(8); valores.add(23); // Verifica se um determinado if(valores.contains(12)){ System.out.println("O valor foi encontrado."); } else{ System.out.println("O valor não foi encontrado."); } System.exit(0); } } Ao executar este código Java nós teremos o seguinte resultado: O valor pesquisado foi encontrado. |
C++ ::: C++ para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como somar os elementos da diagonal principal de uma matriz em C++Quantidade de visualizações: 1615 vezes |
A Matriz quadrada é um tipo especial de matriz que possui o mesmo número de linhas e o mesmo número de colunas, ou seja, dada uma matriz Anxm, ela será uma matriz quadrada se, e somente se, n = m, onde n é o número de linhas e m é o número de colunas. Em geral as matrizes quadradas são chamadas de Matrizes de Ordem n, onde n é o número de linhas e colunas. Dessa forma, uma matriz de ordem 4 é uma matriz que possui 4 linhas e quatro colunas. Toda matriz quadrada possui duas diagonais, e elas são muito exploradas tanto na matemática quanto na construção de algorítmos. Essas duas diagonais são chamadas de Diagonal Principal e Diagonal Secundária. A diagonal principal de uma matriz quadrada une o seu canto superior esquerdo ao canto inferior direito. Veja: ![]() Nesta dica veremos como calcular a soma dos valores dos elementos da diagonal principal de uma matriz usando C++. Para isso, só precisamos manter em mente que a diagonal principal de uma matriz A é a coleção das entradas Aij em que i é igual a j. Assim, tudo que temos a fazer é converter essa regra para código C++. Veja um trecho de código C++ completo no qual pedimos para o usuário informar os elementos da matriz e em seguida mostramos a soma dos elementos da diagonal superior: #include <iostream> #include <cstdlib> using namespace std; int main(int argc, char *argv[]){ // vamos declarar e construir uma matriz de três linhas // e três colunas int linhas = 3, colunas = 3; int matriz[linhas][colunas]; // guarda a soma dos elementos na diagonal principal int soma_diagonal = 0; // vamos ler os valores para os elementos da matriz for(int i = 0; i < linhas; i++){ // linhas for(int j = 0; j < colunas; j++){ // colunas cout << "Informe o valor para a linha " << i << " e coluna " << j << ": "; cin >> matriz[i][j]; } } // vamos mostrar a matriz da forma que ela // foi informada cout << "\n"; // percorre as linhas for(int i = 0; i < linhas; i++){ // percorre as colunas for(int j = 0; j < colunas; j++){ cout << matriz[i][j] << " "; } // passa para a próxima linha da matriz cout << "\n"; } // vamos calcular a soma dos elementos da diagonal // principal for(int i = 0; i < linhas; i++){ for(int j = 0; j < colunas; j++){ if(i == j){ soma_diagonal = soma_diagonal + matriz[i][j]; } } } // finalmente mostramos a soma da diagonal principal cout << "\nA soma dos elementos da diagonal principal é: " << soma_diagonal << "\n\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este código C++ nós teremos o seguinte resultado: Informe o valor para a linha 0 e coluna 0: 3 Informe o valor para a linha 0 e coluna 1: 7 Informe o valor para a linha 0 e coluna 2: 9 Informe o valor para a linha 1 e coluna 0: 2 Informe o valor para a linha 1 e coluna 1: 4 Informe o valor para a linha 1 e coluna 2: 1 Informe o valor para a linha 2 e coluna 0: 5 Informe o valor para a linha 2 e coluna 1: 6 Informe o valor para a linha 2 e coluna 2: 8 3 7 9 2 4 1 5 6 8 A soma dos elementos da diagonal principal é: 15 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Como retornar o maior elemento em cada uma das colunas de uma matriz usando JavaQuantidade de visualizações: 955 vezes |
Pergunta/Tarefa: Dada a seguinte matriz: 6 10 4 2 9 7 20 3 1 Sua saída deverá ser parecida com: Maior elemento na coluna 0 é 20 Maior elemento na coluna 1 é 10 Maior elemento na coluna 2 é 7 Veja a resolução comentada deste exercício usando Java: package estudos; public class Estudos { public static void main(String[] args) { // vamos declarar e constuir uma matriz de 3 linhas e três colunas int matriz[][] = {{6, 10, 4}, {2, 9, 7}, {20, 3, 1}}; // vamos percorrer a matriz e exibir o maior elemento de cada coluna // começamos com cada coluna for(int i = 0; i < matriz[0].length; i++){ // assumimos que o maior valor é o primeiro dessa coluna int maior = matriz[0][i]; // percorremos todos os elementos desta linha for(int j = 0; j < matriz.length; j++){ // o elemento atual é maior que o maior? if(matriz[j][i] > maior){ // maior assume o valor atual maior = matriz[j][i]; } } // exibimos o maior elemento desta coluna System.out.println("Maior elemento na coluna " + i + " é " + maior); } } } |
PHP ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Apostila PHP para iniciantes - Como testar múltiplas condições usando a construção if...elseif...else da linguagem PHPQuantidade de visualizações: 9851 vezes |
A construção if...else (se...do contrário) pode ser extendida com o uso de elseif para testar múltiplas condições. Desta forma, você pode ter quantos blocos elseif (ou então se) você desejar. Veja o trecho de código a seguir:<?php $valor = 20; if($valor == 15){ echo "O valor é igual à 15"; } elseif($valor > 15){ echo "O valor é maior que 15"; } else{ echo "O valor é menor que 15"; } ?> Ao executar este código nós teremos o seguinte resultado: O valor é maior que 15 |
C ::: C para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular a norma ou módulo de vetores nos espaços R2 e R3 usando C - Geometria Analítica e Álgebra Linear usando CQuantidade de visualizações: 4411 vezes |
Em Geometria Analítica e Álgebra Linear, a magnitude, norma, comprimento, tamanho ou módulo (também chamado de intensidade na Física) de um vetor é o seu comprimento, que pode ser calculado por meio da distância de seu ponto final a partir da origem, no nosso caso (0,0). Considere o seguinte vetor no plano, ou seja, no espaço bidimensional, ou R2: \[\vec{v} = \left(7, 6\right)\] Aqui este vetor se inicia na origem (0, 0) e vai até as coordenadas (x = 7) e (y = 6). Veja sua plotagem no plano 2D: ![]() Note que na imagem já temos todas as informações que precisamos, ou seja, o tamanho desse vetor é 9 (arredondado) e ele faz um ângulo de 41º (graus) com o eixo x positivo. Em linguagem mais adequada da trigonometria, podemos dizer que a medida do cateto oposto é 6, a medida do cateto adjacente é 7 e a medida da hipotenusa (que já calculei para você) é 9. Note que já mostrei também o ângulo theta (__$\theta__$) entre a hipotenusa e o cateto adjacente, o que nos dá a inclinação da reta representada pelos pontos (0, 0) e (7, 6). Relembrando nossas aulas de trigonometria nos tempos do colegial, temos que o quadrado da hipotenusa é a soma dos quadrados dos catetos, ou seja, o Teorema de Pitágoras: \[a^2 = b^2 + c^2\] Como sabemos que a potenciação é o inverso da radiciação, podemos escrever essa fórmula da seguinte maneira: \[a = \sqrt{b^2 + c^2}\] Passando para os valores x e y que já temos: \[a = \sqrt{7^2 + 6^2}\] Podemos comprovar que o resultado é 9,21 (que arredondei para 9). Não se esqueça da notação de módulo ao apresentar o resultado final: \[\left|\vec{v}\right| = \sqrt{7^2 + 6^2}\] E aqui está o código C que nos permite informar os valores x e y do vetor e obter o seu comprimento, tamanho ou módulo: #include <stdio.h> #include <stdlib.h> #include <math.h> int main(int argc, char *argv[]){ float x, y, norma; // vamos ler os valores x e y printf("Informe o valor de x: "); scanf("%f", &x); printf("Informe o valor de y: "); scanf("%f", &y); // vamos calcular a norma do vetor norma = sqrt(pow(x, 2) + pow(y, 2)); // mostra o resultado printf("A norma do vetor é: %f", norma); printf("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Informe o valor de x: 7 Informe o valor de y: 6 A norma do vetor é: 9.219544457292887 Novamente note que arredondei o comprimento do vetor para melhor visualização no gráfico. Para calcular a norma de um vetor no espaço, ou seja, no R3, basta acrescentar o componente z no cálculo. |
C# ::: Dicas & Truques ::: Arquivos e Diretórios |
Como renomear ou mover arquivos em C# usando a função Move() da classe FileQuantidade de visualizações: 16575 vezes |
O método Move() da classe File é útil quando precisamos renomear ou mover arquivos. Este método recebe os caminhos e nomes antigo e novo do arquivo a ser renomeado ou movido de diretório. Veja um trecho de código no qual mostramos como renomear um arquivo texto (sem movê-lo para um diretório diferente): static void Main(string[] args){ // não esqueça // using System.IO; // caminho e nome atual do arquivo string antigo = "C:\\estudos_csharp\\arquivo.txt"; // caminho e novo nome do arquivo string novo = "C:\\estudos_csharp\\arquivo2.txt"; // vamos renomear o arquivo File.Move(antigo, novo); Console.WriteLine("Arquivo renomeado com sucesso."); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } |
PHP ::: Dicas & Truques ::: Variáveis e Constantes |
Como testar se uma variável ou constante é do tipo integer - Como usar as funções is_int() e is_integer() do PHPQuantidade de visualizações: 9631 vezes |
Em algumas situações precisamos verificar se uma determinada ou constante é do tipo integer, ou seja, possui um valor inteiro, sem casas decimais. Isso pode ser feito por meio das funções is_int() e is_integer(). Elas retornam um valor true se o arguemento for um inteiro e false em caso contrário. Veja um exemplo completo de como usá-las: <?php /* Em algumas situações podemos querer saber se o tipo de uma variável é integer, ou seja, contém um valor inteiro (sem casas decimais). Este teste pode ser feito com o auxílio da função is_int() ou is_integer(). Esta função retorna um valor true ou false dependendendo do tipo de variável sendo testada. */ $valor = 10; if(is_int($valor)){ echo 'A variável $valor é do tipo integer'; } ?> Ao executarmos este código nós teremos o seguinte resultado: A variável $valor é do tipo integer Esta dica foi revisada, atualizada e testada com o PHP 8. |
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Números Aleatórios, Números Randômicos, Amostras Aleatórias, Amostras Randômicas |
Como gerar números aleatórios em Python usando o método random.randint() da biblioteca NumPyQuantidade de visualizações: 2788 vezes |
Nesta dica mostrarei como podemos gerar números inteiros randômicos usando random.randint() da biblioteca NumPy. Note que a geração de números aleatórias é uma parte importante para o desenvolvimento de modelos de teste (test models) em Inteligência Artificial (IA), Machine Learning e outras áreas de estudo que envolvem Data Science. Veja um exemplo da forma mais simples do uso da função random.randint(): # importamos o módulo random da bibliteca NumPy from numpy import random def main(): # vamos gerar um número inteiro aleatório de 0 (incluído) à # 10 (não incluído) valor = random.randint(10) print("O número sorteado foi: ", valor) if __name__== "__main__": main() Ao executar este código teremos um resultado parecido com: O número sorteado foi: 3 Aqui nós informamos o limite alto do valor aleatório a ser gerado (mas ele não é incluído). Se quisermos limitar a faixa inferior, podemos tirar proveito dos parâmetros low e high da função randint(). Veja: # importamos o módulo random da bibliteca NumPy from numpy import random def main(): # vamos gerar um número inteiro aleatório de 5 (incluído) # à 10 (não incluído) valor = random.randint(5, 10) print("O número sorteado foi: ", valor) if __name__== "__main__": main() A partir da versão 1.19 da NumPy, os desenvolvedores da biblioteca recomendam o uso do método integers() do módulo default_rng(). |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercícios Resolvidos de VisuAlg - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equiláteroQuantidade de visualizações: 664 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 VisuAlg 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 VisuAlg: algoritmo "Testar o tipo de um triângulo em VisuAlg" var // variáveis usadas na resolução do problema lado_a, lado_b, lado_c: inteiro inicio // vamos ler o primeiro lado do triângulo escreva("Informe o primeiro lado do triângulo: ") leia(lado_a) // vamos ler o segundo lado do triângulo escreva("Informe o segundo lado do triângulo: ") leia(lado_b) // vamos ler o terceiro lado do triângulo escreva("Informe o terceiro lado do triângulo: ") leia(lado_c) // os lados informados formam um triângulo? se ((lado_a < (lado_b + lado_c)) e (lado_b < (lado_a + lado_c)) e (lado_c < (lado_a + lado_b))) entao // é um triângulo equilátero (todos os lados iguais)? se ((lado_a = lado_b) e (lado_b = lado_c)) entao escreval("O triângulo é equilátero") senao // é isósceles (dois lados iguais e um diferente)? se ((lado_a = lado_b) ou (lado_a = lado_c) ou (lado_c = lado_b)) entao escreval("O triângulo é isósceles") senao // é escaleno escreval("O triângulo é escaleno") fimse fimse senao escreval("Os lados informados não formam um triângulo.") fimse fimalgoritmo |
C ::: Fundamentos da Linguagem ::: Métodos, Procedimentos e Funções |
Como usar protótipos de função em CQuantidade de visualizações: 12296 vezes |
Um protótipo de função é uma declaração que define o nome, tipos de parâmetros e tipos de retorno de uma função. Em geral o protótipo de uma função é exigido quando a definição da função não é feita antes do código que efetua uma chamada a ela. Veja um exemplo:#include <stdio.h> #include <stdlib.h> // uma função que retorna a soma de dois inteiros // fornecidos como argumento int somar(int a, int b){ return (a + b); } int main(int argc, char *argv[]){ // efetua uma chamada à função somar int res = somar(3, 5); // exibe o resultado printf("Soma: %d", res); puts("\n\n"); system("PAUSE"); return 0; } Este código compila e executa normalmente, uma vez que a função somar() foi definida antes da função main(), ou seja, antes da parte do programa que possui uma chamada a ela. Veja agora esta nova versão: #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]){ // efetua uma chamada à função somar int res = somar(3, 5); // exibe o resultado printf("Soma: %d", res); puts("\n\n"); system("PAUSE"); return 0; } // uma função que retorna a soma de dois inteiros // fornecidos como argumento int somar(int a, int b){ return (a + b); } Aqui temos um problema: a função somar() é definida depois do código contendo uma chamada a ela. No Dev-C++ temos o seguinte erro de compilação: `somar` undeclared (first use this function) A solução para este casos é a criação do protótipo da função. Para a função somar() isso pode ser feito da seguinte forma: // protótipo da função somar() int somar(int, int); Note que não há a necessidade de especificar os nomes dos parâmetros da função, apenas seus tipos. Veja ainda que o protótipo da função é terminado com ponto-e-vírgula e sempre colocado após as instruções de #include. Veja o código completo para um exemplo usando protótipos de funções: #include <stdio.h> #include <stdlib.h> // protótipo da função somar() int somar(int, int); int main(int argc, char *argv[]){ // efetua uma chamada à função somar int res = somar(3, 5); // exibe o resultado printf("Soma: %d", res); puts("\n\n"); system("PAUSE"); return 0; } // uma função que retorna a soma de dois inteiros // fornecidos como argumento int somar(int a, int b){ return (a + b); } |
Nossas 20 dicas & truques de programação mais populares |
VB.NET - Como retornar a versão do .NET a partir de seus códigos VB.NET usando Environment.Version.ToString() |
Você também poderá gostar das dicas e truques de programação abaixo |
Python - Como inserir uma determinada quantidade de espaços à esquerda de um valor numérico usando Python Delphi - Como usar o evento OnDrawCell para controlar o desenho das células em um TStringGrid do Delphi JavaScript - Como testar se todos os elementos de um array satisfazem uma condição em JavaScript usando a função every() |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |