/*Questão 1: construir um programa em C que leia o código de venda (‘V’ para vendas à vista e ‘P’ para vendas à prazo) e o valor de venda de 20 produtos. Calcular, armazenar e imprimir o total de vendas à vista, o total de vendas à prazo e o total geral de vendas. */
Ambas as formas abaixo apresentam o mesmo erro durante a compilação:
#include <stdio.h>
main() {
int i;
float tv = 0, tp = 0, tg = 0, pv, pp;
char f;
for(i = 1; i <= 3; i++){
printf("\nInsira a forma de pagamento \n\tDigite 'V' para venda a vista \n\tDigite 'P' para venda a prazo \nForma: ");
scanf("%c", &f);
switch (f){
case 'V': printf("\nInsira o valor do produto: R$ ");
scanf("%f", &pv);
tv += pv; break;
case 'P': printf("\nInsira o valor do produto: R$ ");
scanf("%f", &pp);
tp += pp; break;
}
}
tg = tp + tv;
printf("\nTotal de vendas a vista: %0.2f", tv);
printf("\nTotal de vendas a prazo: %0.2f", tp);
printf("\n\nTotal geral da venda: %0.2f\n\n", tg);
system("PAUSE");
}
e esta
#include <stdio.h>
main() {
int i;
float tv = 0, tp = 0, tg = 0, pv, pp;
char f;
for(i = 1; i <= 3; i++){
printf("\nInsira a forma de pagamento \n\tDigite 'V' para venda a vista \n\tDigite 'P' para venda a prazo \nForma: ");
scanf("%c", &f);
if (f == 'V'){
printf("\nInsira o valor do produto: R$ ");
scanf("%f", &pv);
tv += pv;}
else if (f == 'P'){
printf("\nInsira o valor do produto: R$ ");
scanf("%f", &pp);
tp += pp; }
}
}
tg = tp + tv;
printf("\nTotal de vendas a vista: %0.2f", tv);
printf("\nTotal de vendas a prazo: %0.2f", tp);
printf("\n\nTotal geral da venda: %0.2f\n\n", tg);
system("PAUSE");
}
O primeiro loop funciona perfeitamente, porem o 2ª loop é pulado e o terceiro inverte a forma de pagamento o primeiro e pede apenas o valor do produto.
Pergunta
luizking93
/*Questão 1: construir um programa em C que leia o código de venda (‘V’ para vendas à vista e ‘P’ para vendas à prazo) e o valor de venda de 20 produtos. Calcular, armazenar e imprimir o total de vendas à vista, o total de vendas à prazo e o total geral de vendas. */
Ambas as formas abaixo apresentam o mesmo erro durante a compilação:
#include <stdio.h>
main() {
int i;
float tv = 0, tp = 0, tg = 0, pv, pp;
char f;
for(i = 1; i <= 3; i++){
printf("\nInsira a forma de pagamento \n\tDigite 'V' para venda a vista \n\tDigite 'P' para venda a prazo \nForma: ");
scanf("%c", &f);
switch (f){
case 'V': printf("\nInsira o valor do produto: R$ ");
scanf("%f", &pv);
tv += pv; break;
case 'P': printf("\nInsira o valor do produto: R$ ");
scanf("%f", &pp);
tp += pp; break;
}
}
tg = tp + tv;
printf("\nTotal de vendas a vista: %0.2f", tv);
printf("\nTotal de vendas a prazo: %0.2f", tp);
printf("\n\nTotal geral da venda: %0.2f\n\n", tg);
system("PAUSE");
}
e esta
#include <stdio.h>
main() {
int i;
float tv = 0, tp = 0, tg = 0, pv, pp;
char f;
for(i = 1; i <= 3; i++){
printf("\nInsira a forma de pagamento \n\tDigite 'V' para venda a vista \n\tDigite 'P' para venda a prazo \nForma: ");
scanf("%c", &f);
if (f == 'V'){
printf("\nInsira o valor do produto: R$ ");
scanf("%f", &pv);
tv += pv;}
else if (f == 'P'){
printf("\nInsira o valor do produto: R$ ");
scanf("%f", &pp);
tp += pp; }
}
}
tg = tp + tv;
printf("\nTotal de vendas a vista: %0.2f", tv);
printf("\nTotal de vendas a prazo: %0.2f", tp);
printf("\n\nTotal geral da venda: %0.2f\n\n", tg);
system("PAUSE");
}
O primeiro loop funciona perfeitamente, porem o 2ª loop é pulado e o terceiro inverte a forma de pagamento o primeiro e pede apenas o valor do produto.
alguém poderia me ajudar ?
Grato.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.