Cálculo de Energia de um Corpo

Publicado por Felipe Leão Mansur Pinheiro 07/07/2009

[ Hits: 9.165 ]

Download CalculaEnergiaCorpo.cpp




Este é um algoritmo bem simples.Consiste em calcular os três tipos mais conhecidos de
energia:

1-Energia Gravitacional
2-Energia Cinética
3-Energia Elástica

obs. A Energia Elétrica ficou de fora, mas logo vou incluí-la.

O usuário vai fornecendo os vários dados de entrada referente a cada tipo de energia, depois
entra em um menu para escolher qual energia calcular.

The Unforgiven

  



Esconder código-fonte

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<conio.h>
float CalculaEnergiaCinetica(float m,float vi,float vf)
{
      float Ec;
      Ec=(0.5*m)*(pow(vf,2))-(0.5*m)*(pow(vi,2));
      return Ec;
      }
      float CalculaEnergiaElastica(float k,float x1,float x2)
      {
            float Ee=(0.5*k)*(pow(x2,2))-(0.5*k)*(pow(x1,2));
            return Ee;
            }
            float CalculaEnergiaGravitacional(float m,float g,float h1,float h2)
            {
                  float Eg;
                  Eg=m*g*h2-m*g*h1;
                  return Eg;
                  }
                  int main()
                  {
                      system("color 9F");
                      float m,vi,vf,k,x1,x2,g=9.81,h1,h2;
                      int choosenOne;
                      printf("!===================================!\n");
                      printf("!      Nome:Felipe Leao             !\n");
                      printf("!      Curso:Ciencia da Computacao  !\n"); 
                      printf("!      Periodo:III                  !\n");
                      printf("!      Disciplina:Fisica I          !\n");
                      printf("!      Instituicao: UNIPAC          !\n");
                      printf("!===================================!\n");
                      printf("\n\n"); 
                      printf("Programa que Calcula tres tipos de Energia a\nI)Energia Gravitacional\nII)Energia Cinética.\nIII)Energia Elastica.\nEm Linguagem C(elementar).\n");
                      printf("\n\n");
                      printf("Fornaca os Dados de Entrada(Input).\n");
                      printf("Forneca a velocidade inicial(m/s)\n");
                      scanf("%f",&vi);
                      printf("Forneca a velocidade final(m/s)\n");
                      scanf("%f",&vf);
                      printf("Forneca um valor para k:(constante elastica)(N*m).\n");
                      scanf("%f",&k);
                      printf("Forneca um valor para x final\n");
                      scanf("%f",&x1);
                      printf("Forneca um valor para x inicial\n");
                      scanf("%f",&x2);
                      printf("Forneca a altura h1(m).\n");
                      scanf("%f",&h1);
                      printf("Forneca a altura h2(m)\n");
                      scanf("%f",&h2);
                      printf("e, finalmente, forneca a massa do sistema(g).\n");
                      scanf("%f",&m);
                      printf("\n\n");
                      printf("!=============INPUT=================!\n");
                      printf("!x2=%f m/s                     !\n",x2);
                      printf("!x1=%f m/s                     !\n",x1); 
                      printf("!vi=%f m/s                     !\n",vi);
                      printf("!vf=%f m/s                     !\n",vf);
                      printf("!k=%f  N*m                     !\n",k);
                      printf("!h1=%f m                       !\n",h1);
                      printf("!h2=%f m                      !\n",h2);
                      printf("!m=%f g                       !\n",m);
                      printf("!g=%f m/s^2 (valor da gravidade)!\n",g);
                      printf("!===================================!\n");
                      printf("\n\n"); 
                      printf("Escolha uma das opcoes para Calcular Energia.\n");
                      printf("\n\n");
                      start:
                      printf("(1)-Calcular Energia Cinetica.\n");
                      printf("(2)-Calcular Energia Gravitacional.\n");
                      printf("(3)-Calcular Energia Elastica.\n");
                      printf("(-1)- Sair.\n");
                      scanf("%d",&choosenOne);
                      switch(choosenOne)
                      {
                                        case 1:
                                             printf("--Energia Cinetica em Joule--\n");
                                             printf("Ec=%f J\n",CalculaEnergiaCinetica(m,vi,vf));
                                             printf("\n\n");
                                             goto start;
                                             case 2:
                                                  printf("--Energia Gravitacional em Joule--\n");
                                                  printf("Eg=%f J\n",CalculaEnergiaGravitacional(m,g,h1,h2));
                                                  printf("\n\n");
                                                  goto start;
                                                  case 3:
                                                       printf("--Energia Elastica em Joule--\n");
                                                       printf("Ee=%f J\n",CalculaEnergiaElastica(k,x1,x2));
                                                       printf("\n\n");
                                                       goto start;
                                                       case -1:
                                                            printf("Saindo...\n");
                                                            system("pause");
                                                            exit(1);
                                                            default:
                                                                    printf("Forneca um valor validado.\n");
                                                                    printf("\n\n");
                                                                    goto start;
                                                                    }
                                                                    getche();
                                                                    return 0;
                                                                    }
                                                       
                      

Scripts recomendados

Checar letras A em string e proibir numeros

Múltiplos de 2 ou 3

Decremento e incremento

[C++] remover todos os multiplos de 3

O poderoso 'return'


  

Comentários
[1] Comentário enviado por pothix em 08/07/2009 - 10:51h

Æ!!

Muito legal a idéia novamente mas o código está muito ruim...

My points:

1. Não sei qual editor você usou para fazer esse código, mas a indentação está muito ruim
2. <conio.h> só funciona no windows...Assim como o Getche...
3. system("pause") é muito tosco e só funciona no windows, tendo em vista que o comando system para para o sistema operacional.
4. Você poderia ter definido uma constante com #define ao invés de criar a variável g=9.81 assim, já que esse valor não vai mudar.
5. Nunca use goto...
6. Você salvou como .cpp de propósito? Por que vc está usando C puro...

Novamente entenda como uma crítica construtiva e tente melhorar o seu código, por que a idéia é interessante.

Há braços

[2] Comentário enviado por FelipeLeaoMansur em 08/07/2009 - 19:17h

Bom,
o DevC++ suporta C/C++, afinal é uma linguagem encapsulada.Nada impede de programar em C.
Ou vc prefere o TurboC?
Esta sessão é C/C++, só lembrando disso.
Mas obrigado pela sugestão do #define eu deveria prestar atenção a isso.

Obrigado!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts