-
Posts
12 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por AirFchy
-
-
Eu estou desenvolvendo um programa de termodinâmica, e criei um menu de divisão das equações. O meu problema é o seguinte:
Se o usuário quiser fazer uma conversão de escala termométrica, por exemplo, ele vai selecionar o menu 1, e no final do cálculo ele vai dizer "Digite 0 para sair do programa ou qualquer outro número para continuar". Só que se continuar, ele volta para a opção 1, que no caso é opção de equação de conversão de escalas. Eu quero que após o final do cálculo, se o usuário quiser continuar, que ele volte para o menu principal, e não para a mesma opção que ele resolveu calcular no início.
Vou colocar uma parte do programa aqui:
#include <stdio.h> #include <conio.h> #include <iostream> #include <math.h> using namespace std; int main () { float R, Q, qmin, massa, c, deltat, tinicial, tfinal, Ql, l, K, A, e, h, tau, pressao, deltav, vinicial, vfinal, deltau, uinicial, ufinal, deltah, hinicial, hfinal; int calculo, calculo_r, cont=0, i=0; printf("\n____________ Termodinamica ____________\n"); printf("\n (Sistema Internacional de Unidades)\n"); printf("\n\n------------ Menu ------------\n\n"); printf("1 - Transferencia de Escalas Termometricas\n\n"); printf("2 - Calor Sensivel\n\n"); printf("3 - Calor Latente\n\n"); printf("4 - Transferencia de Calor - Parede Plana (Lei de Fourier)\n\n"); printf("5 - Transferencia de Calor - Fluxo Fluido (Lei de Newton)\n\n"); printf("6 - Trabalho sob Pressao Constante\n\n"); printf("7 - Energia Interna\n\n"); printf("8 - Entalpia\n\n"); printf("9 - Transferencia de Calor por Resistencias Associadas:\n"); printf("\n\nDigite o numero da Equacao que deseja calcular: \n"); scanf("%d", &calculo); //Para scanf //{ //%s=pra string //%d ou %i = pra numeros inteiros [no printf] //%d=somente numeros inteiros no scanf //%i=numeros decimais, octais e hexadecimais no scanf //%f=pra float //} while(calculo==1) { int escala; float rankine, celsius, fht, kelvin; printf("Conversao de Escalas Termometricas\n\n\n"); printf("\n1. Rankine\n2. Celsius\n3. Fahrenheit\n4. Kelvin\n\n"); //°R=(°C+273,15)*1,8 //°R=KELVIN P/ RANKINE //°R=°F+459,67 //°C=K-273 //°C=(°F-32)/1,8 //°C=(°R-491,67)/1,8 //K=°C+273 //K=(((°F-32)/9)*5)+273 //K=RANKINE P/ KELVIN //°F=(1,8*C)+32 //°F=(((K-273)/5)*9)+32 //°F=RANKINE P/ FAHRENHEIT calculo=0; printf("Digite o numero da Escala que deseja converter: \n"); scanf("%d", &escala); while(escala==1) { printf("\n\nEscala Rankine\n\n"); printf("\n\n\nDigite o valor da Temperatura em R: \n"); scanf("%f", &rankine); celsius=(rankine-491,67)/1,8; fht= 1+1; kelvin=1+1; printf("\n\nO Valor da Temperatura em R, equivale a:\n%2.2f°C\n%2.2f°F\n%2.2fK", celsius, fht, kelvin); escala=0; } while(escala==2) { printf("\n\nEscala Celsius\n\n"); printf("\n\n\nDigite o valor da Temperatura em °C: \n"); scanf("%f", &celsius); rankine=1+1; fht=1+1; kelvin=1+1; printf("\n\nO Valor da Temperatura em °C, equivale a:\n%2.2f°C\n%2.2f°F\n%2.2fK", rankine, fht, kelvin); escala=0; } while(escala==3) { printf("\n\nEscala Fahrenheit\n\n"); printf("\n\n\nDigite o valor da Temperatura em °F: \n"); scanf("%f", &fht); celsius=1+1; rankine=1+1; kelvin=1+1; printf("\n\nO Valor da Temperatura em °F, equivale a:\n%2.2f°C\n%2.2f°F\n%2.2fK", celsius, rankine, kelvin); escala=0; } while(escala==4) { printf("\n\nEscala Kelvin\n\n"); printf("\n\n\nDigite o valor da Temperatura em K: \n"); scanf("%f", &kelvin); celsius=1+1; fht=1+1; rankine=1+1; printf("\n\nO Valor da Temperatura em R, equivale a:\n%2.2f°C\n%2.2f°F\n%2.2fK", celsius, fht, rankine); escala=0; } printf("\nDigite 0 para sair ou qualquer outro numero para continuar\n"); scanf("%d", &calculo); if(calculo==0) { calculo=0; } else { calculo=1; } } while(calculo==2) { printf("Calor Sensivel\n\n\n"); //Q=m*c*ΔT printf("\nDigite o valor da Massa (em gramas): "); scanf("%f", &massa); printf("\nDigite o valor do calor especifico da substancia (em cal/g°C): "); scanf("%f", &c); printf("\nDigite o valor da Temperatura Inicial (em °C ou K): "); scanf("%f", &tinicial); printf("\nDigite o valor da Temperatura Final (em °C ou K): "); scanf("%f", &tfinal); deltat=tfinal-tinicial; Q=massa*c*deltat; printf("\n\n\nO valor da Quantidade de Calor Sensivel e %4.4f cal", Q); printf("\nDigite 0 para sair ou qualquer outro numero para continuar\n"); scanf("%d", &calculo); if(calculo==0) { calculo=0; } else { calculo=2; } }
- 1
-
Funcionou!! Obrigado
- 1
-
Eu estou desenvolvendo um programa que resolve equações de Termodinâmica, ainda não está na fase do acabamento e eu estou tendo fazer uns testes, mas quando vou compilar ele sempre da o erro de que eu coloquei um "else" antes do "if", porém não é isso que acontece
Segue o arquivo fonte:
#include <stdio.h> #include <conio.h> #include <math.h> using namespace std; int main () { float Q, q, massa, c, deltat, tinicial, tfinal, Ql, l, K, A, e, h, tau, pressao, deltav, vinicial, vfinal, deltau, uinicial, ufinal, deltah, hinicial, hfinal; int calculo, calor_s_l, i=0; printf("\n____________ Programa de Termodinamica ____________\n"); printf("\n\n----- Menu -----\n\n"); printf("1 - Conversao de Escalas Termometricas \n1.1 - Calor Sensivel\n1.2- Calor Latente\n\n2-Transferencia de Calor - Parede Plana (Lei de Fourier)\n\n3-Transferencia de Calor - Fluxo Fluido (Lei de Newton)\n\n4-Trabalho sob pressao constante\n\n5-Energia Interna\n\n6-Entalpia\n\n7-Transferencia de calor por Resistencias Associadas:\n7.1 - Resistencia Termica Parede Plana;\n7.2 - Resistencia Termica Fluxo\n7.3 - Varias Resistencias em Serie\n7.4 - Varias Resistencia em Paralelo"); printf("\n\nDigite o numero da equacao que deseja calcular: "); scanf("%s", &calculo); while(calculo=1) { printf("voce deseja calcular o Calor Sensivel(1.1) ou Calor Latente?(1.2)"); scanf("%s", calor_s_l); if (calor_s_l=1.1) //Q=m.c.ΔT printf("Calor Sensivel\n\n\n"); printf("\nDigite o valor da Massa (em gramas): "); scanf("%f", &massa); printf("\nDigite o valor do calor especifico da substancia (em cal/g°C: "); scanf("%f", &c); printf("\nDigite o valor da Temperatura Inicial (em °C): "); scanf("%f", &tinicial); printf("\nDigite o valor da Temperatura Final (em °C): "); scanf("%f", &tfinal); deltat=tfinal-tinicial; Q=massa*c*deltat; printf("\n\n\nO valor da Quantidade de Calor Sensivel e %4.4f cal", Q); else //Ql=m.L printf("Calor Latente\n\n\n"); printf("\nDigite o valor da massa (em gramas): "); scanf("%f", &massa); printf("\nDigite o valor da Constante de proporcionalidade (em cal/g): "); scanf("%f", &l); Ql=massa*l; printf("\n\n\nO valor da Quantidade de Calor Latente e %4.4f cal", Ql); } while(calculo=2) { printf("Lei de Fourier - Transferencia de Calor [Parede Plana]\n\n\n"); //q=(K.A.ΔT)/e printf("\nDigite o valor do K (em [unidade]): "); scanf("%f", &K); printf("\nDigite o valor da Area (em metros): "); scanf("%f", &A); printf("\nDigite o valor da Temperatura Inicial (em °C): "); scanf("%f", &tinicial); printf("\nDigite o valor da Temperatura Final (em °C): "); scanf("%f", &tfinal); printf("\nDigite o valor do e (em [unidade]): "); scanf("%f", &e); deltat=tfinal-tinicial; q=(K*A*deltat)/e; printf("\n\n\nO valor do q e %4.4f [unidade]", q); } while(calculo=3) { printf("Lei de Newton - Transferencia de Calor [Fluxo Fluido]\n\n\n"); //q=h.A.ΔT printf("\nDigite o valor da Altura (em metros): "); scanf("%f", &h); printf("\nDigite o valor da Area (em metros): "); scanf("%f", &A); printf("\nDigite o valor da Temperatura Inicial (em °C): "); scanf("%f", &tinicial); printf("\nDigite o valor da Temperatura Final (em °C): "); deltat=tfinal-tinicial; q=h*A*deltat; printf("\n\n\nO valor do q e %4.4f [unidade]", q); } while(calculo=4) { printf("Trabalho sob Pressao Constante\n\n\n"); //τ=P.ΔV printf("\nDigite o valor da Pressao (em [unidade]): "); scanf("%f", &pressao); printf("\nDigite o valor do V inicial (em [unidade]): "); scanf("%f", &vinicial); printf("\nDigite o valor do V final (em [unidade]): "); scanf("%f", vfinal); deltav=vfinal-vinicial; tau=pressao*deltav; printf("\n\n\nO Trabalho realizado foi de %2.4f Joule", tau); } while(calculo=5) { printf("Energia Interna\n\n\n"); //ΔU=Q-τ printf("\nDigite o valor do Q (em [unidade]): "); scanf("%f", &Q); printf("\nDigite o valor do Trabalho (em Joule): "); scanf("%f", &tau); deltau=Q-tau; printf("\n\n\nO Valor da Variacao do Q e igual a %2.4f [unidade]", Q); } while(calculo=6) { printf("Entalpia\n\n\n"); //ΔH=ΔU-τ printf("Digite o Valor do U Inicial: "); scanf("%f", &uinicial); printf("\nDigite o valor do U final: "); scanf("%f", &ufinal); printf("Digite o valor do Trabalho (em Joule): "); scanf("%f", &tau); deltau=ufinal-uinicial; deltah=deltau-tau; printf("\n\n\nO Valor da Entalpia e igual a %2.4f [unidade]", deltah); //Mudar tudo que está escrito (em [unidade]), para a unidade certa das váriaveis getch(); } }
- 1
-
Eu gostaria de saber como introduzir simbolos gregos nas minhas variáveis, ou seja, eu quero fazer um programa que realize cálculos de termodinâmica, e gostaria por exemplo de usar o "Delta" em algumas situações, entre outras letras gregas, mas que não dê problema na hora da execução, como posso fazer isso?
- 1
-
Problema resolvido!
-
-
O programa está quase pronto, porém eu só preciso de um ajuste que não sei como fazer, na hora de gerar o relatório, eu gostaria de trocar o "Um fornecedor comprou...." para colocar o Nome do fornecedor estabelecido no início, por exemplo:
Digite o nome do fornecedor:
Airton
[.....]Deseja cadastrar outro fornecedor?
Sim
Digite o nome do fornecedor:
Fulano
[....]
Airton comprou xKg de solda[...]
Fulano comprou xKg de solda[....]
Segue abaixo o código fonte:#include <conio.h> #include <iostream> #include <math.h> using namespace std; int main(){ float massa[1000], preco[1000], teor_chumbo[1000]; float contador, custo_total=0, massa_total=0, teor_med,total,teor; int fornec_total,i=0,cont=0,sair=1; char fornec[1000][30]; printf("\n-------Fornecedores de Solda-------\n\nCurso de Engenharia da Computação\nAirton Fouchy\n\n\n"); while(sair !=0) { printf("\nDigite o nome do Fornecedor que deseja cadastrar:\n "); scanf("%s",fornec[cont]); fflush(stdin); gets(fornec[cont]); printf("\nDigite a massa (em Kilogramas) do lote do Fornecedor:\n "); scanf("%f",&massa[cont]); printf("\nEstabeleca o preco por Kilograma da Solda para o fornecedor:\n"); scanf("%f",&preco[cont]); printf("\nDigite o teor percentual de Chumbo, ligado com Estanho na liga:\n"); scanf("%f",&teor_chumbo[cont]); cont++; printf("\nQuer Cadastrar Outro Fornecedor? 1-Sim, 0-Nao\n"); scanf("%i",&sair); }; printf("\n\n========= Relatorio =======\n\n"); printf("O numero de fornecedores cadastrados foi: %d\n----------------------------------------------------------\n",cont); for(i=0;i<cont;i++){ total=massa[i]*preco[i]; custo_total+=total; massa_total+=massa[i]; teor=teor_chumbo[i]/massa_total; printf("Um Fornecedor %s",fornec[i]); printf("comprou %.2f Kg De Solda\n",massa[i]); printf("Com Teor De %.2f Porcento De Chumbo\n",teor_chumbo); printf("Por R$ %.2f Ao Kilo\n",preco[i]); printf("Totalizando R$ %.2f A Sua Compra .",total); printf("\n----------------------------------------------------------\n\n"); } getch(); return 0; }
E mais uma coisa, na hora de compilar no Dev C++ ele dá problemas, e executa códigos errados, estou compilando e testando online em um site compilador de C, C# e C++. -
Me desse uma boa ajudada, vou continuar teu raciocínio, como falei, sou leigo em C++, tentei fazer o código de acordo com o que eu conheço, muito obrigado
- 1
-
O código é mais ou menos isso, só que ele precisa gerar um relatório para cada fornecedor, por exemplo:
Se forem 5 fornecedores, tem que perguntar quantos Kg de solda que o fornecedor 1 vai comprar e quando vai sair para ele, assim como para o fornecedor 2, 3, 4 ...... até chegar no número X que foi cadastrado.- 1
-
Certo, retirei os "return 0;" do código, e no final, antes do último } eu adicionei um "getch (); ", porém o programa continua não funcionando. Obrigado
- 1
-
Boa noite, eu estou desenvolvendo um programa em C++ que trata-se de cadastramento de fornecedores de Solda, sou meio leigo em programação e gostaria que alguém pudesse apontar o erro no meu código. Segue abaixo o código fonte:
#include <conio.h> #include <iostream> #include <math.h> //Cadastrar fornecedores (um número qualquer); //Cadastrar a massa do lote de cada fornecedor (Kg); //Cadastrar o preço por Kg de Solda de cada fornecedor (R$/Kg); //Cadastrar o teor (%) de Chumbo (Pb) ligado com Estanho (Sn) na liga de cada fornecedor; //Emitir relatórios dos dados dos itens (1), (2), (3) e (4); //Emitir o preço médio da batelada (R$/Kg); //Emitir o teor de Chumbo (%) no lote; //Emitir o custo total e a massa total do lote. //Custo Total - CT: CT+P(n); //Preço Médio - PM: ((P(1).M(1))+ ... (P(∞).M(∞))/MT); //Massa Total - MT: MT + M(n); //Teor Médio - TM: ((T(1).M(1)) + ... (T(∞).M(∞))/MT); main () { float massa, preco, teor, contador, custo_total, massa_total, teor_med; int fornec, fornec_total; printf "\n\nDigite o numero de fornecedores que deseja cadastrar:\n"; fornec=1 while(fornec>0) { cout<<fornec<<endl; contador++; } return 0; scanf"%", &fornec[i]; printf "\n\n\nDigite a massa (em Kilogramas) do lote de cada fornecedor:\n"; massa=1 while(massa>0) { cout<<massa<endl; contador++; } return 0; scanf"%f", &massa[i]; printf "\n\n\nEstabeleca o preco por Kg da Solda para o fornecedor:\n"; preco=1 while(preco>0) { cout<<preco<<endl; contador++; } return 0; scanf"%f", &preco[i]; printf "\n\n\nDigite o teor percentual de Chumbo, ligado com Estanho na liga:\n"; teor=1 while(teor>0) { cout<<teor<<endl; contador++; } return 0; scanf"%f", &teor; fornec_total=fornec[i]; scanf"%", %fornec_total; custo_total=preco[i]; scanf"%f", &custo_total massa_total=massa[i]; scanf"%f", &massa_total; teor_med=teor/[i]; scanf"%f", &teor_med; printf"\n\nRelatorio\n\nO numero de fornecedores cadastrados e:"%fornec_total";.\n\nO custo total repassado para os fornecedores e de:"%custo_total";.\n\nA massa total vendida foi de:"%massa_total";.\n\nE o teor medio de Chumbo utilizado no material da solda vendido e de:"%teormed";."; }
- 1
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais
Retorno ao Menu Principal
em C/C#/C++
Postado
Certo!! Resolvesse uma parte do meu problema, a única coisa que to tentando implementar mas só deu erro, foi na parte dos sub-menus, como no caso do "1. Transferência de Escalas" e "9. Transferência de calor por resistências associadas". Estas duas opções abrem um sub-menu com mais opções para o usuário fazer o cálculo, eu gostaria que no final do cálculo o usuário tivesse a opção de voltar pro sub-menu, voltar para o menu principal, ou digitar 0 para sair, é possivel?