![]() |
|
||||
![]() 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 escrever um método que retorna um objeto da classe ArrayList do JavaQuantidade de visualizações: 16449 vezes |
Em algumas situações precisamos escrever um método Java que retorna um objeto da classe ArrayList. Esta dica mostra como isso pode ser feito:import java.util.*; public class Estudos{ public static void main(String[] args){ // vamos obter o ArrayList do método abaixo ArrayList<String> lista = obterLista(); // vamos exibir os valores dos elementos for(int i = 0; i < lista.size(); i++){ System.out.println(lista.get(i)); } System.exit(0); } // um método que retorna um ArrayList public static ArrayList<String> obterLista(){ // vamos criar um ArrayList, adicionar alguns elementos // e devolvê-la ao chamador do método ArrayList<String> nomes = new ArrayList<String>(); nomes.add("Osmar J. Silva"); nomes.add("Fernanda de Castro"); nomes.add("Marcos de Oliveira"); return nomes; } } |
Java ::: Dicas & Truques ::: Data e Hora |
Como adicionar ou subtrair dias de uma data e hora usando o método add() da classe Calendar do JavaQuantidade de visualizações: 13763 vezes |
Este trecho de código mostra como usar o método add() da classe Calendar da linguagem Java para adicionar ou subtrair dias de uma data. Veja que este método requer o campo de calendário e um número inteiro. Para o nosso propósito, o campo de calendário pode ser DAY_OF_MONTH ou DATE. Um valor positivo adiciona dias enquanto um valor negativo subtrai. Veja o código completo: package arquivodecodigos; import java.util.*; import java.text.*; public class Estudos{ public static void main(String args[]){ Calendar agora = Calendar.getInstance(); // formata e exibe a data e hora atual Format formato = new SimpleDateFormat( "dd/MM/yyyy - HH:mm:ss"); System.out.println("Hoje é: " + formato.format(agora.getTime())); // vamos adicionar 5 dias a esta data agora.add(Calendar.DAY_OF_MONTH, 5); // o mesmo resultado pode ser obtido com // agora.add(Calendar.DATE, 5); // formata e exibe o resultado formato = new SimpleDateFormat( "dd/MM/yyyy - HH:mm:ss"); System.out.println("Daqui a 5 dias será: " + formato.format(agora.getTime())); } } Ao executar este código nós teremos o seguinte resultado: Hoje é: 19/03/2021 - 22:13:54 Daqui a 5 dias será: 24/03/2021 - 22:13:54 |
Java ::: Java para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como somar os elementos da diagonal principal de uma matriz em JavaQuantidade de visualizações: 3004 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 Java. 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 Java. Veja um trecho de código Java completo no qual pedimos para o usuário informar os elementos da matriz e em seguida mostramos a soma dos elementos da diagonal superior: package arquivodecodigos; import java.util.Scanner; public class Estudos{ public static void main(String[] args) { // vamos fazer a leitura usando a classe Scanner Scanner entrada = new Scanner(System.in); // vamos declarar e construir uma matriz de três linhas e três colunas int matriz[][] = new int[3][3]; int soma_diagonal = 0; // guarda a soma dos elementos na diagonal principal // vamos ler os valores para os elementos da matriz for(int i = 0; i < matriz.length; i++){ // linhas for(int j = 0; j < matriz[0].length; j++){ // colunas System.out.print("Informe o valor para a linha " + i + " e coluna " + j + ": "); matriz[i][j] = Integer.parseInt(entrada.nextLine()); } } // vamos mostrar a matriz da forma que ela // foi informada System.out.println(); // percorre as linhas for(int i = 0; i < matriz.length; i++){ // percorre as colunas for(int j = 0; j < matriz[0].length; j++){ System.out.printf("%5d ", matriz[i][j]); } // passa para a próxima linha da matriz System.out.println(); } // vamos calcular a soma dos elementos da diagonal // principal for(int i = 0; i < matriz.length; i++){ for(int j = 0; j < matriz[0].length; j++){ if(i == j){ soma_diagonal = soma_diagonal + matriz[i][j]; } } } // finalmente mostramos a soma da diagonal principal System.out.println("\nA soma dos elementos da diagonal principal é: " + soma_diagonal); } } Ao executar este código Java 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 |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: VisuAlg Básico |
Exercícios Resolvidos de VisuAlg - Quantidade de patas dos animais de uma fazenda - O desafio da fazenda em VisuAlgQuantidade de visualizações: 446 vezes |
Pergunta/Tarefa: Para este exercício você foi contratado(a) para informar a quantidade total de patas dos animais de uma fazenda. O fazendeiro cria três espécies de animais: Galinhas = 2 patas Vacas = 4 patas Porcos = 4 patas O funcionário responsável pela fazenda contou os animais e forneceu a você a quantidade de animais de cada espécie (galinhas, vacas e porcos). Sua tarefa é retornar o número total de patas de todos os animais da fazenda. Sua saída deve ser parecida com: Informe a quantidade de galinhas: 8 Informe a quantidade de vacas: 3 Informe a quantidade de porcos: 11 Quantidade de animais: 22 Quantidade de patas: 72 Veja a resolução comentada deste exercício usando VisuAlg: algoritmo "Desafio da fazenda em VisuAlg" var // variáveis usadas na resolução do problema quant_galinhas, quant_vacas, quant_porcos: inteiro quant_total_animais, quant_patas_total: inteiro inicio // vamos ler a quantidade de cada animal escreva("Informe a quantidade de galinhas: ") leia(quant_galinhas) escreva("Informe a quantidade de vacas: ") leia(quant_vacas) escreva("Informe a quantidade de porcos: ") leia(quant_porcos) // vamos calcular a quantidade de animais quant_total_animais <- quant_galinhas + quant_vacas + quant_porcos escreval("Quantidade de animais: ", quant_total_animais) // vamos calcular a quantidade de patas quant_patas_total <- quant_galinhas * 2 quant_patas_total <- quant_patas_total + (quant_vacas * 4) quant_patas_total <- quant_patas_total + (quant_porcos * 4) escreval("Quantidade de patas: ", quant_patas_total) fimalgoritmo |
C++ ::: Fundamentos da Linguagem ::: Tipos de Dados |
Como usar o tipo de dados size_t da linguagem C++Quantidade de visualizações: 15911 vezes |
O tipo size_t é definido no arquivo stddef.h e em outros headers, e sua definição pode ser encontrada da seguinte forma:typedef unsigned long size_t; Este tipo é usado para definir tamanhos de strings e blocos de memória. Foi proposto pelo ANSI C. É comum encontrar size_t substituindo unsigned int ou unsigned long. Muito frequente também é ver este tipo recebendo o resultado de uma chamada ao operator sizeof. Veja: #include <iostream> using namespace std; int main(){ // vamos obter a quantidade de bytes em um int size_t tam = sizeof(int); cout << "Um inteiro nesta arquitetura contém: " << tam << " bytes" << endl; } Ao executarmos este código nós teremos o seguinte resultado: Um inteiro nesta arquitetura contém: 4 bytes |
PHP ::: Dicas & Truques ::: Strings e Caracteres |
Como concatenar strings em PHP usando o operador "."Quantidade de visualizações: 320 vezes |
Todas as linguagens de programação oferecem o seu operador de concatenação, que nos permite juntar palavras, frases, textos e valores de variáveis. Na maioria das linguagens o operador de concatenação é o sinal de adição "+". Porém, em PHP, a concatenação é feita usando-se o operador ".". Veja um exemplo abaixo de como usá-lo: <?php $nome = "Carlos"; $cidade = "São Paulo"; echo "Meu nome é " . $nome . " e eu moro em " . $cidade . "."; ?> |
Python ::: Dicas & Truques ::: Data e Hora |
Como adicionar dias à uma data em Python usando a função timedelta() da classe datetimeQuantidade de visualizações: 9094 vezes |
Nesta dica mostrarei como é possível usar o método timedelta() da classe datetime do Python para adicionar um determinado número de dias a uma data. O truque aqui é fornecer apenas o dia para o método timedelta(), obter o resultado e somá-lo com a data que já temos. Veja o código completo para o exemplo: import datetime # função principal do programa def main(): # dias a serem adicionados quant_dias = 2 # Obtém a data de hoje hoje = datetime.date.today() print("Hoje é:", hoje) # Adiciona dias à data dias = datetime.timedelta(days=quant_dias) hoje = hoje + dias # Exibe o resultado print("Daqui à", quant_dias, "dias será", hoje) if __name__== "__main__": main() Ao executarmos este código Python nós teremos o seguinte resultado: Hoje é: 2021-03-11 Daqui à 2 dias será 2021-03-13 |
C++ Builder ::: VCL - Visual Component Library ::: TEdit |
Como obter o tamanho do texto de um TEdit usando a função SendMessage() da API do Windows e a mensagem WM_GETTEXTLENGTH usando C++ BuilderQuantidade de visualizações: 6116 vezes |
Embora o C++ Builder já nos forneça as ferramentas necessárias para obter a quantidade de caracteres contidos em um TEdit em tempo de execução, é importante saber como realizar esta tarefa usando a API do Windows. Para isso, podemos usar a função SendMessage() em combinação com a mensagem WM_GETTEXTLENGTH. A função SendMessage() da API do Windows possui a seguinte assinatura: LRESULT SendMessage( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam ); Note que precisamos informar o HWND (parâmetro hWnd) para a caixa de texto e a mensagem que será enviada ao controle. Os valores para os parâmetros wParam e lParam devem ser 0 (zero). Veja: void __fastcall TForm3::Button2Click(TObject *Sender) { // vamos obter o tamanho do texto de um TEdit usando a função // SendMessage() e a mensagem WM_GETTEXTLENGTH int tam = SendMessage(Edit1->Handle, WM_GETTEXTLENGTH, 0, 0); // vamos mostrar o resultado ShowMessage("O Edit contém " + IntToStr(tam) + " caracteres."); } Ao executar este exemplo você terá um mensagem com um texto parecido com: O Edit contém 10 caracteres. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Matemática e Estatística |
Exercício Resolvido de Java - Escreva um programa Java que pede um número inteiro e informa se o número informado é um número de ArmstrongQuantidade de visualizações: 988 vezes |
Pergunta/Tarefa: Um número é chamado de número de Armstrong quando a soma de cada um dos seus dígitos, elevado à quantidade de dígitos do número, equivale ao próprio número. Por exemplo, 153 e 93084 são números de Armstrong, já que: 153 = 13 + 53 + 33 93084 = 95 + 35 + 05 + 85 + 45 Escreva um programa Java que pede para o usuário informar um número inteiro e informa se o número informado é um número de Armstrong ou não. Seu código deve usar apenas os operadores matemáticos disponíveis na linguagem Java. Sua saída deverá ser parecida com: Informe um número inteiro: 153 O número informado é um número de Armstrong Veja a resolução comentada deste exercício usando Java: package estudos; import java.util.Scanner; public class Estudos{ public static void main(String args[]){ // para efetuar a leitura da entrada do usuário Scanner entrada = new Scanner(System.in); // vamos pedir para o usuário informar um número System.out.print("Informe um número inteiro: "); int numero = Integer.parseInt(entrada.nextLine()); // o primeiro passo é obter a quantidade de dígitos que o número informado // possui int quant_digitos = 0; int temp = numero; while(temp != 0) { quant_digitos = quant_digitos + 1; temp = temp / 10; } // agora efetuamos o cálculo que verifica se o número é um número // de Armstrong ou não int resto, soma = 0; temp = numero; while(temp > 0){ resto = temp % 10; soma = soma + (int)(Math.pow(resto, quant_digitos)); temp = temp / 10; } if(soma == numero){ System.out.println("O número informado é um número de Armstrong"); } else{ System.out.println("O número informado não é um número de Armstrong"); } } } |
C# ::: LINQ ::: LINQ to Objects |
Como retornar o último elemento de um array de strings em C# usando a função Last() do LINQQuantidade de visualizações: 1307 vezes |
Nesta dica mostrarei um exemplo bem simples do uso do método Last() do LINQ (Language-Integrated Query) do C# para retornar o último elemento de um vetor de strings. É claro que este método funciona com qualquer coleção, mas um exemplo simples nos ajudará a entender melhor o seu funcionamento. Em outras dicas eu aprofundo o uso deste método. Vamos ao código então. Veja: using System; using System.Linq; namespace Estudos { class Principal { static void Main(string[] args) { // vamos construir um vetor de strings string[] linguagens = {"Java", "Python", "PHP", "Ruby"}; // vamos obter o último elemento do vetor string ultimo = linguagens.Last(); // vamos mostrar o resultado Console.WriteLine("A última linguagem é: {0}", ultimo); Console.WriteLine("\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: A última linguagem é: Ruby Fique atento ao fato de que o método Last() pode atirar uma exceção do tipo InvalidOperation se o array ou coleção estiver vazia ou não incluir nenhum elemento que se encaixe nas condições testadas. Veja o resultado ao chamarmos este método em um vetor vazio: System.InvalidOperationException HResult=0x80131509 Message=Sequence contains no elements Source=System.Linq StackTrace: at System.Linq.ThrowHelper.ThrowNoElementsException() at System.Linq.Enumerable.Last[TSource](IEnumerable`1 source) at Estudos.Principal.Main(String[] args) in C:\estudos_c#\Estudos\Principal.cs:line 11 |
Você também poderá gostar das dicas e truques de programação abaixo |
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 |