Exercicio 1 // ######### util.h ######### #ifndef UTIL_H #define UTIL_H #include <string> using namespace std; int lerNumero(string); #endif //######### util.cpp ######### #include <iostream> #include <string> #include "util.h" using namespace std; int lerNumero(string x){ int n; cout << x; cin >> n; return n; } // ######### exercicio1.cpp ######### #include <iostream> #include <string> #include "util.h" using namespace std; int main(){ int x = lerNumero(string("bla bla :")); return 0; }
Exercicio 2 // ######## ContCirc.h ######## #ifndef CONTCIRC_H #define CONTCIRC_H namespace NS_ContCirc { class ContCirc { private : int n_nums; int current; public : ContCirc(int); void conta(); int valor(); }; } #endif // ####### ContCirc.cpp ####### #include "ContCirc.h" namespace NS_ContCirc { ContCirc::ContCirc(int circ){ n_nums = circ; current = 0; } void ContCirc::conta(){ current = (current + 1) % n_nums; } int ContCirc::valor(){ return current; } } // ####### exercicio2.cpp ######## #include <iostream> #include "ContCirc.h" using namespace std; using namespace NS_ContCirc; int main() { ContCirc c(5); c.conta(); c.conta(); c.conta(); cout << c.valor() << endl; for (int i=0;i!=4;i++) c.conta(); cout << c.valor(); return 0; }
Exercicio 3 // ######### Media.h ######## #ifndef MEDIA_H #define MEDIA_H namespace NS_Media{ class Media{ private: int acumulador; int contador; public: Media(); void limpa(void); void junta(int); float resultado(); }; #endif } // ######## Media.cpp ####### #include "media.h" namespace NS_Media{ Media::Media(){ acumulador = 0; contador = 0; } void Media::limpa(void){ acumulador = 0; contador = 0; } void Media::junta(int x){ acumulador += x; contador++; } float Media::resultado(){ return ((float)acumulador) / contador; } } // ######## exercicio3.cpp ######## #include <iostream> #include "media.h" using namespace std; int main() { NS_Media::Media m; m.junta(2); m.junta(33); m.junta(4); m.junta(51); m.junta(6); cout << m.resultado(); return 0; }