Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it L'avatar di Lupin
    Registrato dal
    May 2005
    Messaggi
    45

    C++ piccolo problema

    Salve !
    Ho un piccolo problema dovrei compilare un programma che mi permetta di inserire un valore es. 1000, e come risultatato dovrei avere il valore di 4 numeri che moltiplicati fra loro a*b*c*d mi diano il valore di input cioè 1000
    Chi mi può aiutare ?
    Grazie !

    _____________________________________
    La libertà è una strada che raramente viene percorsa dalla moltitudine !
    _____________________________________

  2. #2
    Utente di HTML.it L'avatar di DydBoy
    Registrato dal
    Jul 2005
    Messaggi
    165
    Ci sono tante soluzioni possibili, non hai limitazioni di nessun tipo ?

    Devi trovare tuttte le possibili combinazioni?

    Te ne basta una?

  3. #3
    Utente di HTML.it L'avatar di Lupin
    Registrato dal
    May 2005
    Messaggi
    45
    me ne basta una.
    Grazie
    _____________________________________
    La libertà è una strada che raramente viene percorsa dalla moltitudine !
    _____________________________________

  4. #4
    Utente di HTML.it L'avatar di DydBoy
    Registrato dal
    Jul 2005
    Messaggi
    165
    Domanda 1 : a,b,c,d devono essere numeri interi positivi ?

    Domanda 2 : a,b,c,d possono assumere valori uguali o necessariamente devono essere diversi?

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2005
    Messaggi
    156
    ora non ho il compilatore sotto mano quindi non ti garantisco il corretto funzionamento, provalo e dimmi se va o no (conosco il c++ da pochissimo me lo sto imparando a casa)

    codice:
    #include <iostream>
    using namespace std;
    
    main()
    {
         int num, i,k,j,y;
    
         cout<<"Inserisci un numero:";
         cin>>num;
         for(i=0; i<=10; i++)
         for(k=0; k<=10; k++)
         for(j=0; j<=10; j++)
         for(y=0; y<=10; y++)
         if (i*k*j*y==num) {
         cout<<i,j,k,y;
         break;
         }
         getchar();
         return 0;
    }

  6. #6
    Originariamente inviato da xeroz
    ora non ho il compilatore sotto mano quindi non ti garantisco il corretto funzionamento, provalo e dimmi se va o no (conosco il c++ da pochissimo me lo sto imparando a casa)
    Guarda che fa il tuo programma:
    codice:
    Inserisci un numero: 1000
    
    12224445555555555558101010101010101010101010
    Mi sa che hai sbagliato qualcosa

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2005
    Messaggi
    156
    accidenti..hehe devo aver si sbagliato qualcosa . ho fatto un programmino simile tempo fa in pascal e funzionava. purtroppo però ora sto usando il portatile e non ho installato il compilatore e tutte le mie robe quindi non posso fare le prove

  8. #8
    Utente di HTML.it L'avatar di DydBoy
    Registrato dal
    Jul 2005
    Messaggi
    165
    codice:
    #include <iostream>
    using namespace std;
    
    int main()
    {
         int num, i,k,j,y;
    	 int found = 0;
    
         cout<<"Inserisci un numero:";
         cin>>num;
         for(i=0; i<=10 &&!found; i++)
         for(k=0; k<=10 && !found; k++)
         for(j=0; j<=10 && !found; j++)
         for(y=0; y<=10 && !found; y++)
    	 if (i*k*j*y==num)
    			{
    			cout<<i<<"*"<<j<<"*"<<k<<"*"<<y;
    			cout<< endl;
    			found = 1;
    			}
         getchar();
         return 0;
    }
    Funzionava bene, solo che con il break usciva solo dall'ultimo For e non da tutti gli altri.

    Ho inserito anche una "simil" formattazione per il risultato.

    P.S. Se togli il found ti elenca tutte le possibili combinazioni.

    Ciao!

  9. #9
    Utente di HTML.it L'avatar di Lupin
    Registrato dal
    May 2005
    Messaggi
    45
    Grazie DydBoy !
    E' proprio quello che cercavo.
    Sei grandeeee.
    _____________________________________
    La libertà è una strada che raramente viene percorsa dalla moltitudine !
    _____________________________________

  10. #10
    Utente di HTML.it L'avatar di Lupin
    Registrato dal
    May 2005
    Messaggi
    45
    E se volessimo migliorarlo? Per esempio generando combinazioni diverse dando sempre lo stesso risultato?
    _____________________________________
    La libertà è una strada che raramente viene percorsa dalla moltitudine !
    _____________________________________

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 © 2025 vBulletin Solutions, Inc. All rights reserved.