Você está aqui: C ::: C para Engenharia ::: Geometria Analítica e Álgebra Linear |
|
Como somar os elementos da diagonal principal de uma matriz em CQuantidade de visualizações: 4205 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 <stdio.h> #include <stdlib.h> 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; int i, j; // vamos ler os valores para os elementos da matriz for(i = 0; i < linhas; i++){ // linhas for(j = 0; j < colunas; j++){ // colunas printf("Informe o valor para a linha %d e coluna %d: " , i, j); scanf("%d", &matriz[i][j]); } } // vamos mostrar a matriz da forma que ela // foi informada printf("\n"); // percorre as linhas ...... 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 |
|
Link para compartilhar na Internet ou com seus amigos: | |
C++ ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como inicializar os valores dos elementos de um vetor C++ usando valores randômicos - RevisadoQuantidade de visualizações: 9445 vezes |
Esta dica mostra como atribuir números aleatórios aos elementos de um array (vetor). Veja que cada elemento recebe um valor randômico na faixa de 0 a 100:#include <iostream> using namespace std; int main(int argc, char *argv[]) { // declara uma matriz de 10 elementos int valores[10]; // vamos inicializar os elementos da matriz // usando valores aleatórios de 0 a 100 srand(time(NULL)); for(int i = 0; i < 10; i++){ ...... Ao executarmos este código nós teremos um resultado parecido com: Indice: 0 - Valor: 46 Indice: 1 - Valor: 11 Indice: 2 - Valor: 28 Indice: 3 - Valor: 74 Indice: 4 - Valor: 49 Indice: 5 - Valor: 50 Indice: 6 - Valor: 27 Indice: 7 - Valor: 98 Indice: 8 - Valor: 11 Indice: 9 - Valor: 81 |
Python ::: Tkinter GUI Toolkit ::: Formulários e Janelas |
Como definir a cor de fundo de uma janela do Tkinter do Python usando a função config()Quantidade de visualizações: 2470 vezes |
A cor de fundo de uma janela do Tkinter do Python pode ser definida por meio de uma chamada à função config() da classe Tk com o valor de uma cor para o parâmetro bg. Veja uma aplicação Tkinter completa no qual definimos o título da janela e, em seguida, sua cor de fundo: # vamos importar o módulo Tkinter import tkinter as tk # método principal def main(): # vamos criar a janela principal da aplicação janela = tk.Tk() # vamos definir o título da janela janela.title("Sistema de Biblioteca") ...... |
Python ::: Dicas & Truques ::: Data e Hora |
Datas e horas em Python - Como obter o nome do dia da semana no formato longo (segunda-feira, terça-feira, etc) usando a função strftime() do PythonQuantidade de visualizações: 8519 vezes |
Nesta dica eu mostro como podemos usar a função strftime() da linguagem Python para obter e exibir o nome do dia da semana no formato longo e em português, ou seja, segunda-feira, terça-feira, quarta-feira, etc. Veja o código completo para o exemplo: from datetime import datetime import locale # função principal do programa def main(): # Configurações do usuário locale.setlocale(locale.LC_ALL, '') # Obtém um datatime da data e hora atual ...... Ao executarmos este código nós teremos o seguinte resultado: O dia da semana é: quinta-feira |
Delphi ::: Dicas & Truques ::: MIDI Musical Instrument Digital Interface, Mapeamento e sequenciamento MIDI, Entrada e saída MIDI |
Como retornar uma lista dos dispositivos de saída MIDI no sistema usando DelphiQuantidade de visualizações: 10998 vezes |
Em algumas ocasiões nós precisamos obter uma lista dos dispositivos de saída MIDI no sistema, talvez com o propósito de selecionar um determinado dispositivo em uma ListBox ou ComboBox. O trecho de código abaixo mostra como isso pode ser feito. O primeiro passo é declarar uma variável do tipo TMidiOutCaps. Este registro está declarado na unit MMSystem.pas e é uma tradução da estrutura MIDIOUTCAPS da API do Windows. Entre outros tipos de dados, esta estrutura possui um membro szPname que retorna o nome do dispositivo. Na unit MMSystem.pas este membro está declarado como array[0..MAXPNAMELEN-1] of AnsiChar, ou seja, uma matriz de AnsiChar que será preenchida pela API do Windows e terá seu final marcado com o caractere null (NULL terminated string). Note a conversão deste valor para o tipo String no momento de inserí-lo no ComboBox. Em versões anteriores do Delphi (estou escrevendo este código no Delphi 2009) podíamos usar a função StrPas() para esta finalidade. O passo seguinte é obter a quantidade de dispositivos de saída MIDI. Isso é feito com uma chamada à função midiOutGetNumDevs da API do Windows. Uma vez obtida a quantidade de dispositivos nós usamos um laço for e, no corpo deste laço, usamos o valor da variável de controle i para efetuar uma chamada à função midiOutGetDevCaps(), também da API do Windows: midiOutGetDevCaps(i, @MidiOutCaps, sizeof(TMidiOutCaps)); Esta função recebe o identificador do dispositivo (um valor inteiro começando em 0 e indo até a quantidade de dispositivos - 1), um ponteiro para um registro MidiOutCaps e o tamanho em bytes do registro. Se a função for executada com sucesso, o registro MidiOutCaps será preenchido com várias informações úteis, tais como o nome do dispositivo, o ID do fabricante, o ID do produto, versão do driver, tipo do dispositivo MIDI, número de vozes suportadas, número máximo de notas que podem ser tocadas simultaneamente, etc. Para finalizar, nós acessamos o campo szPname do registro MidiOutCaps e o adicionamos no ComboBox. Veja o código completo a seguir: procedure TForm1.Button2Click(Sender: TObject); var i: Integer; MidiOutCaps: TMidiOutCaps; // este registro (record) está definido em MMSystem.pas erro: Word; begin // uses MMSystem ComboBox2.Clear; // midiOutGetNumDevs retorna a quantidade de dispositivos de saída MIDI no sistema for i := 0 to midiOutGetNumDevs - 1 do begin // vamos obter o dispositivo identificado pela variável i (uDeviceID) ...... Ao executar este código o ComboBox será preenchido com valores semelhantes à: Microsoft GS Wavetable SW Synth MPU-401 Nas demais dicas relacionadas a este assunto você deverá sempre indicar o dispositivo de saída MIDI. Geralmente você poderá fornecer os valores 0 ou 1 para as funções MIDI que pedem o ID do dispositivo de saída. Para fins de compatibilidade esta dica ou anotação foi escrita usando Delphi 2009. |
JavaScript ::: Dicas & Truques ::: Data e Hora |
Como adicionar horas a um objeto Date em JavaScript - Datas e horas em JavaScriptQuantidade de visualizações: 8379 vezes |
Nesta dica mostrarei como é possível adicionar horas a um objeto Date da linguagem JavaScript. Note que criei uma função personalizada para este propósito, e ela retorna um novo objeto Date com a nova data e hora já construída. Veja o código completo para o exemplo: <html> <head> <title>Estudando JavaScript</title> </head> <body> <script type="text/javascript"> function adicionarHoras(data, horas){ return new Date(data.getTime() + (horas * 60 * 60 * 1000)); ...... Ao executar este código nós teremos o seguinte resultado: Agora são: 24/03/2021 17:21:40 Daqui 5 horas será: 24/03/2021 22:21:40 |
Desafios, Exercícios e Algoritmos Resolvidos de JavaScript |
Veja mais Dicas e truques de JavaScript |
Dicas e truques de outras linguagens |
JavaScript - Como usar objetos Set em seus códigos JavaScript |
Quem Somos |
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
|
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..
|
Linguagens Mais Populares |
1º lugar: Java |