Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD e VBA
PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO

Você está aqui: Cards de Engenharia Civil - Estruturas de Aço e Madeira
Card 0 de 0
O filtro aplicado não retornou nenhum resultado. Clique o botão Remover Filtro ou experimente um filtro diferente.

Filtrar Cards
Use esta opção para filtrar os cards pelos tópicos que mais lhe interessam.
Termos:
Aviso Importante: Nos esforçamos muito para que o conteúdo dos cards e dos testes e conhecimento seja o mais correto possível. No entanto, entendemos que erros podem ocorrer. Caso isso aconteça, pedimos desculpas e estamos à disposição para as devidas correções. Além disso, o conteúdo aqui apresentado é fruto de conhecimento nosso e de pesquisas na internet e livros. Caso você encontre algum conteúdo que não deveria estar aqui, por favor, nos comunique pelos e-mails exibidos nas opções de contato.
Link para compartilhar na Internet ou com seus amigos:

C ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade)

Exercício Resolvido de C - Um método recursivo que conta de 0 até 10

Quantidade de visualizações: 1056 vezes
Pergunta/Tarefa:

Escreva um método recursivo que conta e exibe os valores de 0 até 10. Seu método deverá possuir a seguinte assinatura:

void contar_recursivamente(int n){
  // sua implementação aqui
}
Veja que o método deverá receber o valor 0 e efetuar novas chamadas a si mesmo até que os valores de 0 a 10 sejam exibidos. O ponto de parada da recursividade é a exibição do valor 10.

Sua saída deverá ser parecida com:

0  1  2  3  4  5  6  7  8  9  10
Resposta/Solução:

Veja a resolução comentada deste exercício usando C console:

#include <stdio.h>
#include <stdlib.h>
  
// método recursivo que conta de 0 até 10;
void contar_recursivamente(int n){
  // vamos exibir o número atual
  printf("%d  ", n);
    
  // devemos prosseguir com a recursividade?
  if(n < 10){
    // incrementa o valor de n
    n++;  
    contar_recursivamente(n); // e faz uma nova chamada recursiva
  }
}  
  
// método principal do programa  
int main(int argc, char *argv[]){
  // efetua uma chamada ao método recursivo fornecendo o primeiro valor
  contar_recursivamente(0);
  
  printf("\n\n");
  system("pause");
  return 0;
}



C ::: Dicas & Truques ::: Ponteiros, Referências e Memória

Como alocar memória dinâmica em C usando a função malloc()

Quantidade de visualizações: 29514 vezes
A função malloc() é usada em C para alocarmos um bloco de memória. Esta função recebe a quantidade de bytes a serem alocados e retorna um ponteiro do tipo void (genérico) para o início do bloco de memória obtido. Veja sua assinatura:

void *malloc(size_t size);

Se a memória não puder se alocada, um ponteiro nulo (NULL) será retornado.

É importante se lembrar de alguns conceitos antes de usar esta função. Suponhamos que você queira alocar memória para um inteiro. Você poderia ter algo assim:

// aloca memória para um int
ponteiro = malloc(4);

Embora este código esteja correto, não é um boa idéia assumir que um inteiro terá sempre 4 bytes. Desta forma, é melhor usar o operador sizeof() para obter a quantidade de bytes em um inteiro em uma determinada arquitetura. Veja:

// aloca memória para um int
ponteiro = malloc(sizeof(int));

Eis o código completo para um aplicativo C que mostra como alocar memória para um inteiro e depois atribuir e obter o valor armazenado no bloco de memória alocado:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  // ponteiro para uma variável do tipo inteiro
  int *ponteiro;

  // aloca memória para um int
  ponteiro = malloc(sizeof(int));

  // testa se a memória foi alocada com sucesso
  if(ponteiro)
    printf("Memoria alocada com sucesso.\n");
  else
    printf("Nao foi possivel alocar a memoria.\n");

  // atribui valor à memória alocada
  *ponteiro = 45;

  // obtém o valor atribuído
  printf("Valor: %d\n\n", *ponteiro);

  // libera a memória
  free(ponteiro);

  system("PAUSE");
  return 0;
}

