Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Você está aqui: C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
|
Algoritmos Resolvidos de C++ - Escreva um programa C++ que efetue a soma dos elementos da diagonal principal de uma matriz - Desafio de Programação Resolvido em C++Quantidade de visualizações: 13125 vezes |
|
Exercício Resolvido de C++ - Escreva um programa C++ que efetue a soma dos elementos da diagonal principal de uma matriz Pergunta/Tarefa: Em álgebra linear, a diagonal principal de uma matriz A é a coleção das entradas Aij em que i é igual a j. A diagonal principal de uma matriz quadrada une o seu canto superior esquerdo ao canto inferior direito (conforme mostrado na saída do problema proposto abaixo). Escreva um programa C++ que declara uma matriz 3x3 e pede ao usuário para informar seus valores. Em seguida mostre todos os valores da matriz e a soma dos elementos da diagonal principal. Sua saída deverá ser parecida com a imagem abaixo: Resposta/Solução: Veja a resolução comentada deste exercício: #include <cstdlib> #include <iostream> #include <iomanip> using namespace std; int main(int argc, char *argv[]) { int matriz[3][3]; // uma matriz de três linhas e três colunas 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 < 3; i++){ // linhas for(int j = 0; j < 3; j++){ // colunas cout << "Valor para a linha " << i << " e coluna " << j << ": "; cin >> matriz[i][j]; } } // vamos mostrar a matriz da forma que ela foi informada cout << "\n\nValores na matriz\n" << endl; for(int i = 0; i < 3; i++){ for(int j = 0; j < 3; j++){ cout << setw(5) << matriz[i][j]; } cout << "\n" << endl; } // vamos calcular a soma dos elementos da diagonal principal for(int i = 0; i < 3; i++){ for(int j = 0; j < 3; j++){ if(i == j){ soma_diagonal = soma_diagonal + matriz[i][j]; } } } cout << "A soma dos elementos da diagonal principal e: " << soma_diagonal << endl; cout << "\n" << endl; system("PAUSE"); return EXIT_SUCCESS; } |
|
Link para compartilhar na Internet ou com seus amigos: | |
Java ::: Dicas & Truques ::: Programação Orientada a Objetos |
Como usar classes abstratas em Java - Programação Orientada a Objetos - Java POOQuantidade de visualizações: 21460 vezes |
Classes abstratas (abstract classes) não diferem muito das classes que normalmente criamos, ou seja, elas também podem possuir propriedades e métodos. Porém, não é possível criar instâncias de uma classe abstrata usando o operador new. Veja:abstract class Pessoa{ public String nome; public int idade; } public class Estudos{ public static void main(String args[]){ // cria um objeto da classe Pessoa Pessoa p = new Pessoa(); } } Ao tentarmos compilar este exemplo teremos a seguinte mensagem: Estudos.java:9: Pessoa is abstract; cannot be instantiated Pessoa p = new Pessoa(); ^ 1 error Classes abstratas geralmente contém métodos abstratos (ainda que métodos não abstratos sejam também permitidos). Um método abstrato é um método que possui apenas a assinatura. Não há implementação. Esta implementação deverá ser fornecida pela subclasse ou classe derivada. Uma classe que contém métodos abstratos deverá, obrigatoriamente, ser declarada abstrata. Veja um exemplo de um método abstrato: public abstract class Pessoa{ public abstract String getNome(); } Se a classe não fosse declarada com o modificador abstract, teríamos a seguinte mensagem de erro de compilação: Pessoa.java:1: Pessoa is not abstract and does not override abstract method getNome() in Pessoa public class Pessoa{ ^ 1 error Classes abstratas são um dos tópicos mais complicados da linguagem Java e uma dor de cabeça enorme para aqueles que estão estudando para a certificação Java. Mostramos abaixo algumas dicas resultantes de nossas pesquisas sobre o assunto. 1)Uma classe não abstrata não pode conter métodos abstratos. Se uma classe concreta (não abstrata) herda de uma classe abstrata e não implementa todos os métodos abstratos, a classe derivada deve ser declarada abstract. Além disso, métodos abstratos não podem ser marcados como static. Insistir nisso pode gerar a seguinte mensagem de erro de compilação: Pessoa.java:2: illegal combination of modifiers: abstract and static public static abstract String getNome(); ^ 2) Embora uma classe abstrata não possa ser instanciada usando o operador new, ela pode conter construtores. Tais construtores serão invocados nos construtores das classes derivadas. 3) Uma subclasse pode ser abstrata até mesmo se sua superclasse for concreta. E isso é fácil de notar, uma vez que todas as classes Java herdam de Object, que é concreta. 4) Uma classe derivada pode sobrescrever um método de sua superclasse e declará-lo abstract. Isso faz sentido quando a classe derivada for abstract e quiser tornar o método herdado inválido. 5) Embora uma classe abstrata não possa ser instanciada usando o operador new, ela pode ser usada como um tipo de dados. Esta técnica é útil quando parte do time de desenvolvedores precisa adiantar códigos que dependem de classes que ainda não foram implementadas (e, portanto, herdarão das classes abstratas usadas como tipos de dados) por outra parte do mesmo time. |
Delphi ::: Dicas & Truques ::: Strings e Caracteres |
Como verificar se uma substring está contida no final de uma string usando a função AnsiEndsStr() do DelphiQuantidade de visualizações: 11121 vezes |
Em algumas situações precisamos verificar se uma substring está contida no final de uma string, ou seja, se a string termina com um determinado sufixo. Em Delphi isso pode ser feito com o auxílio da função AnsiEndsStr(). Esta função requer a substring a ser pesquisada e a string alvo da pesquisa. O retorno será true se a substring estiver contida no final da string. Do contrário o retorno será false. Veja o exemplo:procedure TForm1.Button1Click(Sender: TObject); var frase: string; begin frase := 'Gosto muito de Delphi e Java'; // vamos verificar se a string termina com "Java" if AnsiEndsStr('Java', frase) then ShowMessage('A frase termina com a substring indicada') else ShowMessage('A frase NÃO termina com a substring indicada') end; Não se esqueça de adicionar a unit StrUtils no uses do seu formulário. Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009. |
C# ::: Dicas & Truques ::: Data e Hora |
Como usar a classe Calendar em suas aplicações C#Quantidade de visualizações: 11411 vezes |
A classe Calendar da plataforma .NET está presente no namespace System.Globalization. Esta é uma classe abstrata (não pode ser instanciada e serve somente como classe base para futuras implementações) que implementa a interface ICloneable. Veja sua posição na hierarquia de classes da plataforma .NET:System.Object System.Globalization.Calendar Um calendário divide o tempo em unidades, tais como semanas, meses e anos. O número, comprimento e início destas divisões variam de acordo com cada calendário. Qualquer momento no tempo pode ser representado como um conjunto de valores numéricos usando um calendário em particular. Por exemplo, um equinócio vernal ocorreu em (1999, 3, 20, 8, 46, 0, 0.0) no calendário Gregoriano (Gregorian calendar), ou seja, 20 de março de 1999 C.E às 8:46:00:0.0. Uma implementação de Calendar pode mapear cada data na faixa de um calendário específico para um conjunto similiar de valores numéricos, e DateTime pode mapear tais conjuntos de valores numéricos para uma representação textual usando informações de Calendar e DateTimeFormatInfo. A representação textual pode ser dependente de cultura (culture-sensitive) (por exemplo, "8:46 AM March 20th 1999 AD" para a cultura en-US) ou independente de cultura (culture-insensitive) (por exemplo, "1999-03-20T08:46:00" no formato ISO 8601). Uma implementação de Calendar pode definir uma ou mais eras. A classe Calendar identifica tais eras como uma enumeração de inteiros na qual a era atual (CurrentEra) tem o valor 0. Para compensar a diferença entre o ano do calendário e a tempo real que a terra se movimenta ao redor do sol ou o tempo real que a lua se movimenta ao redor da terra, um ano bissexto tem um número diferente de dias que um ano padrão de um calendário. Cada implementação de Calendar define anos bissextos de forma diferenciada. Para fins de consistência, a primeira unidade de cada intervalo (por exemplo, o primeiro mês) recebe o valor 1. O trecho de código abaixo mostra como obter o calendário padrão não dependente de cultura e então exibir o valor numérico referente ao dia do mês: static void Main(string[] args){ // using System.Globalization; // obtém uma instância da implementação padrão de // Calendar não dependente da cultura local Calendar c = CultureInfo.InvariantCulture.Calendar; // obtém a data e hora atual DateTime agora = DateTime.Now; // obtém o dia do ano int dia = c.GetDayOfMonth(agora); Console.WriteLine("O dia do mês é: {0}", dia); // pausa o programa Console.ReadKey(); } O namespace System.Globalization inclui as seguintes implementações de Calendar: GregorianCalendar, HebrewCalendar, HijriCalendar, JapaneseCalendar, JulianCalendar, KoreanCalendar, TaiwanCalendar e ThaiBuddhistCalendar. |
Delphi ::: Dicas & Truques ::: Data e Hora |
Como adicionar ou subtrair meses de uma data em Delphi usando a função IncMonth()Quantidade de visualizações: 20848 vezes |
Em algumas situações precisamos adicionar ou subtrair meses de uma determinada data. Em Delphi isso pode ser feito com o auxílio da função IncMonth() da unit DateUtils. Este função aceita um TDateTime e a quantidade de meses que queremos acrescentar ao TDateTime fornecido como argumento. O retorno será um novo TDateTime com a quantidade de meses acrescida. Veja um trecho de código no qual adicionamos 2 meses à data atual: procedure TForm1.Button1Click(Sender: TObject); var hoje: TDateTime; begin // não esqueça de adicionar DateUtils ao seus uses // vamos obter a data de hoje hoje := Now; // vamos exibir a data de hoje ShowMessage('Hoje é: ' + DateToStr(hoje)); // vamos adicionar 2 meses à data de hoje hoje := IncMonth(hoje, 2); // vamos exibir o resultado ShowMessage('Daqui a 2 meses será: ' + DateToStr(hoje)); end; É possível também usar a função IncMonth() para substrair meses de uma data. Para isso só precisamos fornecer uma quantidade negativa de meses. Veja: procedure TForm1.Button1Click(Sender: TObject); var hoje: TDateTime; begin // não esqueça de adicionar DateUtils ao seus uses // vamos obter a data de hoje hoje := Now; // vamos exibir a data de hoje ShowMessage('Hoje é: ' + DateToStr(hoje)); // vamos subtrair 3 meses da data de hoje hoje := IncMonth(hoje, -3); // vamos exibir o resultado ShowMessage('Há 3 meses era: ' + DateToStr(hoje)); end; O valor padrão para o segundo argumento de IncMonth() é 1. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Java ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como converter radianos em graus na linguagem JavaQuantidade de visualizações: 2824 vezes |
Todas os métodos e funções trigonométricas em Java recebem seus argumentos em radianos, em vez de graus. Um exemplo disso é a função sin() da classe Math. Esta função recebe o ângulo em radianos e retorna o seu seno. No entanto, há momentos nos quais precisamos retornar alguns valores como graus. Para isso é importante sabermos fazer a conversão de radianos para graus. Veja a fórmula abaixo: \[Graus = Radianos \times \frac{180}{\pi}\] Agora veja como esta fórmula pode ser escrita em código Java: package arquivodecodigos; public class Estudos{ public static void main(String[] args){ double radianos = 1.5; double graus = radianos * (180 / Math.PI); System.out.println(radianos + " radianos convertidos para " + "graus é " + graus); System.exit(0); } } Ao executarmos este código Java nós teremos o seguinte resultado: 1.5 radianos convertidos para graus é 85.94366926962348 Para fins de memorização, 1 radiano equivale a 57,2957795 graus. |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
JavaScript - Como exibir apenas dois dígitos após o ponto decimal em JavaScript usando a função toFixed() do objeto Number |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |