Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Funzione area e perimetro
Forum - C/C++ - Funzione area e perimetro

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
Pedroa (Normal User)
Newbie


Messaggi: 10
Iscritto: 13/11/2013

Segnala al moderatore
Postato alle 10:37
Domenica, 17/11/2013
Io ho una classe con 2 campi privati che sono l'altezza e la lunghezza di un box e io devo calcolare l'area pero quando compilo il mio codice mi vengono numeri sbagliati.
Questo è il mio codice:



#include <iostream>
#include <stdlib.h>
using namespace std;
#include <Box.h>


/*class Box
   {
        private:
            int width;
            int heigth;
        public:
            int area();
            int perimetro();


    };*/
int Box::area( ){

    return w*h;

};

int Box::perimetro( ){

    return (2*w)+(2*h);

}
int main()
{   int a,b;
    cout << "inserisci l'altezza : \n" << endl;
    cin >> a;
    cout << "inserisci la lunghezza : \n" << endl;
    cin >> b;
    Box box;
    box.area( );
    box.perimetro( );


    cout << "Il perimetro del riquadro è : " << box.perimetro() << endl;
    cout << "L'area del riquadro è: " << box.area () << endl;


    system("PAUSE");
    return 0;
}





ho fatto un file . cpp dove c'è dentro i due metodi e il main e poi ho fatto un altro file dove c'è la classe Box.h

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6378
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 11:06
Domenica, 17/11/2013
Ma sei sicuro di avere compilato questo codice senza errori? Non è possibile ...

I due campi privati si chiamano width e heigth e poi utilizzi w e h nei metodi ... non ha senso.

E poi non passi mai i valori a e b all'oggetto creato ... come può fare il calcolo?


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
Poggi Marco (Member)
Guru


Messaggi: 969
Iscritto: 05/01/2010

Segnala al moderatore
Postato alle 11:07
Domenica, 17/11/2013
Ciao!

L' area e il perimetro sono calcolati in modo scorretto perchè i campi width e heigth della classe non sono valorizzabili, nè inizializzabili.
Implementa almeno un costruttore.

PM Quote
Avatar
Pedroa (Normal User)
Newbie


Messaggi: 10
Iscritto: 13/11/2013

Segnala al moderatore
Postato alle 11:15
Domenica, 17/11/2013
Scusate ho sbagliato nella classe ho al posto di width e height ho messo w e h

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6378
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 11:34
Domenica, 17/11/2013
Quando posti del codice fai attenzione altrimenti non si capisce nulla e si perde tempo.

In ogni caso, i campi w e h non sono mai valorizzati.

Per capirci, i valori di a e b come ci arrivano in w e h ? Per magia ?

Ultima modifica effettuata da nessuno il 17/11/2013 alle 11:38


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
Pedroa (Normal User)
Newbie


Messaggi: 10
Iscritto: 13/11/2013

Segnala al moderatore
Postato alle 12:30
Domenica, 17/11/2013
come faccio a farceli arrivare?

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6378
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 12:45
Domenica, 17/11/2013
Su quale libro studi il C++ ?

Sai cosa è un costruttore ?

Sai cosa è un metodo ?


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
Pedroa (Normal User)
Newbie


Messaggi: 10
Iscritto: 13/11/2013

Segnala al moderatore
Postato alle 14:22
Domenica, 17/11/2013
Sisi certo che so cosa sono

PM Quote
Avatar
Poggi Marco (Member)
Guru


Messaggi: 969
Iscritto: 05/01/2010

Segnala al moderatore
Postato alle 14:52
Domenica, 17/11/2013
Testo quotato

Postato originariamente da Pedroa:

Sisi certo che so cosa sono



Interessante...

Perchè non li usi?
In alternativa rendi tutto il contenuto della classe publico.

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo