Você está aqui: C ::: C para Engenharia ::: Eletricidade, Circuitos Elétricos e Eletrônicos |
Como calcular corrente, voltagem, resistência e potência em um círcuito série de corrente contínua usando CQuantidade de visualizações: 3256 vezes |
Nesta dica mostrarei como é possível usar operações básicas da linguagem C para calcular a corrente, voltagem, resistência e potência em um circuito série de corrente contínua. É conhecido como um circuito série um circuito composto exclusivamente por componentes elétricos ou eletrônicos conectados em série (de conexão em série, que é o mesmo que associação em série ou ligação em série). A associação em série é uma das formas básicas de se conectarem componentes elétricos ou eletrônicos. A nomeação descreve o método como os componentes são conectados. Vanos começar analisando a seguinte imagem: ![]() Esta imagem foi extraída do Simulador do PHET, no endereço https://phet.colorado.edu. Note que temos uma fonte de alimentação 90V, e três resistores (com resistências de 10Ω, 20Ω e 30Ω). Vamos começar relembrando os aspectos importantes dos circuitos em série: 1) A corrente elétrica I (medida em ampères (A), ou coulombs por segundo) é comum a todos os elementos do circuito. 2) A tensão elétrica V, (medida em volts (V), ou joules por coulomb) é dividida entre as cargas, ou seja, a soma das tensões nas cargas deve ser igual à tensão da fonte de alimentação. 3) A resistência elétrica R (medida em ohms (Ω)) total do circuito é igual à soma de todas as resistências das cargas. 4) A potência total P (medida em watts (W)) é igual à soma das potências das cargas que compõem o circuito. Vamos escrever um pouco de código então? Veja nosso primeiro código C que calcula a corrente total, a tensão total, a resistência total e a potência total do circuito em série mostrado na imagem: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <locale.h> int main(int argc, char *argv[]) { setlocale(LC_ALL,""); // para acentos do português // Tensão total do circuito em série double e_total = 90.0; // Resitência total double resist1 = 10.0; double resist2 = 20.0; double resist3 = 30.0; double r_total = resist1 + resist2 + resist3; // Corrente elétrica total double i_total = e_total / r_total; // Potência elétrica total double p_total = e_total * i_total; // mostra os valores printf("Tensão total: %.2f\n", e_total); printf("Resistência total: %.2f\n", r_total); printf("Corrente total: %.2f\n", i_total); printf("Potência total: %.2f\n", p_total); printf("\n\n"); system("pause"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Tensão total: 90,00 Resistência total: 60,00 Corrente total: 1,50 Potência total: 135,00 Pronto! Agora que já sabemos o valor da corrente elétrica, e sabemos que a corrente é comum a todos os elementos do circuito em série, podemos calcular a tensão individual dos componentes. Assim, veja um trecho de código C que calcula a tensão elétrica nos três resistores (lembre-se: tensão é o produto da corrente pela resistência): ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <locale.h> int main(int argc, char *argv[]) { setlocale(LC_ALL,""); // para acentos do português // Tensão total do circuito em série double e_total = 90.0; // Resitência total double resist1 = 10.0; double resist2 = 20.0; double resist3 = 30.0; double r_total = resist1 + resist2 + resist3; // Corrente elétrica total double i_total = e_total / r_total; // Potência elétrica total double p_total = e_total * i_total; // mostra os valores printf("Tensão total: %.2f\n", e_total); printf("Resistência total: %.2f\n", r_total); printf("Corrente total: %.2f\n", i_total); printf("Potência total: %.2f\n", p_total); // mostra as tensões nos resistores printf("\nTensão nos resistores individuais:\n"); double e1 = resist1 * i_total; double e2 = resist2 * i_total; double e3 = resist3 * i_total; printf("Tensão no Resistor 1: %.2fV\n", e1); printf("Tensão no Resistor 2: %.2fV\n", e2); printf("Tensão no Resistor 3: %.2fV\n", e3); printf("\n\n"); system("pause"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Tensão total: 90,00 Resistência total: 60,00 Corrente total: 1,50 Potência total: 135,00 Tensão nos resistores individuais: Tensão no Resistor 1: 15,00V Tensão no Resistor 2: 30,00V Tensão no Resistor 3: 45,00V Para finalizar, vamos calcular a potência dissipada em cada um dos resistores de forma individual. Observe que a potência é o produto da tensão pela corrente (P = E.I). Eis o código: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <locale.h> int main(int argc, char *argv[]) { setlocale(LC_ALL,""); // para acentos do português // Tensão total do circuito em série double e_total = 90.0; // Resitência total double resist1 = 10.0; double resist2 = 20.0; double resist3 = 30.0; double r_total = resist1 + resist2 + resist3; // Corrente elétrica total double i_total = e_total / r_total; // Potência elétrica total double p_total = e_total * i_total; // mostra os valores printf("Tensão total: %.2f\n", e_total); printf("Resistência total: %.2f\n", r_total); printf("Corrente total: %.2f\n", i_total); printf("Potência total: %.2f\n", p_total); // mostra as tensões nos resistores printf("\nTensão nos resistores individuais:\n"); double e1 = resist1 * i_total; double e2 = resist2 * i_total; double e3 = resist3 * i_total; printf("Tensão no Resistor 1: %.2fV\n", e1); printf("Tensão no Resistor 2: %.2fV\n", e2); printf("Tensão no Resistor 3: %.2fV\n", e3); // mostra as potências dissapadas nos resistores printf("\nPotência dissipada nos resistores individuais:\n"); double p1 = e1 * i_total; // Potência = Tensão x Corrente double p2 = e2 * i_total; double p3 = e3 * i_total; printf("Potência no Resistor 1: %.2fW\n", p1); printf("Potência no Resistor 2: %.2fW\n", p2); printf("Potência no Resistor 3: %.2fW\n", p3); printf("\n\n"); system("pause"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Tensão total: 90,00 Resistência total: 60,00 Corrente total: 1,50 Potência total: 135,00 Tensão nos resistores individuais: Tensão no Resistor 1: 15,00V Tensão no Resistor 2: 30,00V Tensão no Resistor 3: 45,00V Potência dissipada nos resistores individuais: Potência no Resistor 1: 22,50W Potência no Resistor 2: 45,00W Potência no Resistor 3: 67,50W |
![]() |
C ::: Dicas & Truques ::: Arquivos e Diretórios |
Como testar se um arquivo existe usando a linguagem CQuantidade de visualizações: 14197 vezes |
Muitas vezes precisamos saber se um determinado arquivo existe antes de efetuarmos alguma operação. O trecho de código abaixo mostra como você pode implementar uma função file_exists() em C que pode ser usada em seus programas. O segredo aqui é tentar abrir o arquivo passado como argumento para a função. Se o arquivo for aberto com sucesso, sabemos que ele existe e a função retorna o valor 1 (true), do contrário retorna 0 (false):---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> /* Implementação de uma função file_exists() em C. Se o arquivo existir o valor 1 (true) será retornado. Caso contrário a função retornará 0 (false). */ int file_exists(const char *filename) { FILE *arquivo; if(arquivo = fopen(filename, "r")) { fclose(arquivo); return 1; } return 0; } int main(int argc, char *argv[]) { // testa se o arquivo existe if(file_exists("c:\\testes.txt")){ printf("O arquivo existe no local especificado.\n"); } else printf("O arquivo NAO existe no local especificado.\n"); printf("\n\n"); system("PAUSE"); return 0; } |
C ::: Desafios e Lista de Exercícios Resolvidos ::: C Básico |
Exercícios Resolvidos de C - Como testar se um número é potência de dois usando CQuantidade de visualizações: 594 vezes |
Pergunta/Tarefa: Escreva um programa C contendo um método que recebe um número inteiro e retorna um valor boolean indicando se o valor informado é potência de dois. Sua saída deverá ser parecida com: Informe um valor inteiro: 8 O valor 8 é potência de dois Informe um valor inteiro: 34 O valor 34 não é potência de dois Informe um valor inteiro: 64 O valor 64 é potência de dois 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 <stdio.h> #include <stdlib.h> #include <locale.h> // função que recebe um número inteiro e informe se ele é // potência de dois int is_potencia_dois(int n){ // usamos o operador AND de bits para verificar se n AND n-1 // é igual a 0 return (n > 0) && (n & (n - 1)) == 0; } int main(int argc, char *argv[]){ // variáveis usadas para int valor; setlocale(LC_ALL,""); // para acentos do português // vamos pedir para o usuário informar um valor inteiro printf("Informe um valor inteiro: "); scanf("%d", &valor); // vamos testar se o número informado é potência de dois if(is_potencia_dois(valor)){ printf("O valor %d é potência de dois", valor); } else{ printf("O valor %d não é potência de dois", valor); } printf("\n\n"); system("PAUSE"); return 0; } |
C ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar a instrução break da linguagem C para interromper a execução de um laçoQuantidade de visualizações: 15613 vezes |
Laços for, while, do...while e switch podem ter suas iterações (repetições) interrompidas com o uso da instrução break. Quando isso acontece, o fluxo de execução salta para a primeira instrução após o laço. Veja um exemplo:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int i; for(i = 0; i <= 10; i++){ printf("%d ", i); if(i == 6) break; // sai do laço } printf("\n\n"); system("PAUSE"); return 0; } Este código exibirá os valores de 0 à 6. Veja que execução do laço é interrompida exatamente no ponto em que a instrução break é encontrada. Se houver mais instruções dentro do laço mas logo após o break, estas instruções não serão executadas. |
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
Códigos Fonte |
![]() 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 |
![]() 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 |