Você está aqui: C++ ::: Desafios e Lista de Exercícios Resolvidos ::: C++ Básico |
Algoritmo C++ para ler um número inteiro e exibir o dobro e o triplo do número informado - Desafio de Programação Resolvido em C++Quantidade de visualizações: 196 vezes |
Pergunta/Tarefa: Faça um algoritmo C++ que pede para o usuário digitar um número inteiro e obtenha como resultado o dobro e o triplo do número digitado. Sua saída deve ser parecida com: Informe um número inteiro: 7 Você informou o número: 7 O dobro do número é: 14 O triplo do número é: 21 Veja a resolução comentada deste exercício usando C++: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <iostream> using namespace std; // função principal do programa int main(int argc, char *argv[]){ // variáveis usadas na resolução do problema int numero, dobro, triplo; // vamos pedir para o usuário informar o número inteiro cout << "Informe um número inteiro: "; cin >> numero; cout << "Você informou o número: " << numero << endl; // vamos calcular o dobro dobro = numero * 2; cout << "O dobro do número é: " << dobro << endl; // vamos calcular o triplo triplo = numero * 3; cout << "O triplo do número é: " << triplo << endl; cout << "\n\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } |
Link para compartilhar na Internet ou com seus amigos: |
Python ::: Python para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular a transposta de uma matriz em Python - Python para Geometria Analítica e Álgebra LinearQuantidade de visualizações: 5661 vezes |
A matriz transposta de uma matriz A é a matriz AT. Tal matriz é obtida quando copiamos os elementos da matriz A para uma outra matriz (ou para ela mesma) e trocamos de posição as linhas e colunas. Dessa forma, a primeira linha da matriz A se transforma na primeira coluna da matriz transposta, a segunda linha da matriz A se transforma na segunda coluna da matriz transposta e assim por diante. Em termos de notação, podemos dizer, de forma algébrica, que: ATji = Aij Onde i representa as linhas e j representa as colunas, tanto na matriz original quanto na matriz transposta. É importante estar atento à quantidade de linhas e colunas na matriz original e na matriz transposta equivalente. Assim, se a matriz original for 3x2, a matriz transposta será 2x3. Antes de vermos o código Python, dê uma olhada na seguinte matriz de duas linhas e três colunas: \[A = \left[\begin{matrix} 3 & 5 & 7 \\ 1 & 2 & 9 \end{matrix}\right] \] Sua matriz transposta correspondente é: \[A^T = \left[\begin{matrix} 3 & 1 \\ 5 & 2 \\ 7 & 9 \end{matrix}\right] \] E agora veja o código Python que declara uma matriz 2x3 e gera a matriz transposta 3x2: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # importamos a bibliteca NumPy import numpy as np def main(): # vamos declarar e construir uma matrix # 2x3 (duas linhas e três colunas matriz = np.array([(3, 5, 7), (1, 2, 9)]) # vamos exibir os valores da matriz print("Elementos da matriz:") for i in range(np.shape(matriz)[0]): for j in range(np.shape(matriz)[1]): print("%7.2f" % matriz[i][j], end="") print() # como temos uma matriz 2x3, a transposta deverá ser # 3x2, ou seja, três linhas e duas colunas linhas = np.shape(matriz)[0] # linhas da matriz original colunas = np.shape(matriz)[1] # colunas da matriz original transposta = np.empty((colunas, linhas)) # e agora vamos preencher a matriz transposta for i in range(np.shape(matriz)[0]): for j in range(np.shape(matriz)[1]): transposta[j][i] = matriz[i][j] # vamos exibir os valores da matriz transposta print("\nElementos da matriz transposta:") for i in range(np.shape(transposta)[0]): for j in range(np.shape(transposta)[1]): print("%7.2f" % transposta[i][j], end="") print() if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Elementos da matriz: 3 5 7 1 2 9 Elementos da matriz transposta: 3 1 5 2 7 9 É possível também obter a matriz transposta de um outra matriz usando o método transpose() da biblioteca NumPy da linguagem Python. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # importamos a bibliteca NumPy import numpy as np def main(): # vamos declarar e construir uma matrix # 2x3 (duas linhas e três colunas matriz = np.array([(3, 5, 7), (1, 2, 9)]) # vamos exibir os valores da matriz print("Elementos da matriz:") for i in range(np.shape(matriz)[0]): for j in range(np.shape(matriz)[1]): print("%7.2f" % matriz[i][j], end="") print() # vamos transpor a matriz usando o método transpose() transposta = matriz.transpose() # vamos exibir os valores da matriz transposta print("\nElementos da matriz transposta:") for i in range(np.shape(transposta)[0]): for j in range(np.shape(transposta)[1]): print("%7.2f" % transposta[i][j], end="") print() if __name__== "__main__": main() Ao executar este novo código Python veremos que o resultado é o mesmo. |
Lisp ::: Desafios e Lista de Exercícios Resolvidos ::: Lisp Básico |
Exercícios Resolvidos de Lisp - Como calcular a soma, o produto, a diferença e o quociente de dois números inteiros informados pelo usuárioQuantidade de visualizações: 690 vezes |
Pergunta/Tarefa: Escreva um programa Common Lisp que pede para o usuário informar dois número inteiros. Em seguida mostre a soma, o produto, a diferença e o quociente dois dois números informados. Sua saída deverá ser parecida com: Informe o primeiro número: 8 Informe o segundo número: 3 A soma dos números é: 11 O produto dos números é: 24 A diferença dos números é: 5 O quociente dos números é: 2.66667 Veja a resolução comentada deste exercício usando Common Lisp: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- ; Este é o programa principal (defun Exercicio() ; Variáveis usadas na resolução do problema (let ((n1)(n2)(soma)(produto) (diferenca)(quociente)) ; Vamos ler os dois números (princ "Informe o primeiro número: ") ; talvez o seu compilador não precise disso (force-output) ; atribui o valor lido à variável n1 (setq n1 (read)) (princ "Informe o segundo número: ") ; talvez o seu compilador não precise disso (force-output) ; atribui o valor lido à variável n2 (setq n2 (read)) ; vamos somar os dois números (setq soma (+ n1 n2)) ; vamos calcular o produto (setq produto (* n1 n2)) ; vamos calcular a diferença (setq diferenca (- n1 n2)) ; vamos calcular o quociente (setq quociente (/ n1 (* n2 1.0))) ; E mostramos o resultado (format t "A soma dos números é ~D" soma) (format t "~%O produto dos números é ~D" produto) (format t "~%A diferença dos números é ~D" diferenca) (format t "~%O quociente dos números é ~F" quociente) ) ) ; Auto-executa a função Exercicio() (Exercicio) |
Java ::: Dicas & Truques ::: Fuso Horários |
Como retornar uma lista de todos os IDs de fusos horários suportados pela linguagem Java usando o método getAvailableIDs() da classe TimeZoneQuantidade de visualizações: 8731 vezes |
A linguagem Java, por meio da classe TimeZone, nos permite trabalhar com uma enorme variedade de fusos horários. No entanto, antes de assumir que um determinado fuso horário é suportado, é interessante verificar se tal fuso horário está na lista de IDs suportados. Isso pode ser feito com uma chamada ao método estático getAvailableIDs(). Este método retorna o ID de todos os fusos horários suportados. Veja um exemplo de como usá-lo:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- import java.util.*; public class Estudos{ public static void main(String args[]){ // obtém todos os IDs de fusos horários // disponíveis na classe TimeZone String fusos[] = TimeZone.getAvailableIDs(); for(int i = 0; i < fusos.length; i++){ System.out.println(fusos[i]); } } } Ao executar este código você terá um resultado semelhante à (optamos por listar apenas os 100 primeiros resultados): Etc/GMT+12 Etc/GMT+11 MIT Pacific/Apia Pacific/Midway Pacific/Niue Pacific/Pago_Pago Pacific/Samoa US/Samoa America/Adak America/Atka Etc/GMT+10 HST Pacific/Fakaofo Pacific/Honolulu Pacific/Johnston Pacific/Rarotonga Pacific/Tahiti SystemV/HST10 US/Aleutian US/Hawaii Pacific/Marquesas AST America/Anchorage America/Juneau America/Nome America/Yakutat Etc/GMT+9 Pacific/Gambier SystemV/YST9 SystemV/YST9YDT US/Alaska America/Dawson America/Ensenada America/Los_Angeles America/Tijuana America/Vancouver America/Whitehorse Canada/Pacific Canada/Yukon Etc/GMT+8 Mexico/BajaNorte PST PST8PDT Pacific/Pitcairn SystemV/PST8 SystemV/PST8PDT US/Pacific US/Pacific-New America/Boise America/Cambridge_Bay America/Chihuahua America/Dawson_Creek America/Denver America/Edmonton America/Hermosillo America/Inuvik America/Mazatlan America/Phoenix America/Shiprock America/Yellowknife Canada/Mountain Etc/GMT+7 MST MST7MDT Mexico/BajaSur Navajo PNT SystemV/MST7 SystemV/MST7MDT US/Arizona US/Mountain America/Belize America/Cancun America/Chicago America/Costa_Rica America/El_Salvador America/Guatemala America/Indiana/Knox America/Indiana/Petersburg America/Indiana/Vincennes America/Knox_IN America/Managua America/Menominee America/Merida America/Mexico_City America/Monterrey America/North_Dakota/Center America/North_Dakota/New_Salem America/Rainy_River America/Rankin_Inlet America/Regina America/Swift_Current America/Tegucigalpa America/Winnipeg CST CST6CDT Canada/Central Canada/East-Saskatchewan Canada/Saskatchewan Chile/EasterIsland Um bom uso deste método é quando estamos desenvolvendo uma aplicação que mostra o horário ao redor do mundo. Podemos ter uma lista de fusos horários e, mediante a seleção do usuário, fornecer o valor selecionado para o método setTimeZone() da classe Calendar, por exemplo. |
PHP ::: Dicas & Truques ::: Programação Orientada a Objetos |
Programação Orientada a Objetos em PHP - Como usar o modificador de acesso public em suas classes PHPQuantidade de visualizações: 7268 vezes |
Quando estamos desenvolvendo a lógica de nossas classes PHP, é sempre uma boa idéia definirmos quais propriedades e métodos poderão ser acessados pelas demais classes e partes do código que formam o sistema. Este controle de acesso é feito por modificadores de acesso. Nesta dica veremos como usar o modificador public. O modificador public serve para indicar que as propriedades ou métodos (funções) de uma classe podem ser acessados sem restrições por código fora da classe. Veja um exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <? class Pessoa{ public $nome; } $pessoa = new Pessoa; $pessoa->nome = "Osmar J. Silva"; echo $pessoa->nome; ?> Aqui podemos acessar a propriedade $nome tanto para leitura como escrita sem nenhuma restrição. Tenha em mente que a ausência de um modificador de acesso antes de uma propriedade ou método automaticamente faz com que este acesso seja public. Veja agora um trecho de código no qual definimos um método public (público) em uma classe e o acessamos a partir de um código externo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <? class Matematica{ public function somar($a, $b){ return $a + $b; } } $mat = new Matematica; echo $mat->somar(5, 7); ?> Lembre-se de que as sub-classes de uma classe que possui propriedades e métodos public herdam toda esta funcionalidade. |
C# ::: Windows Forms ::: DataGridView |
Como ligar um DataGridView do C# Windows Forms à tabela de um banco de dados e efetuar inserção, alteração e remoção de registrosQuantidade de visualizações: 32489 vezes |
Uma das principais dúvidas que recebo em meu site é em relação aos passos necessários para associar um DataGridView com a tabela de um banco de dados e listar os dados. Em tempo de design este processo é relativamente fácil, visto que temos wizards que nos acompanham e fazem o trabalho mais pesado nos bastidores. No entanto, o cenário é completamente diferente quando temos que realizar tal tarefa via código. Espero que esta dica o deixe mais preparado para enfrentar tais situações. Para esta dica eu fiz uma conexão Visual C# 2005 + MySQL 5.0 usando ODBC (caso tenha dúvidas sobre isso, veja minha seção sobre C# + MySQL). Criei uma tabela MySQL chamada clientes contendo id, nome, idade, cidade e estado do cliente. Criei uma classe de conexão, inseri um DataGridView no formulário e coloquei as declarações abaixo na classe do formulário Form1.cs (fora dos métodos, para que os dados sejam globais na classe): ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // membros de instância de acesso global na classe // Dica: Se estiver usando SQL Server, troque "Odbc" por // "Sql" (Ex: SQLConnection, SqlCommand, SqlDataAdapter) // conexão com o banco de dados OdbcConnection conn = null; OdbcCommand cmd = null; OdbcDataAdapter adapter = null; DataSet ds = null; Em seguida colocamos o código abaixo no evento Click de um botão: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- private void button4_Click(object sender, EventArgs e){ // Dica: Se estiver usando SQL Server, troque "Odbc" // por "Sql" (Ex: SqlCommand, SqlDataAdapter, etc) // obtém a conexão com o banco de dados conn = ConexaoODBC.obterConexao(); if(conn != null){ // obtém todos os clientes cadastrados cmd = new OdbcCommand("SELECT * FROM clientes", conn); adapter = new OdbcDataAdapter(cmd); ds = new DataSet(); adapter.Fill(ds, "clientes_table"); // exibe os dados da tabela no DataGridView dataGridView1.DataSource = ds; dataGridView1.DataMember = "clientes_table"; // fecha a conexão ConexaoODBC.fecharConexao(); } } Aqui os dados já são listados no DataGridView. Porém, as alterações efetuadas no controle ainda não são repassadas para o banco de dados. Veja o código adicional no evento Click de outro botão: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- private void button5_Click(object sender, EventArgs e){ // vamos salvar os dados do DataGridView para a tabela do // banco de dados // Dica: Se estiver usando SQL Server, troque "Odbc" por // "Sql" (Ex: SqlCommandBuilder) // obtém a conexão com o banco de dados conn = ConexaoODBC.obterConexao(); if(conn != null){ OdbcCommandBuilder cmb = new OdbcCommandBuilder(adapter); cmb.GetUpdateCommand(); adapter.Update(ds.Tables["clientes_table"]); // fecha a conexão ConexaoODBC.fecharConexao(); } } Pronto! Execute a aplicação, clique no primeiro botão para carregar os dados da tabela MySQL no DataGridView. Em seguida efetue algumas alterações, insira ou exclua linhas e clique no segundo botão. Feche a aplicação e abra-a novamente e se certifique de que os registros foram atualizados, inseridos ou removidos com sucesso. |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
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 |