Calculo calorico visando perca de gordura e definicao muscular
Publicado por Carlos Baldocchi 06/05/2009 (última atualizaçăo em 11/11/2011)
[ Hits: 10.134 ]
Download 1320719316.anabolismo.cpp (versăo 2)
Fiz esse programa para satisfazer minhas próprias necessidades. Ele faz todos os cálculos automáticos sobre percentual de gordura corporal, consumo diário calórico, e mais algumas coisas.
Não sou nenhum programador avançado, e sei apenas o básico de C que aprendi na faculdade e como hobbie. O interessante nesse programa é a metodologia que empreguei, tentando criar uma interface o mais intuitiva possível, clara e bem explicada
para o usuário.
Compilado em Windows: Dev-C++
Versăo 2 - Enviado por Carlos Baldocchi em 08/11/2011
Changelog: Nova versăo! Agora com balanço calórico balanceado para dias de semana e finais de semana.
Download 1320719316.anabolismo.cpp
#include <stdio.h> //#include <iostream> #include <stdlib.h> #include <conio.h> #include <windows.h> // by Carlos E. Baldocchi // contato: carlos.baldocchi@gmail.com // Agradecimento ŕ http://www.guiadohardware.net char nome[101], sexo, metodo, none, tecla_espaco, tecla_enter; int idade, controle, abc, menu; float altura, massa, imc, massa_fim; float massa_magra_ini, massa_magra_fim, massa_gorda_ini, massa_gorda_fim; float calorias_dia, quilos_semana; float perc_gord_ini, perc_gord_fim; float calorias_diarias_teorico, calorias_diarias_real; int subprog_ajuda (); int subprog_printf_percentual (); int subprog_calc_cintura (); int subprog_gasto_calorico_diario (); int subprog_salvar (); int subprog_config_teclado (); int main() { char s_ou_n, pergunta_salvar, percentual; printf("=== Calculo calorico visando perca de gordura e definicao muscular ==="); printf("\n=== Hipertrofia.ORG ==="); printf("\n=== by C.E.B - 02/05/2009 - versao: B 0.0.5 ==="); printf("\n\nPressione [espaco] para selecionar e [ENTER] para continuar\n\n"); // ************* menu=1; do { if (menu==1) printf("(*) Configurar o teclado\n( ) Iniciar o programa\n( ) Ajuda\n( ) Sair"); else if (menu==2) printf("( ) Configurar o teclado\n(*) Iniciar o programa\n( ) Ajuda\n( ) Sair"); else if (menu==3) printf("( ) Configurar o teclado\n( ) Iniciar o programa\n(*) Ajuda\n( ) Sair"); else if (menu==4) printf("( ) Configurar o teclado\n( ) Iniciar o programa\n( ) Ajuda\n(*) Sair"); none=getch(); if ((none==32)||(none==tecla_espaco)) { menu++; if (menu==5) menu=1; } else if (!((none==13)||(none==tecla_enter))) printf("\nERRO! Pressione [espaco] para selecionar.\nSe o erro persistir pressione [ENTER] para configurar o teclado."); printf("\n\n"); }while(!((none==13)||(none==tecla_enter))); if (menu==1) subprog_config_teclado(); if (menu==3) subprog_ajuda(); if (menu==4) goto AUTOR; { printf("Entre com seu nome: "); fgets (nome,100,stdin); } printf("\nEntre com seu sexo\n(Pressione [espaco] para selecionar e [ENTER] para continuar)\n:\n"); menu=1; do { if (menu==1) printf("(*) Homem\n( ) Mulher"); else if (menu==2) printf("( ) Homem\n(*) Mulher"); none=getch(); if ((none==32)||(none==tecla_espaco)) { menu++; if (menu==3) menu=1; } else if (!((none==13)||(none==tecla_enter))) printf("\nERRO! Pressione [espaco] para selecionar."); printf("\n\n"); }while(!((none==13)||(none==tecla_enter))); if (menu==1) sexo='H'; if (menu==2) sexo='M'; // do{ // printf("\nEntre com seu sexo - H(homem) / M(mulher): "); // sexo=getche(); // if ( (sexo!='H') && (sexo!='h') && (sexo!='M') && (sexo!='m') ) printf("\nERRO! Pressione apenas \"H\" ou \"M\".\n"); // }while( (sexo!='H') && (sexo!='h') && (sexo!='M') && (sexo!='m') ); do { printf("Entre com sua idade\n[unidade: anos - exemplo: 22]\n: "); scanf("%d",&idade); if ( (!((idade>0)&&(idade<=99))) ) printf("ERRO! Limitado entre 0 e 99 anos.\n\n"); }while( (!((idade>0)&&(idade<=99))) ); do { printf("\nEntre com sua altura\n[unidade: cm - exemplo: 180]\n: "); scanf("%f",&altura); if ( (!((altura>0)&&(altura<=250))) ) printf("ERRO! Limitado entre 0 e 250 cm.\n"); }while( !( (altura>0) && (altura<=250) ) ); do { printf("\nEntre com sua massa\n[unidade: kG - exemplo: 87.5]\n: "); scanf("%f",&massa); if ( (!((massa>0)&&(massa<=220))) ) printf("ERRO! Limitado entre 0 e 220 kG.\n"); }while( (!((massa>0)&&(massa<=220))) ); imc=(massa/((altura/100)*(altura/100))); VOLTA1: printf("\nVoce sabe seu percentual de gordura corporal?\n(Pressione [espaco] para selecionar e [ENTER] para continuar)\n:\n"); menu=1; do { if (menu==1) printf("(*) Sim - utilizar o valor que possuo\n( ) Nao - utilizar o programa para calcular\n( ) Ajuda..."); else if (menu==2) printf("( ) Sim - utilizar o valor que possuo\n(*) Nao - utilizar o programa para calcular\n( ) Ajuda..."); else if (menu==3) printf("( ) Sim - utilizar o valor que possuo\n( ) Nao - utilizar o programa para calcular\n(*) Ajuda..."); none=getch(); if ((none==32)||(none==tecla_espaco)) { menu++; if (menu==4) menu=1; } else if (!((none==13)||(none==tecla_enter))) printf("\nERRO! Pressione [espaco] para selecionar."); printf("\n\n"); }while(!((none==13)||(none==tecla_enter))); if (menu==1) percentual='S'; if (menu==2) percentual='N'; if (menu==3) percentual='H'; // do // { // printf("\nVoce sabe seu percentual de gordura corporal?\nS (sim - utilizar o valor que possuo)\nN (nao - utilizar o programa para calcular)\nPressione \"h\" para ajuda\n: "); // percentual=getche(); // if ( (percentual!='S') && (percentual!='s') && (percentual!='N') && (percentual!='n') && (percentual!='H') && (percentual!='h') ) printf("\nERRO! Pressione apenas \"S\" ou \"N\" ou \"H\".\n"); // }while( (percentual!='S') && (percentual!='s') && (percentual!='N') && (percentual!='n') && (percentual!='H') && (percentual!='h') ); if ((percentual=='S')||(percentual=='s')) { do { printf("Entre com seu atual percentual de gordura corporal\n[unidade: %% x 100 - exemplo: 22.5]\n: "); scanf("%f",&perc_gord_ini); if ( (!((perc_gord_ini>=0)&&(perc_gord_ini<100))) ) printf("ERRO! Limitado entre 0 e 100%%.\n\n"); }while( (!((perc_gord_ini>0)&&(perc_gord_ini<100))) ); } if ((percentual=='H')||(percentual=='h')) { subprog_printf_percentual (); goto VOLTA1; } if ((percentual=='N')||(percentual=='n')) subprog_calc_cintura(); do { printf("\nEntre com seu desejado percentual de gordura corporal\n[unidade: %% x 100 - exemplo: 11.5]\nPressione \"0\" para ajuda\n: "); scanf("%f",&perc_gord_fim); if (perc_gord_fim==0) subprog_printf_percentual(); if ( (!((perc_gord_fim>=0)&&(perc_gord_fim<100))) ) printf("ERRO! Limitado entre 0 e 100%%.\n"); }while( (!((perc_gord_fim>0)&&(perc_gord_fim<100))) ); if(perc_gord_fim>=perc_gord_ini) { printf("\nPercentual nao aceito!\nSeu percentual inicial e: %.0f%%\nSeu percentual desejado e: %.0f%%\nVoce deseja engordar!!!\n\n",perc_gord_ini,perc_gord_fim); system("pause"); goto FINISH; return(1); } system("cls"); printf("Voce sabe quantas calorias gasta diariamente?\n(Pressione [espaco] para selecionar e [ENTER] para continuar)\n:\n"); menu=1; do { if (menu==1) printf("(*) Sim - utilizar o valor que possuo\n( ) Nao - utilizar o programa para calcular"); else if (menu==2) printf("( ) Sim - utilizar o valor que possuo\n(*) Nao - utilizar o programa para calcular"); none=getch(); if ((none==32)||(none==tecla_espaco)) { menu++; if (menu==3) menu=1; } else if (!((none==13)||(none==tecla_enter))) printf("\nERRO! Pressione [espaco] para selecionar."); printf("\n\n"); }while(!((none==13)||(none==tecla_enter))); if (menu==1) s_ou_n='S'; if (menu==2) s_ou_n='N'; // do // { // if (u==0) printf("Voce sabe quantas calorias gasta diariamente?\nS (sim - utilizar o valor que possuo)\nN (nao - utilizar o programa para calcular)\n: "); // if (u==1) printf("\nVoce sabe quantas calorias gasta diariamente?\nS (sim - utilizar o valor que possuo)\nN (nao - utilizar o programa para calcular)\n: "); // u=1; // s_ou_n=getche(); // if ( (s_ou_n!='S') && (s_ou_n!='s') && (s_ou_n!='N') && (s_ou_n!='n') ) printf("\nERRO! Pressione apenas \"S\" ou \"N\".\n"); // }while( (s_ou_n!='S') && (s_ou_n!='s') && (s_ou_n!='N') && (s_ou_n!='n') ); if ( (s_ou_n=='S')||(s_ou_n=='s') ) { do { printf("Entre com o seu gasto calorico diario\n[unidade: kcal - exemplo: 1250]\n: "); scanf("%f",&calorias_diarias_real); if ( (!((calorias_diarias_real>0)&&(calorias_diarias_real<=12000))) ) printf("ERRO! Limitado entre 0 e 12000 kcal / dia.\n\n"); }while( (!((calorias_diarias_real>0)&&(calorias_diarias_real<=12000))) ); } if ( (s_ou_n=='N')||(s_ou_n=='n') ) subprog_gasto_calorico_diario(); system("cls"); printf("Selecione o metodo de calculo:\n(Pressione [espaco] para selecionar e [ENTER] para continuar)\n:\n"); menu=1; do { if (menu==1) printf("(*) A - Quantidade calorica a ser perdida diariamente.\n( ) B - Quantidade massica a ser perdida por semana.\n"); else if (menu==2) printf("( ) A - Quantidade calorica a ser perdida diariamente.\n(*) B - Quantidade massica a ser perdida por semana.\n"); none=getch(); if ((none==32)||(none==tecla_espaco)) { menu++; if (menu==3) menu=1; } else if (!((none==13)||(none==tecla_enter))) printf("ERRO! Pressione [espaco] para selecionar.\n"); printf("\n"); }while(!((none==13)||(none==tecla_enter))); if (menu==1) metodo='A'; if (menu==2) metodo='B'; // do{ // if (u==0) printf("Selecione o metodo de calculo:\nA - Quantidade calorica a ser perdida diariamente.\nB - Quantidade massica a ser perdida por semana.\n: "); // if (u==1) printf("\nSelecione o metodo de calculo:\nA - Quantidade calorica a ser perdida diariamente.\nB - Quantidade massica a ser perdida por semana.\n: "); // u+1; // metodo=getche(); // if ( (metodo!='A') && (metodo!='a') && (metodo!='B') && (metodo!='b') ) printf("\nERRO! Pressione apenas \"A\" ou \"B\".\n\n"); // }while( (metodo!='A') && (metodo!='a') && (metodo!='B') && (metodo!='b') ); if ( (metodo=='A')||(metodo=='a') ) { do { printf("\nEntre com a quantidade calorica a ser perdida diariamente\n[unidade: kcal - exemplo: 500]\n: "); scanf("%f",&calorias_dia); if ( (!((calorias_dia>0)&&(calorias_dia<=3000))) ) printf("ERRO! Limitado entre 0 e 3000 kcal / dia.\n"); }while( (!((calorias_dia>0)&&(calorias_dia<=3000))) ); } if ( (metodo=='B')||(metodo=='b') ) { do { printf("Entre com a quantidade massica a ser perdida semanalmente\n[unidade: kG - exemplo: 1 ou 1.2 ou 1.5... etc]\n: "); scanf("%f",&quilos_semana); if ( (!((quilos_semana>0)&&(quilos_semana<=2.5))) ) printf("ERRO! Limitado entre 0 e 2.5 kG / semana.\n\n"); }while( (!((quilos_semana>0)&&(quilos_semana<=2.5))) ); } system("cls"); printf("==================================================================="); massa_magra_ini=(massa*(1-(perc_gord_ini/100))); massa_gorda_ini=(massa*(perc_gord_ini/100)); massa_magra_fim=(massa*(1-(perc_gord_ini/100))); massa_gorda_fim=((massa_magra_fim/(1-(perc_gord_fim/100)))-massa_magra_fim); massa_fim=(massa_magra_fim+massa_gorda_fim); imc=(massa/((altura/100)*(altura/100))); printf("\nNome: %s",nome); printf("\nSexo: "); if ( (sexo=='H') || (sexo=='h') ) printf("Masculino."); else if ( (sexo=='M') || (sexo=='m') ) printf("Feminino."); printf("\nIdade: %d anos.",idade); printf("\nAltura: %.2f metros.",altura/100); printf("\nMassa: %.1f kG.",massa); printf("\nIMC: %.2f kG / m^2",imc); if ( ( (sexo=='H') || (sexo=='h') ) && (imc>=28) ) printf(" - acima do normal, verifique isso!"); else if (((sexo=='M')||(sexo=='m'))&&(imc>=25)) printf(" - acima do normal, verifique isso!"); else printf("."); printf("\n\nATUAL:"); printf("\n|-> Massa magra: %.1f kG (%.1f%%)",massa_magra_ini,(100-perc_gord_ini)); printf("\n|-> Massa gorda: %.1f kG (%.1f%%)",massa_gorda_ini,perc_gord_ini); printf("\n=>> Massa total: %.1f kG (100%%)",massa); printf("\n\nDESEJADO:"); printf("\n|-> Massa magra: %.1f kG (%.1f%%)",massa_magra_fim,(100-perc_gord_fim)); printf("\n|-> Massa gorda: %.1f kG (%.1f%%)",massa_gorda_fim,perc_gord_fim); printf("\n=>> Massa total: %.1f kG (100%%)",massa_fim); printf("\n\nDIFERENCA:"); printf("\n|-> Massa magra a ser perdida: %.1f kG",(massa_magra_fim-massa_magra_ini)); printf("\n|-> Massa gorda a ser perdida: %.1f kG",(massa_gorda_ini-massa_gorda_fim)); printf("\n=>> Massa total a ser perdida: %.1f kG",(massa-massa_fim)); if (controle==1) printf("\n\nO percentual de gordura foi calculado atraves\ndo programa e esse valor nao e muito aconselhado\npara se levar em consideracao!"); printf("\n\nValor metabolico de repouso (MMR): %.0f calorias / dia",calorias_diarias_real); if ( (metodo=='A')||(metodo=='a') ) { printf("\n\nQuantidade calorica diaria a ser perdida: %.0f kcal",calorias_dia); printf("\nQuantidade calorica semanal a ser perdida: %.0f kcal ou %.2f kG",calorias_dia*7,((calorias_dia*7/9)/1000)); if ((calorias_diarias_real-calorias_dia)>=0) printf("\n\nQuantidade calorica diaria a ser consumida: %.0f kcal",calorias_diarias_real-calorias_dia); if ((calorias_diarias_real-calorias_dia)<0) printf("\n\nQuantidade calorica diaria a ser consumida: 0 kcal\nATENCAO: Esta dieta tende a ser perigosa.",calorias_diarias_real-calorias_dia); printf("\n\nQuantidade calorica total a ser perdida: %.0f kcal",(massa_gorda_ini-massa_gorda_fim)*1000*9); printf("\n\nDuracao da dieta: %.0f dias ou %.0f semanas.",(((massa_gorda_ini-massa_gorda_fim)*1000*9))/calorias_dia,((((massa_gorda_ini-massa_gorda_fim)*1000*9))/calorias_dia/7)); } if ( (metodo=='B')||(metodo=='b') ) { printf("\n\nQuantidade calorica diaria a ser perdida: %.0f kcal",((quilos_semana*1000*9)/7)); printf("\nQuantidade calorica semanal a ser perdida: %.0f kcal ou %.2f kG",(quilos_semana*1000*9),quilos_semana); if ((calorias_diarias_real-((quilos_semana*1000*9)/7))>=0) printf("\n\nQuantidade calorica diaria a ser consumida: %.0f kcal",calorias_diarias_real-((quilos_semana*1000*9)/7)); if ((calorias_diarias_real-((quilos_semana*1000*9)/7))<0) printf("\n\nQuantidade calorica diaria a ser consumida: 0 kcal\nATENCAO: Esta dieta tende a ser perigosa.",calorias_diarias_real-((quilos_semana*1000*9)/7)); printf("\n\nQuantidade calorica total a ser perdida: %.0f kcal",(massa_gorda_ini-massa_gorda_fim)*1000*9); printf("\n\nDuracao da dieta: %.0f dias ou %.0f semanas.",(((massa_gorda_ini-massa_gorda_fim)*1000*9))/((quilos_semana*1000*9)/7),((((massa_gorda_ini-massa_gorda_fim)*1000*9))/((quilos_semana*1000*9)/7)/7)); } printf("\n\n==================================================================="); do{ printf("\n\nDeseja salvar a saida? - S(sim) / N(nao): "); pergunta_salvar=getche(); if ( (pergunta_salvar!='S') && (pergunta_salvar!='s') && (pergunta_salvar!='N') && (pergunta_salvar!='n') ) printf("\nERRO! Pressione apenas \"S\" ou \"N\"."); }while( (pergunta_salvar!='S') && (pergunta_salvar!='s') && (pergunta_salvar!='N') && (pergunta_salvar!='n') ); printf("\nAguarde"); for (abc=0;abc<=25;abc++) { printf("."); Sleep(100); } AUTOR: if ( (pergunta_salvar=='S')||(pergunta_salvar=='s') ) subprog_salvar(); printf("\n\n\nAutor: Carlos E. Baldocchi\nBug e contato: carlos.baldocchi@gmail.com\nOferecimento a: http://www.guiadohardware.net/\n http://www.hipertrofia.org/\n\n"); system("pause"); FINISH: return(0); } int subprog_ajuda () { system("cls"); printf("Esse programa foi desenvolvido com o objetivo de auxiliar pessoas\nem dietas com o objetivo de perca de peso e definiçăo muscular.\n\nEmbora o programa inclua calculo de percentual de gordura com base\nem pessoas com IMC acima de 25 kG / m^2, o programa eh destinado\na atletas.\n\nEh mais adequado utilizar o programa se voce souber o seu percentual\nde gordura. Utilizar o algoritmo de percentual de gordura corporal\nincluido no programa pode gerar muitos erros devido ao seu biotipo\nfisico e gerar valores e dados incorretos.\n\n===== Tabela de conversao calorica: =====\n| |\n| 1 grama de Carboidrato...4kcal |\n| 1 grama de proteina......4kcal |\n| 1 grama de gordura.......4kcal |\n| |\n=========================================\n\n\nDesenvolvedor: Carlos E. Baldocchi\nBug e contato: carlos.baldocchi@gmail.com\nOferecimento a: http://www.guiadohardware.net/\n http://www.hipertrofia.org/\n\n"); system("pause"); system("cls"); } int subprog_config_teclado () { system("cls"); printf("Aperte a tecla [ESPACO]: "); tecla_espaco=getch(); printf("\nTecla espaco = %d",tecla_espaco); printf("\n\nAperte a tecla [ENTER]: "); tecla_enter=getch(); printf("\nTecla enter = %d",tecla_enter); printf("\n\nTeclado configurado com sucesso!\n\n"); system("pause"); system("cls"); return(0); } int subprog_printf_percentual () { printf("\n>> 5-7%% >> Pareces mais pequeno vestido, mas ficas fantastico despido! Vascularizacao na parte inferior do abdomen e pernas."); printf("\n\n>> 7-9%% >> Abdominais completamente visiveis, bracos mais vascularizados, separacao do peito e costas e completamente visivel e a cara comeca a ficar mais angular."); printf("\n\n>> 10-12%% >> Separacao muscular mais profunda nos bracos, peito, pernas e costas. Abdominais ficam visiveis quando contraidos."); printf("\n\n>> 12-14%% >> Aparece mais alguma separacao muscular, especialmente no peito e nas costas, começam a aparecer tracos de definicao nos abdominais."); printf("\n\n>> 15-19%% >> Alguma separacao muscular entre os deltoides e a parte superior do braco. Os abdominais continuam nao visiveis."); printf("\n\n>> 20%% ou mais de gordura >> definicao muscular nula!\n"); return(0); } int subprog_calc_cintura () { char pergunta; float perimetro_punho, perimetro_abdomem, perimetro_gluteo; controle=1; printf("Esse metodo nao e o mais adequado mas serve como solucao para consultas rapidas.Lembre-se que esse metodo pode gerar muitos erros devido ao seu biotipo fisico.\n"); VOLTA2: { if (((sexo=='H')||(sexo=='h')) && ((imc>=0)&&(imc<=28))) { do { printf("\nEntre com a circunferencia do seu punho\n[unidade: cm - exemplo: 19.7]\n: "); scanf("%f",&perimetro_punho); if ( (!((perimetro_punho>0)&&(perimetro_punho<=50))) ) printf("ERRO! Limitado entre 0 e 50 cm.\n\n"); }while( (!((perimetro_punho>0)&&(perimetro_punho<=50))) ); do { printf("\nEntre com a circunferencia do seu abdomem\n[unidade: cm - exemplo: 67.5]\n: "); scanf("%f",&perimetro_abdomem); if ( (!((perimetro_abdomem>0)&&(perimetro_abdomem<=200))) ) printf("ERRO! Limitado entre 0 e 200 cm.\n\n"); }while( (!((perimetro_abdomem>0)&&(perimetro_abdomem<=200))) ); perc_gord_ini=(((massa-(41.955+(1.038786*massa)-(0.82816*(perimetro_abdomem-perimetro_punho))))/massa)*100); } if (((sexo=='H')||(sexo=='h')) && (imc>28)) { printf("\nSeu IMC esta acima de 28 apontando abesidade. Deseja utilizar a formula para pessoas obesas?\n(Pressione [espaco] para selecionar e [ENTER] para continuar)\n:\n"); menu=1; do { if (menu==1) printf("(*) Sim - ...continuar\n( ) Nao - utilizar s formula para pessoas nao-obesas"); else if (menu==2) printf("( ) Sim - ...continuar\n(*) Nao - utilizar s formula para pessoas nao-obesas"); none=getch(); if ((none==32)||(none==tecla_espaco)) { menu++; if (menu==3) menu=1; } else if (!((none==13)||(none==tecla_enter))) printf("\nERRO! Pressione [espaco] para selecionar."); printf("\n\n"); }while(!((none==13)||(none==tecla_enter))); if (menu==1) pergunta='S'; if (menu==2) pergunta='N'; // do{ // printf("\nSeu IMC esta acima de 28 apontando abesidade. Deseja utilizar a formula para pessoas obesas?\nS (sim - ...continuar)\nN (nao - utilizar s formula para pessoas nao-obesas)\n: "); // pergunta=getche(); // if ( (pergunta!='S') && (pergunta!='s') && (pergunta!='N') && (pergunta!='n') ) printf("\nERRO! Pressione apenas \"S\" ou \"N\".\n"); // }while( (pergunta!='S') && (pergunta!='s') && (pergunta!='N') && (pergunta!='n') ); if ((pergunta=='N')||(pergunta=='n')) { printf("\n"); imc=28; goto VOLTA2; } do { printf("\n\nEntre com a circunferencia do seu abdomem\n[unidade: cm - exemplo: 67.5]\n: "); scanf("%f",&perimetro_abdomem); if ( (!((perimetro_abdomem>0)&&(perimetro_abdomem<=200))) ) printf("ERRO! Limitado entre 0 e 200 cm.\n\n"); }while( (!((perimetro_abdomem>0)&&(perimetro_abdomem<=200))) ); perc_gord_ini=((0.31457*perimetro_abdomem)-(0.10969*massa)+10.8336); } } { if (((sexo=='M')||(sexo=='m')) && ((imc>=0)&&(imc<=25))) { do { printf("\nEntre com a circunferencia do seu gluteo\n[unidade: cm - exemplo: 45.5]\n: "); scanf("%f",&perimetro_gluteo); if ( (!((perimetro_gluteo>0)&&(perimetro_gluteo<=150))) ) printf("ERRO! Limitado entre 0 e 150 cm.\n\n"); }while( (!((perimetro_gluteo>0)&&(perimetro_gluteo<=150))) ); do { printf("\nEntre com a circunferencia do seu abdomem\n[unidade: cm - exemplo: 65.5]\n: "); scanf("%f",&perimetro_abdomem); if ( (!((perimetro_abdomem>0)&&(perimetro_abdomem<=180))) ) printf("ERRO! Limitado entre 0 e 180 cm.\n\n"); }while( (!((perimetro_abdomem>0)&&(perimetro_abdomem<=180))) ); perc_gord_ini=((0.55*perimetro_gluteo)-(0.24*altura)+(0.28*perimetro_abdomem)-8.43); } if (((sexo=='M')||(sexo=='m')) && (imc>25)) { printf("\nSeu IMC esta acima de 25 apontando abesidade. Deseja utilizar a formula para pessoas obesas?\n(Pressione [espaco] para selecionar e [ENTER] para continuar)\n:\n"); menu=1; do { if (menu==1) printf("(*) Sim - ...continuar\n( ) Nao - utilizar s formula para pessoas nao-obesas"); else if (menu==2) printf("( ) Sim - ...continuar\n(*) Nao - utilizar s formula para pessoas nao-obesas"); none=getch(); if ((none==32)||(none==tecla_espaco)) { menu++; if (menu==3) menu=1; } else if (!((none==13)||(none==tecla_enter))) printf("\nERRO! Pressione [espaco] para selecionar."); printf("\n\n"); }while(none!=13); if (menu==1) pergunta='S'; if (menu==2) pergunta='N'; // do{ // printf("\nSeu IMC esta acima de 25 apontando abesidade. Deseja utilizar a formula para pessoas obesas?\nS (sim - ...continuar)\nN (nao - utilizar s formula para pessoas nao-obesas)\n: "); // pergunta=getche(); // if ( (pergunta!='S') && (pergunta!='s') && (pergunta!='N') && (pergunta!='n') ) printf("\nERRO! Pressione apenas \"S\" ou \"N\".\n"); // }while( (pergunta!='S') && (pergunta!='s') && (pergunta!='N') && (pergunta!='n') ); if ((pergunta=='N')||(pergunta=='n')) { printf("\n"); imc=25; goto VOLTA2; } do { printf("\n\nEntre com a circunferencia do seu abdomem\n[unidade: cm - exemplo: 65.5]\n: "); scanf("%f",&perimetro_abdomem); if ( (!((perimetro_abdomem>0)&&(perimetro_abdomem<=180))) ) printf("ERRO! Limitado entre 0 e 180 cm.\n\n"); }while( (!((perimetro_abdomem>0)&&(perimetro_abdomem<=180))) ); perc_gord_ini=((0.11077*perimetro_abdomem)-(0.17666*altura)+(0.14354*massa)+51.03301); } } if ((perc_gord_ini>5)&&(perc_gord_ini<=22)) { printf("Seu atual percentual de gordura e: %.2f%%\n",perc_gord_ini); } else if (((perc_gord_ini>0)&&(perc_gord_ini<=5))||((perc_gord_ini>22)&&(perc_gord_ini<=100))) { if ((perc_gord_ini>0)&&(perc_gord_ini<=5)) { printf("Seu atual percentual de gordura e: %.2f%%",perc_gord_ini); printf("\nEsteja ciente que esse valor esta muito baixo e talvez nao coincida com a realidade.\n"); system("pause"); } else if ((perc_gord_ini>22)&&(perc_gord_ini<=100)) { printf("Seu atual percentual de gordura e: %.2f%%",perc_gord_ini); printf("\nEsteja ciente que esse valor esta muito alto e talvez nao coincida com a realidade.\n"); system("pause"); } } else { printf("Seu atual percentual de gordura e: %.2f%%",perc_gord_ini); printf("\nValor impossivel! Esteja ciente que isso pode ocorrer devido ao erro no programa.\n",perc_gord_ini); system("pause"); return(1); } return(0); } int subprog_gasto_calorico_diario () { float seg_a_sex_rep, seg_a_sex_mle, seg_a_sex_lev, seg_a_sex_mod, seg_a_sex_int; float sab_e_dom_rep, sab_e_dom_mle, sab_e_dom_lev, sab_e_dom_mod, sab_e_dom_int; float fator_total, fator_seg_a_sex, fator_sab_e_dom; if ( (sexo=='H')||(sexo=='h') ) calorias_diarias_teorico=(66.5+(13.7*massa)+(5*altura)+(6.8*idade)); else if ( (sexo=='M')||(sexo=='m') ) calorias_diarias_teorico=(655.1+(9.56*massa)+(1.85*altura)+(4.7*idade)); do { printf("Nos dias de Segunda a Sexta entre com o valor de quantas horas diarias voce realiza:\n(Lembre-se que o total de horas deve somar 24H.)\n"); do { printf("\nRepouso\n(dormir, ler na cama, etc...)\n[unidade: horas - exemplo: 8]\n: "); scanf("%f",&seg_a_sex_rep); if ( (!((seg_a_sex_rep>=0)&&(seg_a_sex_rep<=24))) ) printf("ERRO! Entre com um valor entre 0 e 24 horas.\n"); }while( (!((seg_a_sex_rep>=0)&&(seg_a_sex_rep<=24))) ); do { printf("\nMuito Leve\n(em pe, escrever, jogar cartas, tocar instrumento musical, etc...)\n[unidade: horas - exemplo: 8]\n: "); scanf("%f",&seg_a_sex_mle); if ( (!((seg_a_sex_mle>=0)&&(seg_a_sex_mle<=24))) ) printf("ERRO! Entre com um valor entre 0 e 24 horas.\n"); }while( (!((seg_a_sex_mle>=0)&&(seg_a_sex_mle<=24))) ); do { printf("\nLeve\n(caminhar (4-5km/h), limpar a casa, tenis de mesa, etc...)\n[unidade: horas - exemplo: 5]\n: "); scanf("%f",&seg_a_sex_lev); if ( (!((seg_a_sex_lev>=0)&&(seg_a_sex_lev<=24))) ) printf("ERRO! Entre com um valor entre 0 e 24 horas.\n"); }while( (!((seg_a_sex_lev>=0)&&(seg_a_sex_lev<=24))) ); do { printf("\nModerado\n(caminhar (5.5-6.5km/h), andar de bicicleta, dancar, jogar tenis, etc...)\n[unidade: horas - exemplo: 1.5]\n: "); scanf("%f",&seg_a_sex_mod); if ( (!((seg_a_sex_mod>=0)&&(seg_a_sex_mod<=24))) ) printf("ERRO! Entre com um valor entre 0 e 24 horas.\n"); }while( (!((seg_a_sex_mod>=0)&&(seg_a_sex_mod<=24))) ); do { printf("\nIntenso\n(correr (7ou mais km/h), musculacao, futebol, escalada, etc...)\n[unidade: horas - exemplo: 1.5]\n: "); scanf("%f",&seg_a_sex_int); if ( (!((seg_a_sex_int>=0)&&(seg_a_sex_int<=24))) ) printf("ERRO! Entre com um valor entre 0 e 24 horas.\n"); }while( (!((seg_a_sex_int>=0)&&(seg_a_sex_int<=24))) ); if ((seg_a_sex_rep+seg_a_sex_mle+seg_a_sex_lev+seg_a_sex_mod+seg_a_sex_int)!=24) { printf("ERRO! O total de horas soma: %.1f horas.\nLembre-se que o total de horas deve somar 24.\n",seg_a_sex_rep+seg_a_sex_mle+seg_a_sex_lev+seg_a_sex_mod+seg_a_sex_int); printf("\n"); system("pause"); system("cls"); } }while ((seg_a_sex_rep+seg_a_sex_mle+seg_a_sex_lev+seg_a_sex_mod+seg_a_sex_int)!=24); system("cls"); do { printf("Nos dias de Sabado e Domingo entre com o valor de quantas horas diarias voce realiza:\n(Lembre-se que o total de horas deve somar 24H.)\n"); do { printf("\nRepouso\n(dormir, ler na cama, etc...)\n[unidade: horas - exemplo: 8]\n: "); scanf("%f",&sab_e_dom_rep); if ( (!((sab_e_dom_rep>=0)&&(sab_e_dom_rep<=24))) ) printf("ERRO! Entre com um valor entre 0 e 24 horas.\n\n"); }while( (!((sab_e_dom_rep>=0)&&(sab_e_dom_rep<=24))) ); do { printf("\nMuito Leve\n(em pe, escrever, jogar cartas, tocar instrumento musical, etc...)\n[unidade: horas - exemplo: 8]\n: "); scanf("%f",&sab_e_dom_mle); if ( (!((sab_e_dom_mle>=0)&&(sab_e_dom_mle<=24))) ) printf("ERRO! Entre com um valor entre 0 e 24 horas.\n\n"); }while( (!((sab_e_dom_mle>=0)&&(sab_e_dom_mle<=24))) ); do { printf("\nLeve\n(caminhar (4-5 km/h), limpar a casa, tenis de mesa, etc...)\n[unidade: horas - exemplo: 5]\n: "); scanf("%f",&sab_e_dom_lev); if ( (!((sab_e_dom_lev>=0)&&(sab_e_dom_lev<=24))) ) printf("ERRO! Entre com um valor entre 0 e 24 horas.\n\n"); }while( (!((sab_e_dom_lev>=0)&&(sab_e_dom_lev<=24))) ); do { printf("\nModerado\n(caminhar (5.5-6.5 km/h), andar de bicicleta, dancar, jogar tenis, etc...)\n[unidade: horas - exemplo: 1.5]\n: "); scanf("%f",&sab_e_dom_mod); if ( (!((sab_e_dom_mod>=0)&&(sab_e_dom_mod<=24))) ) printf("ERRO! Entre com um valor entre 0 e 24 horas.\n\n"); }while( (!((sab_e_dom_mod>=0)&&(sab_e_dom_mod<=24))) ); do { printf("\nIntenso\n(correr (7ou mais km/h), musculacao, futebol, escalada, etc...)\n[unidade: horas - exemplo: 1.5]\n: "); scanf("%f",&sab_e_dom_int); if ( (!((sab_e_dom_int>=0)&&(sab_e_dom_int<=24))) ) printf("ERRO! Entre com um valor entre 0 e 24 horas.\n\n"); }while( (!((sab_e_dom_int>=0)&&(sab_e_dom_int<=24))) ); if ((sab_e_dom_rep+sab_e_dom_mle+sab_e_dom_lev+sab_e_dom_mod+sab_e_dom_int)!=24) { printf("ERRO! O total de horas soma: %.1f horas.\nLembre-se que o total de horas deve somar 24.\n",sab_e_dom_rep+sab_e_dom_mle+sab_e_dom_lev+sab_e_dom_mod+sab_e_dom_int); printf("\n"); system("pause"); system("cls"); } }while ((sab_e_dom_rep+sab_e_dom_mle+sab_e_dom_lev+sab_e_dom_mod+sab_e_dom_int)!=24); printf("cls"); fator_seg_a_sex=(((seg_a_sex_rep*1)+(seg_a_sex_mle*1.5)+(seg_a_sex_lev*2.5)+(seg_a_sex_mod*5)+(seg_a_sex_int*7))/24); fator_sab_e_dom=(((sab_e_dom_rep*1)+(sab_e_dom_mle*1.5)+(sab_e_dom_lev*2.5)+(sab_e_dom_mod*5)+(sab_e_dom_int*7))/24); fator_total=(((fator_seg_a_sex*5)+(fator_sab_e_dom*2))/7); calorias_diarias_real=(calorias_diarias_teorico*fator_total); imc = ( massa / ( (altura/100)*(altura/100) ) ); return(0); } int subprog_salvar () { FILE *p; char nome_arquivo[41]; int i; printf("\nEntre com o nome do arquivo: "); scanf("%s",&nome_arquivo); for (i=0 ; nome_arquivo[i]!='{FONTE}' ; i++); nome_arquivo[i]='.'; nome_arquivo[i+1]='t'; nome_arquivo[i+2]='x'; nome_arquivo[i+3]='t'; nome_arquivo[i+4]='{FONTE}'; if (!(p = fopen(nome_arquivo,"w"))) { printf("\nErro! Impossivel abrir o arquivo.\n\n"); system("pause"); exit(1); } //inicio { fprintf(p,"==================================================================="); fprintf(p,"\nNome: %s",nome); fprintf(p,"\nSexo: "); if ( (sexo=='H') || (sexo=='h') ) fprintf(p,"Masculino."); else if ( (sexo=='M') || (sexo=='m') ) fprintf(p,"Feminino."); fprintf(p,"\nIdade: %d anos.",idade); fprintf(p,"\nAltura: %.2f metros.",altura/100); fprintf(p,"\nMassa: %.1f kG.",massa); fprintf(p,"\nIMC: %.2f kG / m^2.",imc); if ( ( (sexo=='H') || (sexo=='h') ) && (imc>=28) ) fprintf(p," - acima do normal, verifique isso!"); else if (((sexo=='M')||(sexo=='m'))&&(imc>=25)) fprintf(p," - acima do normal, verifique isso!"); else fprintf(p,"."); fprintf(p,"\n\nATUAL:"); fprintf(p,"\n|-> Massa magra: %.1f kG (%.1f%%)",massa_magra_ini,(100-perc_gord_ini)); fprintf(p,"\n|-> Massa gorda: %.1f kG (%.1f%%)",massa_gorda_ini,perc_gord_ini); fprintf(p,"\n=>> Massa total: %.1f kG (100%%)",massa); fprintf(p,"\n\nDESEJADO:"); fprintf(p,"\n|-> Massa magra: %.1f kG (%.1f%%)",massa_magra_fim,(100-perc_gord_fim)); fprintf(p,"\n|-> Massa gorda: %.1f kG (%.1f%%)",massa_gorda_fim,perc_gord_fim); fprintf(p,"\n=>> Massa total: %.1f kG (100%%)",massa_fim); fprintf(p,"\n\nDIFERENCA:"); fprintf(p,"\n|-> Massa magra a ser perdida: %.1f kG",(massa_magra_fim-massa_magra_ini)); fprintf(p,"\n|-> Massa gorda a ser perdida: %.1f kG",(massa_gorda_ini-massa_gorda_fim)); fprintf(p,"\n=>> Massa total a ser perdida: %.1f kG",(massa-massa_fim)); if (controle==1) fprintf(p,"\n\nO percentual de gordura foi calculado atraves\ndo programa e esse valor nao e muito aconselhado\npara se levar em consideracao!"); fprintf(p,"\n\nValor metabolico de repouso (MMR): %.0f calorias / dia",calorias_diarias_real); if ( (metodo=='A')||(metodo=='a') ) { fprintf(p,"\n\nQuantidade calorica diaria a ser perdida: %.0f kcal",calorias_dia); fprintf(p,"\nQuantidade calorica semanal a ser perdida: %.0f kcal ou %.2f kG",calorias_dia*7,((calorias_dia*7/9)/1000)); if ((calorias_diarias_real-calorias_dia)>=0) fprintf(p,"\n\nQuantidade calorica diaria a ser consumida: %.0f kcal",calorias_diarias_real-calorias_dia); if ((calorias_diarias_real-calorias_dia)<0) fprintf(p,"\n\nQuantidade calorica diaria a ser consumida: 0 kcal\nATENCAO: Esta dieta tende a ser perigosa.",calorias_diarias_real-calorias_dia); fprintf(p,"\n\nQuantidade calorica total a ser perdida: %.0f kcal",(massa_gorda_ini-massa_gorda_fim)*1000*9); fprintf(p,"\n\nDuracao da dieta: %.0f dias ou %.0f semanas.",(((massa_gorda_ini-massa_gorda_fim)*1000*9))/calorias_dia,((((massa_gorda_ini-massa_gorda_fim)*1000*9))/calorias_dia/7)); } if ( (metodo=='B')||(metodo=='b') ) { fprintf(p,"\n\nQuantidade calorica diaria a ser perdida: %.0f kcal",((quilos_semana*1000*9)/7)); fprintf(p,"\nQuantidade calorica semanal a ser perdida: %.0f kcal ou %.2f kG",(quilos_semana*1000*9),quilos_semana); if ((calorias_diarias_real-((quilos_semana*1000*9)/7))>=0) fprintf(p,"\n\nQuantidade calorica diaria a ser consumida: %.0f kcal",calorias_diarias_real-((quilos_semana*1000*9)/7)); if ((calorias_diarias_real-((quilos_semana*1000*9)/7))<0) fprintf(p,"\n\nQuantidade calorica diaria a ser consumida: 0 kcal\nATENCAO: Esta dieta tende a ser perigosa.",calorias_diarias_real-((quilos_semana*1000*9)/7)); fprintf(p,"\n\nQuantidade calorica total a ser perdida: %.0f kcal",(massa_gorda_ini-massa_gorda_fim)*1000*9); fprintf(p,"\n\nDuracao da dieta: %.0f dias ou %.0f semanas.",(((massa_gorda_ini-massa_gorda_fim)*1000*9))/((quilos_semana*1000*9)/7),((((massa_gorda_ini-massa_gorda_fim)*1000*9))/((quilos_semana*1000*9)/7)/7)); } fprintf(p,"\n\n==================================================================="); fprintf(p,"\n\n\nAutor: Carlos E. Baldocchi\nBug e contato: carlos.baldocchi@gmail.com\nOferecimento a: http://www.guiadohardware.net/\n http://www.hipertrofia.org/\n\n"); } //fim fclose(p); printf("\n\nOs dados foram salvos no diretorio atual, no arquivo: %s - com sucesso!",nome_arquivo); return(0); }
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituiçăo
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Desempenho abaixo do esperado - travadas e congelamento do sistema ope... (5)
Bash ao invés de Fish no CachyOS (1)
Linux rodando do hd externo ou ssd? (4)
[Python] Automaçăo de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas ŕs imagens de uma pasta