Uma aplicação interessante da função malloc() é quando precisamos construir uma matriz dinâmica. Veja como isso é feito no código abaixo:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int i;

  // quantidade de elementos na matriz
  int quant = 10;

  // ponteiro para o bloco de memória
  int *ponteiro;

  // aloca memória para uma matriz de inteiros
  ponteiro = malloc(quant * sizeof(int));

  // testa se a memória foi alocada com sucesso
  if(ponteiro)
    printf("Memoria alocada com sucesso.\n");
  else{
    printf("Nao foi possivel alocar a memoria.\n");
    exit(1);
  }

  // atribui valores aos elementos do array
  for(i = 0; i < quant; i++){
    ponteiro[i] = i * 2;
  }

  // exibe os valores
  for(i = 0; i < quant; i++){
    printf("%d  ", ponteiro[i]);
  }

  // libera a memória
  free(ponteiro);

  printf("\n\n");
  system("PAUSE");
  return 0;
}



jQuery ::: Dicas & Truques ::: Atributos ou Propriedades HTML

Como obter o valor da propriedade class CSS de um elemento HTML usando jQuery

Quantidade de visualizações: 11627 vezes
Em algumas situações nós precisamos obter o valor da propriedade class de um elemento HTML. O trecho de código abaixo mostra como isso pode ser feito usando a função attr() da biblioteca jQuery:

<script type="text/javascript">
<!--
  function obterNomeClasse(){
    // Este exemplo mostra como obter o nome de classe
    // de um elemento HTML com o id "div_1"
    var nomeClasse = $('#div_1').attr("className");
    window.alert(nomeClasse);
  }
//-->
</script>



Java ::: Java para Engenharia ::: Geometria Analítica e Álgebra Linear

Como somar os elementos da diagonal principal de uma matriz em Java

Quantidade de visualizações: 3219 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



C# ::: Fundamentos da Linguagem ::: Estruturas de Controle

Tutorial C# - Como usar o laço while (enquanto) da linguagem C#

Quantidade de visualizações: 13757 vezes
O laço while (enquanto) é usado quando queremos repetir uma instrução ou bloco de instruções ENQUANTO uma condição for satisfatória. Veja um exemplo:

static void Main(string[] args){
  int valor = 1;

  while(valor <= 10){
    Console.WriteLine("{0}", valor);
    valor++;
  }

  Console.WriteLine("\n\nPressione uma tecla para sair...");
  Console.ReadKey();
}

Este trecho de código conta de 1 até 10. Veja que antes de cada iteração do laço nós testamos se o valor da variável de controle é menor ou igual a 10. A iteração acontece somente se esta condição for satisfeita, o que nos mostra que um laço while pode nunca ser executado (o que aconteceria se a condição fosse falsa já na entrada). Note ainda que dentro de cada iteração nós incrementamos o valor da variável de controle. Isso é feito para que o laço não seja executado infinitamente.

Veja um outro exemplo de laço while, desta vez simulando um menu de opções:

static void Main(string[] args){
  // variável que registra a opção do usuário
  int opcao;
  
  // lê a opção
  Console.Write("Informe a opção 1, 2 ou 3" +
    " (-1 para sair): ");
  
  // laço while que mostra as opções do menu enquanto
  // o valor -1 não for informado
  while((opcao = int.Parse(Console.ReadLine())) != -1){
    switch(opcao){
      case 1:
        Console.WriteLine("Executando a opção 1");
        break;
      case 2:
        Console.WriteLine("Executando a opção 2");
        break;
      case 3:
        Console.WriteLine("Executando a opção 3");
        break;
      default:
        Console.WriteLine("Opção incorreta");
        break;
    }

    // mostra o texto das opções novamente
    Console.Write("Informe a opção 1, 2 ou 3" +
    " (-1 para sair): ");
  }

  Console.WriteLine("\n\nPressione uma tecla para sair...");
  Console.ReadKey();
}

Se você é realmente iniciante em C#, notará que este exemplo é um pouco mais elaborado. Desta forma, estude-o atentamente. É uma técnica muito útil quando estamos escrevendo programas console, uma vez que a maioria deles possui um menu de opções.


Desafios, Exercícios e Algoritmos Resolvidos de C#

Veja mais Dicas e truques de C#

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby


E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser. Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 19,90


© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 82 usuários muito felizes estudando em nosso site.