Ragazzi ho difficolta con questo esercizio mi dareste una mano

Pubblicità

insidethelollo98

Nuovo Utente
Messaggi
7
Reazioni
0
Punteggio
20
Scrivere una procedura che calcola somma dei numeri restituiti dalla chiamata ad una funzione che dato un intero restituisce il numero pari più vicino ( lo stesso numero se è pari altrimenti il numero aumento di uno). La funzione viene chiamata 3 volte con parametro attuale dato dall'utente. Esempio: se la funzione viene chiamata con parametro 5, poi 2 e poi 7, la procedura calcola 6+2+8. Il main stampa 16. Se un numero è pari si usa la funzione % che da il resto della divisione di due numeri

Fin ora ho fatto solo questo non so come procedere
Codice:
#include <iostream>
using namespace std;

int paridisp(int n){
cout<< "Inserire un valore ";
cin>>n;
if (n%2==0){
contaggioPari = conteggioPari+1;
}
else {
conteggioPari=conteggioDispari+1;
}

return n;
}

int main(int argc, char** argv) {
return 0;
}
 
Ultima modifica da un moderatore:
Hai fatto una funzione che in teoria dovrebbe contare quanti pari e quanti dispari ma in realtà restituisce sempre il numero inputato dall'utente.

Inoltre, non essendoci un ciclo, al massimo avrai conteggioPari=1 e l'altro a 0 (o viceversa).
Tralasciando il fatto che le due variabili non sono nemmeno inizializzate.

La cosa più grave però è che non c'entra nulla con quello che ti viene chiesto.

Hai bisogno di una funzione ausiliaria che dato un numero intero n ti restituisca il suo pari più prossimo.
Quindi di un main che cicla per 3 volte, richiedendo un dato all'utente e passandolo alla funzione (per gestirne poi la risposta).

Abbozza qualcosa di concreto e poi lo rivediamo insieme
 
Pubblicità
Pubblicità
Indietro
Top