• Matéria: Informática
  • Autor: Anônimo
  • Perguntado 9 anos atrás

Uri, socorro , vale nota


Leia um valor inteiro em linguagem C. A seguir, calcule o menor número de notas possíveis (cédulas) no qual o valor pode ser decomposto. As notas consideradas são de
100, 50, 20, 10, 5, 2 e 1. A seguir mostre o valor lido e a relação de notas necessárias. Entrada O arquivo de entrada contém um valor inteiro N (0 < N < 1000000). Saída Imprima o valor lido e, em seguida, a quantidade mínima de notas de cada tipo necessárias, conforme o exemplo fornecido. Não esqueça de imprimir o fim de linha após cada linha, caso contrário seu programa apresentará a mensagem: “Presentation Error”.

Respostas

respondido por: Mathemasium
1
Faz um loop verificando se a condição (valor_de_entrada - valor_da_cedula >= 0) testando o valor das cédulas do maior pro menor.

Pra cada teste em que a condição for verdadeira, subtraia o valor da cédula do valor de entrada e adicione +1 na conta de cédulas necessárias.

Pra cada teste em que a condição for falsa, repita o teste com o menor valor mais próximo e por aí vai.

Aqui tem um código:

#include <iostream>
#include <string>
#include <vector>
#include <sstream>

using namespace std;

int main()
{
    vector<int> ced = {100, 50, 20, 10, 5, 2, 1};
    long cedCount[] = {0, 0, 0, 0, 0, 0, 0};
   
    long entrada;
   
    string entradaS;
    getline (cin, entradaS);
   
    stringstream ss(entradaS);
    ss >> entrada;  
   
    int type = 0; //0 é a de 100, 1 é a de 50, 2 é a de 20...
   
    for (long i = entrada; i > 0;)
    {
        if (i - ced[type] >= 0)
        {
            i -= ced[type];
            cedCount[type]++;           
        }
       
        else
        {
            type++;
        }
    }
   
    cout << "Valor de entrada: " << entrada << endl << endl;
    cout << "Notas de 100: " << cedCount[0] << endl;
    cout << "Notas de 50: " << cedCount[1] << endl;
    cout << "Notas de 20: " << cedCount[2] << endl;
    cout << "Notas de 10: " << cedCount[3] << endl;
    cout << "Notas de 5: " << cedCount[4] << endl;
    cout << "Notas de 2: " << cedCount[5] << endl;
    cout << "Notas de 1: " << cedCount[6] << endl;  
   
}

Anônimo: me ajude ai amigo ;
Mathemasium: É pra quando isso?
Mathemasium: Botei um código, vê se é o que você quer aí.
Anônimo: cara, é para amanha . mas ele quer padrão URi
Anônimo: Esta questão já foi respondida inúmeras vezes com soluções em linguagem C amplamente testadas. Você é que tem que adaptar ao padrão que solicitaram para você e não imaginar que todos conhecem tal padrão.
Perguntas similares