Pular para o conteúdo

Não to conseguindo terminar meu programa

Responder tópico
  • Denunciar
  • Indicar

1. Não to conseguindo terminar meu programa

Enviado em 13/05/2012 - 23:12h

Galera começando agora em c, e to quebrando a cabeça para resolver um pedaço do meu codigo na verdade só o final, fiz até um calculo mentiroso haha.
não estou sabendo fazer o preço e o número de ingressos correspondentes.
A questão é a seguinte:
Um companhia de teatro planeja dar uma série de espetáculos. A direção calcula que, a
R$ 5,00 o ingresso, serão vendidos 120 ingressos, e as despesas montarão em R$ 200,00. A
diminuição de NR$ 0,50 no preço dos ingressos espera-se que haja um aumento de 26 ingressos
vendidos.
Fazer um algoritmo que escreva uma tabela de valores do lucro esperado em função do
preço do ingresso, fazendo-se varias este preço de R$ 5,00 a R$ 1,00 de R$ 0,50 em R$ 0,50.
Escreva, ainda, o lucro máximo esperado, o preço e o número de ingressos correspondentes.



{
puts("\t\t\tVENDA DE INGRESSOS.");
//int
float calc1,calc2,calc3,calc4,calc5,calc6,calc7,calc8,calc9,maior;
float ingr1,ingr2,ingr3,ingr4,ingr5,ingr6,ingr7,ingr8,ingr9;
float venda1,venda2,venda3,venda4,venda5,venda6,venda7,venda8,venda9;

ingr1=5;ingr2=4.50;ingr3=4;ingr4=3.50;ingr5=3;ingr6=2.5;ingr7=2;ingr8=1.5;ingr9=1;
venda1=120;venda2=146;venda3=172;venda4=198;venda5=224;venda6=250;venda7=276;venda8=302;venda9=328;

calc1 = (ingr1 * venda1)-200;
calc2 = (ingr2 * venda2)-200;
calc3 = (ingr3 * venda3)-200;
calc4 = (ingr4 * venda4)-200;
calc5 = (ingr5 * venda5)-200;
calc6 = (ingr6 * venda6)-200;
calc7 = (ingr7 * venda7)-200;
calc8 = (ingr8 * venda8)-200;
calc9 = (ingr9 * venda9)-200;
//maior lucro.
if (calc1>calc2)
maior=calc1;
else
maior=calc2;
if (calc3>maior)
maior=calc3;
if (calc4>maior)
maior=calc4;
if (calc5>maior)
maior=calc5;
if (calc6>maior)
maior=calc6;
if (calc7>maior)
maior=calc7;
if (calc8>maior)
maior=calc8;
if (calc9>maior)
maior=calc9;


printf("Maior lucro que se pode obter $%.1f\n",maior);
AQUI printf("Valor minimo do ingresso $%.1f\n",ingr4); //calculo forçado
AQUI printf("Quantidades de ingressos vendidos = %.1f",venda4); //calculo forçado

printf("\n\n A 5 $%.1f\n",calc1);
printf("A 4,50 $%.1f\n",calc2);
printf("A 4 $%.1f\n",calc3);
printf("A 3,50 $%.1f\n",calc4);
printf("A 3 $%.1f\n",calc5);
printf("A 2,50 $%.1f\n",calc6);
printf("A 2 $%.1f\n",calc7);
printf("A 1,50 $%.1f\n",calc8);
printf("A 1 $%.1f\n",calc9);
return 0;
}

Responder tópico

2. if

Enviado em 16/05/2012 - 11:06h

Amigão,

nessa parte do código:


if (calc3>maior)
maior=calc3;
if (calc4>maior)
maior=calc4;
if (calc5>maior)
maior=calc5;
if (calc6>maior)
maior=calc6;
if (calc7>maior)
maior=calc7;
if (calc8>maior)
maior=calc8;
if (calc9>maior)
maior=calc9;

vc deve colocar "else if" a partir da segunda comparação.

Em relação ao "cálculo forçado", eu sugiro que você, antes de tudo, crie uma equação matemática (tipo ax+b) que te auxilie a compor o algorítimo. Esse tipo de prática é muito boa para se otimizar e até mesmo criar o código.


3. Re: Não to conseguindo terminar meu programa

Enviado em 16/05/2012 - 11:15h

cara pq ao invés de usar varias variaveis vc não usa vetores?

4. Re: Não to conseguindo terminar meu programa

Enviado em 16/05/2012 - 16:43h

Simples. Minha professora não que que agente use vetores.
Ta tudo 'certo' no programa menos o final.

5. if

Enviado em 17/05/2012 - 09:01h

O melhor a se fazer então é criar uma variável "menor" e refazer as comparações; semelhante ao que você fez com o "maior";

Outra opção seria utilizar um switch case para já fazer essas comparações automaticamente.

Com isso, você monta uma espécie de tabela de preços com relacionando a quantidade de ingressos vendidos x preço. Daí você cria uma variável "Ingressos_Vendidos" onde o usuário informa a quantidade e, no switch case, você realiza as comparações e exibe na "Quantidade de ingressos vendidos".

Mas se você fizer um FOR realmente fica bem mais simples. Mas eu entendo sua professora...

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder