Ajuda visualg

1 resposta
visualg
A

Boa tarde,
Esse é o desafio que preciso cumprir, porém meu programa não funciona com os valores de 1 a 10 copias… Alguém consegue averiguar qual o erro que cometi?

  1. Uma papelaria faz cópias de documentos (xerox) pelos seguintes valores:
    a) De 1 a 10 cópias, R$ 0.50;
    b) De 11 a 50 cópias, R$ 0.30;
    c) De 51 a 100 cópias, R$ 0.25;
    d) Acima de 100 cópias, R$ 0.12;
    Sendo que o usuário informará a quantidade de cópias e o valor da encadernação (todas
    cópias irão ser encadernadas juntas), mostre no vídeo o valor a receber pela papelaria.

esse é o algarismo que eu fiz:

Var
// Seção de Declarações das variáveis
nc, enca, vc, total : real

Inicio
// Seção de Comandos, procedimento, funções, operadores, etc…
escreva (“Informe o número de copias:” )
leia (nc)
escreva (“Informe o valor da encadernação:” )
leia (enca)

se (nc <= 10) entao
vc <- 0.5
total <- vc * nc + enca
senao

se (nc > 11) entao
se (nc < 50) entao
vc <- 0.3
total <- vc * nc + enca
senao

se (nc > 51) entao
se (nc <= 100) entao
vc <- 0.25
total <- vc * nc + enca
senao

se (nc > 100) entao
vc <- 0.12
total <- vc * nc + enca

fimse
fimse
fimse
fimse

escreva ("O valor total é de: ", total )

fimalgoritmo

1 Resposta

Jelson1

O problema está na sua estrutura de decisão, você pode começar a avaliar do maior valor para o menor.
E só no final, você realiza o cálculo:

//estrutura de decisão!
se nc > 100 entao
   vc <- 0.12
senao 
   se nc > 50 entao
      vc <- 0.25
   senao
      se nc > 10 então
         vc <- 0.30
      senao
         vc <- 0.50
      fimse
   fimse
fimse

total <- vc * nc + enca
escreval ("O valor total é de: ", total )

fimalgoritmo
Criado 11 de maio de 2020
Ultima resposta 11 de mai. de 2020
Respostas 1
Participantes 2