technik informatyk
Pablino
E-mail: pabllino@wp.pl
28.09.2010r.
Temat: Instalowanie i konfigurowanie srodowiska do pracy w języku programowania C++.
Jest tu link do pobrania kompilatorów m.in. (Code::Blocks).
https://www.wsip.pl/dodatki/programowanie_strukturalne_i_obiektowe
1. Edycja, modyfikacja, kompilacja prostych programów w wybranym srodowisku
programistycznym C++ (Code::Blocks).
2. Ogóla struktura programu w C++ (kompilator Code::Blocks).
#include
using namespace std; - Używamy standardowej przestrzeni
nazwy
int main() - Deklaracja typuów zmiennych integer
( funkcja "main" początek i koniec
programu '{' )
cout << "Hello world !" << endl; - Wprowadza na ekran komunikat
Oto przykład prostego programu na pole prostokąta w C++ :
program na pole prostokata:
# include
using namespace std;
int main()
{
float a,b,polepowierzchni;
cout<<"Podaj bok a i b:";
cin>>a;
cin>>b;
polepowierzchni=a*b;
cout<<"S="<
Przykład programu do obliczana wartosci funkcji :
#include
using namespace std;
int main()
{
float x,y;
cout<<"Podaj wartość x:";
cin>>x;
Y=5*(x*x)+2*x+7;
cout<<"y="<
Przykład programu do obliczania pierwiaska z X :
#include
#include
using namespace std;
int main()
{
float x,y;
cout<<"Podaj wartość x:";
cin>>x;
Y=sqrt (x);
cout<<"y="<
#include
using namespace std;
int main()
{
cout << "Podaj bok a= ";
int a;
cin >> a;
cout << "Pole kwadratu S=" << a*a;
return 0;
}
Przykład programu do obliczania pola trójkąta :
#include
using namespace std;
int main()
{
cout << "Obliczamy pole trójkąta" << endl;
cout << "Podaj długość podstawy trójkąta a=";
int a,h;
cin >> a;
cout << "Podaj długość wysokości trójkąta h=";
cin >> h;
cout << "Pole trójkąta S=" << (a*h)/2;
return 0;
}
OBIEKTY a KLASY
Obiekty - wyodrębniony element rzeczywistosci, mający znaczenie
w rozpatrywanym modelu.
Klasy - opisują rodzaj obiektów, jakie mogą istnieć w programie komputerowym,
czyli jego właściwości i zachowanie. Zbiór obiektów o wspólnych cechach.
Definicja klasy ma postać :
class nazwa_klasy
{
private:
deklaracje danych składowych
public:
prototypy funkcji składowych
};
Przykład:
//deklaracja klasy
class Uczen
{
private:
char imie[20];
char nazwisko[20];
int klasa;
public:
void przyjmij(const char *im, const char *nz, int kl);
void pokaz() const;
void promuj();
};
public - określa publiczny dostęp do składowych klas;
program używający obiektu danej klasy ma bezpośredni dostęp
do części publicznej,
private - określa prywatny dostęp do składowych klasy;
program może uzyskać dostęp do tych składowych wyłącznie
za pośrednictwem publicznych składowych,
protected - określa chroniony dostęp do składowych klasy;
dostępność jak dla private, ale dodatkowo składowe
dostępne dla klas pochodnych.
Modyfikator const na końcu nagłówka funcji oznacza,
że funkcja nie zmienia wywołującego ją obiektu.
Oto prototyp programu bankomat:
#include
using namespace std;
int main()
{
int pin[3];
char wyjscie;
char x;
int stan =400;
int kwota;
cout<
{
cout<<"\tPodaj pin : ";
cin>>pin[3];
cout<
{
case '1': return 0; break;
case '2': cout<<"\tstan konta: "<
{
cout<<"\tile pieniedzy chcesz wyplacic?";
cin>>kwota;
if (kwota %10 !=0)
{
cout<<"UWAGA: nie mozna wyplacic takiej kwoty"<
while (kwota %10 !=0);
cout<<"\twyplacono " <
}
} while (kwota %10 !=0);
cout<<"\twyplacono " <
Program bankomacik :
#include
#include
class bankomat
{
public:
char nazwisko[10];
char imie[10];
int pin;
long int NumerKonta;
float StanKonta;
bankomat(char*nazw, char*im, int p, long int nr, float stan);
void wypisz()
{
cout<
Temat : Konstruktor i Dekonstruktor
Konstruktor i destruktor to specjalne funkcje skladowe klasy.
Konstruktor - ma taką samą nazwe jak nazwa klasy, a jego zadaniem jest
budowanie obiektu swojej klasy.
Destruktor - ma nazwę taką samą jak klasa, ktorej dotyczy jednak nazwa ta jest
poprzedzona ~ (tyldą)
Deklarowanie konstruktorow: static, const, volatite
(Gdy tworzymy obiekty danej klasy komputer przydziela im pamięć im więcej
obiektów utworzymy tym więkrze będzoie zużycie pamięci aby zwolnić
rezerwowaną dynamiecznie pamięć stosuje się destruktory).
Przykład konstruktora:
#include
using namespace std;
class motocykl
{
int rocznik;
std::string producent;
public:
std::string model;
motocykl(); //KONSTRUKTOR
};
motocykl::motocykl() //DEFINICJA KONSTRUKTORA
{
cout<<"Do tej pory nasz obiekt ma dane: \n";
cout<<"\n Producent: "<
:
#include
using namespace std;
class motocykl
{
int rocznik;
std::string producent;
public:
std::string model;
motocykl();
~motocykl(); //DEKLARACJA DESTRUKTORA
};
motocykl::motocykl()
{
cout<<"Do tej pory nasz obiekt ma dane: \n";
cout<<"\n Producent: "<
#include
using namespace std;
class motocykl
{
int rocznik;
std::string producent;
public:
std::string model;
motocykl(); //KONSTRUKTOR
};
motocykl::motocykl() //DEFINICJA KONSTRUKTORA
{
cout<<"Do tej pory nasz obiekt ma dane: \n";
cout<<"\n Producent: "<
#include
using namespace std;
class motocykl
{
int rocznik;
std::string producent;
public:
std::string model;
motocykl();
~motocykl(); //DEKLARACJA DESTRUKTORA
};
motocykl::motocykl()
{
cout<<"Do tej pory nasz obiekt ma dane: \n";
cout<<"\n Producent: "<
2.11.2010r
Temat : Zagniezdzona definicja klasy.
Z taka definicja mamy do czynienia gdy wewnątrz jednej klasy definujemy inną klasę,
czyli po prostu jest to klasa w klasie.
Przykład:
#include
using namespace std;
class motocykl
{
public:
int rocznik;
string producent;
std::string model;
motocykl(); // DEKLARACJA KONSTRUKTORA KLASY MOTOCYKL
~motocykl(); //DEKLARACJA DESTRUKTORA KLASY MOTOCYKL
class kierowca //KIEROWCA TO KLASA ZAGNIEŻDŻONA
{
public:
int wiek;
string imie;
kierowca();
~kierowca();
};
};
motocykl::motocykl() //DEFINICJA KONSTRUKTORA
{ producent="Yamaha";
model="YZF - R1";
rocznik=2008;
cout<<"\n Kostruktor nadal wartosci: \n";
}
motocykl::kierowca::kierowca(){ //DEFINICJA KONSTRUKTORA KLASY
wiek=20; // ZAGNIEŻDŻONEJ
imie="Piotrus";
}
motocykl::~motocykl(){
cout << "\n \n Zniszczylem ERLANA";
}
motocykl::kierowca::~kierowca(){
cout << "\n \n Zniszczylem kierowce";
}
int main()
{
motocykl SZLIFIERKA; //DEFINICJA OBIEKTU KLASY MOTOCYKL
motocykl::kierowca EASY_RIDER; //DEFINICJA OBIEKTU
//KLASY ZAGNIEŻDŻONEJ
cout<<"\n-----------------------";
cout << "\n MOTORKIEM:" << SZLIFIERKA.producent;
cout << "\n MODEL:" << SZLIFIERKA.model;
cout << "\n ROK PROD:" << SZLIFIERKA.rocznik;
cout << "\n JEDZIE:" << EASY_RIDER.imie;
cout << "\n MA:" << EASY_RIDER.wiek <<"lat";
return(0);
}
© 2010 Wszystkie prawa zastrzeżone.