Jump to content
Fórum Script Brasil
  • 0

Problema em código (INICIANTE)


athoslive

Question

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 to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 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;       

}

Edited by Binder
Link to comment
Share on other 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 to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...