Ir ao conteúdo
  • Cadastre-se
Arya Stark

Dificuldade em algoritmo c++

Recommended Posts

Boa noite. Estou com uma grande dificuldade em realizar a atividade abaixo, ainda não peguei o raciocínio lógico do exercício com relação à elaboração do algoritmo. 

Lembrando que o algoritmo deve ser feito em C++

Se alguém puder me ajudar, agradeço muito.

 

Você tem 1 caixa eletrônico com as seguintes notas: R$50,00 R$20,00 R$10,00 R$2,00 e R$1,00(moeda). Quais notas você retornaria, por exemplo, se o cliente quisesse sacar 48 reais. Demonstre o seu raciocínio lógico e elabore o algoritmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basta você criar uma variável do tipo inteiro para cada valor, onde essas variáveis irão contar a quantidade de notas necessárias (lembre-se de iniciá-las com o valor 0). Crie também uma variável do tipo inteiro para guardar o valor a ser sacado.

 

Depois você faz um ciclo que termina quando o valor for 0.

Dentro desse ciclo você coloca um if seguido de vários else if, sendo que cada um vai ter a condição "valor a ser sacado menos valor da nota maior ou igual a zero" (lembre que os if's tem que estar na ordem decrescente de valor da nota), se sim, você aumenta um na variável de valor que está no if e atualiza o valor a ser sacado para "valor a ser sacado menos valor da nota".

 

Acho que dá para entender o que eu quis escrever aqui.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@1freakday É que o enunciado diz que a maquina só emite valores inteiros, então acho que não é considerado valores quebrados nesse exercício aí.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha Tenho uma Solução que não está totalmente correta voce tera que reduzir o gasto desnecessário de recursos.

tai a solução:

 

#include <iostream>

using namespace std;
int main(int argc,char *argv[])
{
    float notas[5] = {50.00,20.00,10.00,5.00,2.00};
    float moeda = 1.00;
    int cont = 0;
    float valor;


    cout << "\nDigite o valor desejado: "<< endl;
    cin >> valor;

    while(valor >= notas[0])
    {
        cont++;
        valor -=50.00;
    }
    cout << cont << " Notas de 50.00" << endl;
    cont = 0;
    while(valor >= notas[1])
    {
        cont++;
        valor -= 20.00;
    }
    cout << cont << " Notas de 20.00" << endl;
    cont = 0;
    while(valor >= notas[2])
    {
        cont++;
        valor -= 10.00;
    }
    cout << cont << " Notas de 10.00" << endl;
    cont = 0;
    while(valor >= notas[3])
    {
        cont++;
        valor -= 5.00;
    }
    cout << cont << " Notas de 5.00" << endl;
    cont = 0;
    while(valor >= notas[4])
    {
        cont++;
        valor -= 2.00;
    }
    cout << cont << " Notas de 2.00" << endl;
    cont = 0;
    while(valor >= moeda)
    {
        cont++;
        cout << cont << " Moeda de 1.00" << endl;
        valor -= 1.00;
    }


    return 0;
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×