Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - eserzizio sui multipli
Forum - C/C++ - eserzizio sui multipli

Avatar
wicca89 (Normal User)
Rookie


Messaggi: 45
Iscritto: 16/01/2009

Segnala al moderatore
Postato alle 22:21
Sabato, 18/04/2009
Salve sono alle prime armi con il c++ , fin'ora non ho avuto molti problemi ma mi sono bloccata su questo esercizio...potete aiutarmi? la traccia è questa:
Scrivere un programma che scrive tutti i numeri interi mtipli di 3 e non di 7 inclusi tra 15 e 100(utilizzare il ciclo while)
Grazie in anticipo a chiunque risponderà!!!

PM Quote
Avatar
andrea.b89 (Ex-Member)
Pro


Messaggi: 129
Iscritto: 03/03/2009

Segnala al moderatore
Postato alle 22:51
Sabato, 18/04/2009
Solitamente si dice che un numero intero N è multiplo di un numero intero M quando N ha fra i suoi divisori M e si può scrivere quindi N = K * M. Un altro modo di vedere la cosa è : un numero N è multiplo di M se la divisione intera N / M da resto 0.

Sulla base di queste considerazioni allora puoi scrivere un algoritmo che verifichi se ogni numero da 15 a 100 è multiplo di 3 ma non di 7.

Per prima cosa verifichi se il numero N è divisibile per 3. Se lo è allora verifichi anche per il 7 e se non è multiplo di 7 lo stampi.

Per calcolare il resto in C++ puoi fare nel seguente modo :

Codice sorgente - presumibilmente C/C++

  1. if (N % 3 == 0)
  2.    if (N % 7 != 0)
  3.       //stampa numero



N è il valore da verifica che nel tuo programma potrebbe essere una variabile.
% è l'operatore che permette di calcolare il resto della divisione fra i operandi.
Detto questo applichi il procedimento all'interno del tuo programma per ogni valore sfruttando giustamente un while.

Se avrai altri problemi avvisa

Spero di essere stato chiaro e di aiuto :k:

PM Quote
Avatar
wicca89 (Normal User)
Rookie


Messaggi: 45
Iscritto: 16/01/2009

Segnala al moderatore
Postato alle 12:21
Domenica, 19/04/2009
nada proprio non ci riesco.....:doubt::doubt::doubt::(:(

PM Quote
Avatar
andrea.b89 (Ex-Member)
Pro


Messaggi: 129
Iscritto: 03/03/2009

Segnala al moderatore
Postato alle 12:37
Domenica, 19/04/2009
prova con questo

Codice sorgente - presumibilmente C++

  1. int min = 15;
  2. int max = 100;
  3. int N;
  4.  
  5. N = min;
  6. while(N <= max){
  7.   if (N % 3 == 0) //se multiplo di 3
  8.      if (N % 7 != 0) //se non multiplo di 7
  9.          cout << N << "\n";
  10.   N++;
  11. }



spero di essere stato chiaro e di aiuto :k:
se hai domande sono a disposizione :k:

PM Quote
Avatar
wicca89 (Normal User)
Rookie


Messaggi: 45
Iscritto: 16/01/2009

Segnala al moderatore
Postato alle 12:43
Domenica, 19/04/2009
credo di aver capito dove sbagliavo...io nn mettevo n++ e quindi mi stampava sempre la prima cifra :hail: grazie!!

PM Quote
Avatar
andrea.b89 (Ex-Member)
Pro


Messaggi: 129
Iscritto: 03/03/2009

Segnala al moderatore
Postato alle 12:46
Domenica, 19/04/2009
comunque un consiglio, la prossima volta magari posta il codice, perchè aiuta chi ti deve rispondere nel capire l'errore che commetti. Adesso non so cosa tu avessi scritto ma magari se anche all'inizio ti mancava solamente il N++ e postavi il codice la cosa veniva risolta subito. Il mio vuole solo essere un consiglio ;)

:k:

Ultima modifica effettuata da andrea.b89 il 19/04/2009 alle 12:49
PM Quote
Avatar
gigisoft (Member)
Guru


Messaggi: 695
Iscritto: 11/10/2008

Segnala al moderatore
Postato alle 12:20
Lunedì, 20/04/2009
Testo quotato

Postato originariamente da andrea.b89:
[...]

Per calcolare il resto in C++ puoi fare nel seguente modo :

Codice sorgente - presumibilmente C/C++

  1. if (N % 3 == 0)
  2.    if (N % 7 != 0)
  3.       //stampa numero



[...]




Ma cosi' devi scorrere tutti i numeri e fare ogni volta due controlli.
E' piu' efficiente cosi':

Codice sorgente - presumibilmente C/C++

  1. int i = 15;
  2.  
  3. while (i < 100)
  4. {
  5.   if ((i % 7) != 0)
  6.   printf("il numero %i e' divisibile per 3 e non per 7", i);
  7.   i += 3;
  8. }



Ciao! :k:


Le cose si fanno per bene o non si fanno affatto
PM Quote