Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 25
  1. #11
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    grazie mille funziona alla perfezione adesso me lo studio per capire la logica... grazie!

  2. #12
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    anzi sinceramente l'operazione che esegue il programma è: (a+b+c)*(d+e+f) io invece dovevo fare (a*b*c)+(d*e*f)

  3. #13
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    comunque l'ho sistemato l'ho modificato in c++ e inoltre ho sistemato i calcoli per renderlo come mi serviva...
    il codice completo in C++ è:

    codice:
    #include<iostream>
    using namespace std;
    int main() {
        int a, b=1, n=0, somma=0, count=0;
        cout<<"quanti valori vuoi calcolare?"<<endl;
        cin>>n;
        if(n%3!=0)
        {
                    cout<<"errore, inserisci dei multipli di 3 per eseguire correttamente il programma"<<endl;
                    system("pause");
                    return 0;
        }
        cout<<"inserisci questi "<<n<<" valori"<<endl;
        for (int i=1;;i++)
        {
            cin>>a;
            b = b*a;
            count++;
            if (i==3)
            {
                somma = somma + b;
                i=0;
                b=1;
            }
            if (count==n)
                break;
        }
        cout<<"il risultato dell operazione e: "<<somma<<endl;
        system("pause");
        return 0;
    }

  4. #14
    Quote Originariamente inviata da passasooz Visualizza il messaggio
    comunque l'ho sistemato l'ho modificato in c++ e inoltre ho sistemato i calcoli per renderlo come mi serviva...
    il codice completo in C++ è:

    codice:
    #include<iostream>
    using namespace std;
    int main() {
        int a, b=1, n=0, somma=0, count=0;
        cout<<"quanti valori vuoi calcolare?"<<endl;
        cin>>n;
        if(n%3!=0)
        {
                    cout<<"errore, inserisci dei multipli di 3 per eseguire correttamente il programma"<<endl;
                    system("pause");
                    return 0;
        }
        cout<<"inserisci questi "<<n<<" valori"<<endl;
        for (int i=1;;i++)
        {
            cin>>a;
            b = b*a;
            count++;
            if (i==3)
            {
                somma = somma + b;
                i=0;
                b=1;
            }
            if (count==n)
                break;
        }
        cout<<"il risultato dell operazione e: "<<somma<<endl;
        system("pause");
        return 0;
    }
    salve, come posso modificare il codice in questione per fare la somma di (a1*a2*a3)+(a2*a3*a4)?

  5. #15
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Quote Originariamente inviata da reynold85 Visualizza il messaggio
    salve, come posso modificare il codice in questione per fare la somma di (a1*a2*a3)+(a2*a3*a4)?
    Potresti provare a farlo ad esempio: ti servono 2 accumulatori per i prodotti parziali e 1 per la somma.
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  6. #16
    ok, grazie anche io pensavo di agire in quella direzione.
    Ma come posso dire al secondo accumulatore che deve partire da a2 e non da a1? Il problema è che il prodotto a2*a3 non viene effettuato nel primo caso e quindi non posso impostare un for con i=2.
    Forse devo considerare tre variabili a b c ?

  7. #17
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    usi 3 variabili:
    somma = 0
    p1 = 0
    p2 = 0

    più una variabile a che contiene il nuovo numero.

    ad ogni ciclo:
    somma = somma + p1 * a
    p1 = p2 * a
    p2 = a

    in questo modo nei primi 2 cicli verrà sommato 0 e in seguito i vari prodotti parziali
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  8. #18
    grazie, finalmente ce l'ho fatta, ecco il ciclo funzionante

    #include<iostream>


    using namespace std;


    int main ()
    {
    cout<<"quanti numeri metti ";
    int n;
    cin>>n;

    int a;
    int prodotto1=0;
    int prodotto2=0;
    int somma=0;

    for(int i=1;i<=n;i++)
    {
    cout<<"inserisci numero di questi n numeri"<<endl;
    cin>>a;

    somma=somma+prodotto1*a;
    prodotto1=prodotto2*a;
    prodotto2=a;
    }
    cout<<"somma risulta "<<somma<<endl;



    system("pause");

    return 0;

    }
    Nel caso invece debba fare somma=(a1*a2*a3)+(a3*a4*a5) come posso fare? Non posso usare la soluzione di prima, ho provato a introdurre un terzo accumulatore ma non è corretto perchè farebbe il prodotto di 4 numeri . Se uso un accumulatore solo neanche va bene.

  9. #19
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Quote Originariamente inviata da reynold85 Visualizza il messaggio
    grazie, finalmente ce l'ho fatta, ecco il ciclo funzionante


    Nel caso invece debba fare somma=(a1*a2*a3)+(a3*a4*a5) come posso fare? Non posso usare la soluzione di prima, ho provato a introdurre un terzo accumulatore ma non è corretto perchè farebbe il prodotto di 4 numeri . Se uso un accumulatore solo neanche va bene.
    Prova a pensarci da solo...
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  10. #20
    sto provando a risolvere in questo modo: da i=1 a i=3 fai la somma classica a1*a2*a3 utilizzando somma=somma+prodotto*a e l'accumulatore prodotto=prodotto*a. Poi alla fine di questo ciclo con i=3 pongo a=3. Ora dovrei dire a C di fare la stessa cosa però non con i=6 ma con i=5 cioè facendo 2 iterazioni. Il mio problema è che dovrei fare: i=3, i=3+2=5, i=5+2=7....e qui mi sono bloccato. Dovrei fare forse due cicli for annidati?

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