gluiz1 0 Denunciar post Postado Março 19, 2012 Questão 1: construir um programa em C que leia o saldo atual de um cliente de um determinado banco e calcule, armazene e imprima o valor de crédito concedido a ele. Se o saldo for até R$ 500.00, o crédito será 10% do mesmo. Se o saldo for até R$ 1000.00, o crédito será 20% do mesmo. Se o saldo for até R$ 1500.00, o crédito será 25% do mesmo. Se o saldo for até R$ 2000.00, o crédito será 30% do mesmo. (0,25 ponto) #include <stdio.h> main() { float saldo,credito; printf("Digite seu saldo atual em conta: "); scanf("%f", &saldo); if (saldo<=500){ credito=saldo*0.10; printf("Credito concedito: %0.2f\n", credito); } else if (saldo>500<=1000) { credito=saldo*0.20; printf("Credito concedito : %0.2f\n", credito); } else if (saldo>1000<=1500) { credito=saldo*0.25; printf("Credito concedito : %0.2f\n", credito); } else if (saldo>1500<=2000) { credito=saldo*0.30; printf("Credito concedito : %0.2f\n", credito); } system("PAUSE"); } O programa só lê a primeira e a 2 estrutura a restante não há leitura. Acho que to errando no ELSE e no IF. Mas como sou novo em programação to tendo as primeiras dificuldades, se alguem puder me ajudar :D No outro programa é a mesma coisa ____________________________________________________________________________________________________________________ Questão 2: construir um programa em C que leia a altura de o peso de uma pessoa e calcule, armazene e imprima o seu IMC (Índice de Massa Corporal). Imprimir se a pessoa está abaixo do peso, no peso ideal, acima do peso ou obeso. A fórmula do IMC é: IMC = PESO / ALTURA2. (0,25 ponto) • Abaixo de 18,5: abaixo do peso • Entre 18,5 e 24,9: peso normal • Entre 25,0 e 29,9: acima do peso • A partir de 30,0: obeso #include <stdio.h> #include <math.h> main() { float alt,imc; int peso; printf("Digite sua altura: "); scanf("%f", &alt); printf("Digite seu peso: "); scanf("%d", &peso); imc=peso/alt*alt; // fiz desse jeito ai ao lado, porem o certo seria "IMC = PESO / ALTURA2" mas nao consigo por o "^" pra funcionar. if (imc<=18.5) printf("Você esta abaixo do peso %0.2f\n\n", imc); else if (imc>18.5<=24.9); printf("Você esta com peso normal %0.2f\n\n", imc); else if(imc>25.0<=29.9) printf("Você esta acima do peso %0.2f\n\n", imc); } else if(imc>=30.0) printf("Você esta gordo %0.2f\n\n", imc); } system ("PAUSE"); } Nesse eu não consigo calcular corretamente, o sistema não vai. :( Compartilhar este post Link para o post Compartilhar em outros sites
Renato Utsch 24 Denunciar post Postado Março 19, 2012 else if (saldo>500<=1000) Você não pode fazer esse tipo de coisa, sempre dá bagunça. Olha só o que aconteceu no seu: 1º: lembre-se que sempre se avalia o if da esquerda para a direita (excluindo quando você coloca parêntesis na expressão). 2º: Você colocou if(saldo>500, não é? Se saldo for maior que 500, isso vai ser 'verdadeiro', o que é transcrito em 1 em C. Se for menor que 500, isso vai ser 'falso', o que é transcrito em 0 em C. Portanto, no final, esse if vai ser transcrito em 1 das 2 formas abaixo: else if (1<=1000) else if (0<=1000) Você percebe que nas duas o if vai ser executado, pois tanto 1 quanto 0 são menores que 1000? O correto seria isso: else if (saldo>500 && saldo<=1000) Abraços :D Compartilhar este post Link para o post Compartilhar em outros sites
gluiz1 0 Denunciar post Postado Março 20, 2012 Obrigado mesmo, cheguei hoje na faculdade e conversei com uns amigos e eles me mostraram isso. Muito obrigado mesmo. bendido C ! ahuauhauhhuauhauh e suas aspas e seus parenteses e suas chaves ahuhauahua. Compartilhar este post Link para o post Compartilhar em outros sites
Renato Utsch 24 Denunciar post Postado Março 20, 2012 Pois é, C é bem complexo mesmo... Mas, sabendo programar, você tem uma das maiores e melhores armas possíveis. Com C é literalmente possível fazer tudo, ou quase xD Abraços :D Compartilhar este post Link para o post Compartilhar em outros sites