Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [C] Problema con programma

    Ecco la consegna:

    progettare e implementare una funzione in c che riceve una cifra intera in euro e, usando solo i tagli di monete e banconote da 1, 2, 5, 10, 20, 50 euro determina qual è il minmo numero di banconote che occorre per formarla

    e questo è il mio codice:

    void controllo_euro ()
    {
    int cifra;
    cout<<"Inserire la cifra in euro:";
    cin>>cifra;


    int pezzi_50=cifra/50;
    int pezzi_20=cifra/20;
    int pezzi_20=cifra/10;
    int pezzi_10=cifra/10;
    int pezzi_5=cifra/5;
    int pezzi_2=cifra/2;
    cifra=cifra-pezzi_50*50;
    cifra=cifra-pezzi_20*20;
    cifra=cifra-pezzi_10*10;
    cifra=cifra-pezzi_5*5;
    cifra=cifra-pezzi_2*2;

    cout<<"Pezzi da 50 euro: ";
    cout<<pezzi_50;
    cout<<"Pezzi da 20 euro: ";
    cout<<pezzi_20;
    cout<<"Pezzi da 10 euro: ";
    cout<<pezzi_10;
    cout<<"Pezzi da 5 euro: ";
    cout<<pezzi_5;
    cout<<"Pezzi da 2 euro: ";
    cout<<pezzi_2;

    }

    grazie mille

  2. #2
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    eh eh
    non credo proprio che il tuo programma funzioni.
    nel senso... se devi trovare il MINIMO NUMERO di banconote dovrai fare dei cicli del tipo

    codice:
    finche' (quello che mi rimane in mano e' maggiore di 50)
    togli cinquanta;
    aumenta di 1 le banconote da 50
    fine ciclo
    
    finche' (quello che mi rimane in mano e' maggiore di 20)
    stessa cosa
    
    stessa cosa per le altre banconote

  3. #3
    Velocemente il codice come ipotizzato da marco_c

    provalo

    Ciao


    codice:
    #include <iostream>
    #include <stdlib.h>
    
    using namespace std;
    
    void controllo_euro (int);
    
    int main(int argc, char *argv[])
    {
        int euro;
        
        while (euro != 0)
        {
        cout << "Inserire la cifra in euro: "; 
        cin >> euro;    
        controllo_euro(euro);
        cout << endl;
        system("PAUSE");
        }	
        return 0;
    }
    
    void controllo_euro (int valore) 
    { 
        int cifra = valore; 
    
        int pezzi_50 = 0; 
        int pezzi_20 = 0; 
        int pezzi_10 = 0; 
        int pezzi_5 = 0; 
        int pezzi_2 = 0;
        int pezzi_1 = 0; 
    
        while (cifra >= 50)
        {
         pezzi_50 = pezzi_50 + 1;
         cifra = cifra - 50;
        }
        
        while (cifra >= 20)
        {
         pezzi_20 = pezzi_20 + 1;
         cifra = cifra - 20;
        }
        
        while (cifra >= 10)
        {
         pezzi_10 = pezzi_10 + 1;
         cifra = cifra - 10;
        }
       
        while (cifra >= 5)
        {
         pezzi_5 = pezzi_5 + 1;
         cifra = cifra - 5;
        }
     
         while (cifra >= 2)
        {
         pezzi_2 = pezzi_2 + 1;
         cifra = cifra - 2;
        }
        
        while (cifra != 0)
        {
         pezzi_1 = pezzi_1 + 1;
         cifra = cifra - 1;
        }   
             
    
        cout << "Pezzi da 50 euro: "; 
        cout << pezzi_50 << endl; 
        cout << "Pezzi da 20 euro: "; 
        cout << pezzi_20 << endl; 
        cout << "Pezzi da 10 euro: "; 
        cout << pezzi_10 << endl; 
        cout << "Pezzi da 5 euro: "; 
        cout << pezzi_5 << endl; 
        cout << "Pezzi da 2 euro: "; 
        cout << pezzi_2 << endl;
        cout << "Pezzi da 1 euro: "; 
        cout << pezzi_1 << endl; 
    }

  4. #4
    ok funzia!

    grazie mille a tutti gente

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.