Oppure

Loading
18/11 15:59
alecdog1
Salve ho un problema nel creare l'algoritmo che richieda questi dettagli specifici. Mi potreste aiutare?


Realizzare la codifica di un algoritmo che, dato in input due numeri na e nb con na non
inferiore a 11 ed nb con valore maggiore di na e minore di 1000, visualizzi e sommi i primi
due numeri consecutivi dispari di 11 compresi tra na e nb.
La codifica deve dare in uscita:

? Un messaggio di nessun numero nel caso di esito negativo ( nessun numero
trovato);
? Un messaggio " trovato solo un numero per cui la somma è pari al numero
trovato";
? Un messaggio " trovati due numeri per cui la somma è pari a....."

Inserire alla fine dell'algoritmo una richiesta di voler continuare a inserire i dati e fare
proseguire il running.
18/11 16:34
Carlo
Sicuramente si. :rotfl:
Ma ci hai solo esposto l'esercizio...
L'esercizio che non funziona dovè? :heehee:
Cos'è che non sai fare, neanche chiedere in input na e nb? :pat:
Ultima modifica effettuata da Carlo 18/11 16:35
in programmazione tutto è permesso
18/11 16:38
alecdog1
ecco
#include <stdlib.h>
#include <iostream>
#include <stdio.h>
using namespace std;

    main()
{
    system("color 1E";);
int a;
int b;
int n=11;
int m;
int i;

cout <<" MULTIPLI DI 11 CONTENUTI NELL'INTERVALLO a-b\n\n";
cout <<"Alunno Luca Lombardo inserisci il valore di a:";
    cin>>a;
    cout <<"Alunno Luca Lombardo inserisci il valore di b:";
    cin>>b;
cout <<"\n";
cout <<"I multipli di 11 dell'intervallo sono i seguenti:\n";
i=1;
n=11;

do
{
m = i*n;

if(m>=a && m<=b)
{
cout<<m<<endl;
}
i++;
} while(m<=b);

system("pause";);
return 0;
}
18/11 16:58
Carlo
Ok, per iniziare, sai come filtrare i numeri dispari?
In C, c'è listruzione mod (%) che restituisce il resto di una divisione, se dividi il tuo m per 2 e da un resto diverso da 0 il numero è disparo:
    do
    {
        m = i*n;

        if(m>=a && m<=b)
        {
            if (m%2 != 0)
            cout<<m<<endl;
        }
        i++;
    } while(m<=b);
in programmazione tutto è permesso
18/11 17:00
alecdog1
ok poi cosa devo fare
18/11 17:04
alecdog1
cosa dovrei fare per visualizzare solo i primi due dispari e sommarli?
18/11 18:09
Carlo
potresti usare due variabili una di nome primo ed un'altra di nome secondo

la variabile primo la usi per fare in modo che inserisci il valore dispari solo quando vale ancora zero:
           if (m % 2 != 0 && primo == 0){
                primo = m;
                cout<<"N1 = "<<primo<<endl;
           }


nello stesso if aggiungi il calcolo per il prossimo numero:
i++;
m = i*n;


a questo punto puoi fare il secondo confronto per verificare se hai un nuovo disparo e contemporaneamente primo non è più uguale a zero... mi aspetto delle domande, un programma si fa ragionando un po', poi come si scrive è il passo successivo:rotfl:
Ultima modifica effettuata da Carlo 18/11 18:11
in programmazione tutto è permesso