Ir para conteúdo
Fórum Script Brasil
  • 0

Problema em código (INICIANTE)


athoslive

Pergunta

Quando eu coloco o valor e aperto v (de a vista) ele não mostra as variáveis no printf.

Eu quero saber como fazer ele funcionar corretamente !

#include<stdio.h>
#include<conio.h>

main()
{
    char pg;
    float v,t,t2,t3,t4;
    int p;
    inicio:
    clrscr();
    printf("Digite o valor do produto");
    scanf("%f",&v);
    printf("Escolha se vai pagar a vista ou em parcelas (V-P)");
    scanf("%s",&pg);
    if(pg=='v' || pg=='V')
    {
    t4=v*0.10;
    printf("Com o desconto de 10 % a vista, o desconto sera de:%.2f",t4);
    t3=v-t4;
    printf("\n então o valor total sera de:%.2f",t3);
    printf("\nO vendedor ganha 10 %  de comicao,ou seja, ele ganhara nesta venda:%.2f",t4);
    }
    if(pg=='p' || pg=='P')
    {
    printf("Digite o numero de parcelas (MAXIMO DE 10 PARCELAS) :");
    scanf("%d",&p);
    t=v/p;
    printf("O valor de cada parcela sera de:%.2f",t);
    t2=v*0.5;
    printf("\nO vendedor ganha 5% de comicao,ou seja, ele ganhara nesta venda:%.2f",t2);
    }
    getch();
}

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

tente isso:

#include<stdio.h>
#include<conio.h>

main()
{
    char pg;
    float v=0,t=0,t2=0,t3=0,t4=0;
    int p=0;

    printf("Digite o valor do produto:");
    scanf("%f",&v);
    
    printf("Escolha se vai pagar a vista ou em parcelas (V-P)");
    scanf("%s",&pg);
    
    if(pg=='v' || pg=='V')
    {
         t4= (v *0.10);
         printf("Com o desconto de 10 por cento a vista, o desconto sera de:%.2f",t4);
         t3= (v-t4);
         printf("\n então o valor total sera de:%.2f",t3);
         printf("\nO vendedor ganha 10 por cento de comicao,ou seja, ele ganhara nesta venda:%.2f",t4);
    }
    
    if(pg=='p' || pg=='P')
    {
         printf("Digite o numero de parcelas (MAXIMO DE 10 PARCELAS) :");
         scanf("%d",&p);
         t= (v/p);
         printf("O valor de cada parcela sera de:%.2f",t);
         t2=(v * 0.05);
         printf("\nO vendedor ganha 5 por cento de comicao,ou seja, ele ganhara nesta venda:%.2f",t2);
    }
       getch();
       return 0;       

}

Editado por Binder
Link para o comentário
Compartilhar em outros sites

  • 0

AthosLive,

Tem mais duas coisas erradas no seu codigo

pg é um char e você ta usando scanf("%s", &pg);

Quando você usa %s o scanf vai te retornar a tecla que você pressionou mais o terminar de string (\ 0) e como você alocou apenas um byte (char) está corrompendo a memoria do seu programa.

O correto é usar scanf("%c", &pg) que vai te retornar apenas um byte.

O outro erro é que comissão é com dois "s" e não com ç (rs)

Abs

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...