Typy zmiennych

    int
    double
    float
    char
    bool
    long int
    long long int
    short

    signed DANY_TYP - zmienna ze znakiem (+/-)
    unsigned DANY_TYP - zmienna bez znaku (+)

    string (wymagane  #include <string>)

Uwaga na zmienne lokalne i globalne!
Czas życia zmiennej!

Zakresy zmiennych typu INT dla GCC - > link
PRZYKŁADY:
int a;
int a = 5;
char a,b,c,d = 0;
char t = 'r';

string text = "napis buuuuu";

unsigned int bz;

wynik = wyraz + " napis " + inny; (łączenie stringów)


STAŁE:
   const double pi = 3.14;

KONWERSJA TYPÓW:
  a = (int)b + (int)c;


Tablice

char b⌈500⌉;   //deklaracja; UWAGA!!! numerowanie zaczyna się od zera!!!


int liczby⌈⌉ = {1,2,3,4,5,6,7,8,9};

int dwa_wym⌈2⌉⌈3⌉ = {
    {1,2,3},
    {2,3,4}
    };

cout        <<       dwa_wym⌈1⌉⌈2⌉    <<   endl;
 


Wejście/wyjście

cout << b;
cout << "        ";
cout << b
       << b
       << endl
       << "napis";
 

cin >> b;
 


Operatory

 operatory arytmetyczne:
  + - * / %

operatory przypisania:
   
   =
  b += 5;   ->  (b=b+5)
  -=
  *=
  /=
  %=
  ++    np    i++;   ->    i:=i+1;(pascal)
  --    np    i--;   ->    i:=i-1;(pascal)
 operatory logiczne:
  ||     OR   
  !      NOT
  &&     AND
  ^      XOR

  ==     równe
  !=     różne


Ramy programu - wszystko jest funkcją

 int main()
{
    //główny program!!!
    return 0;
}
 


Jeżeli i switch

 if ((a>3) || (a<-2))
    {
   
    }
    else
    {
   
    }
 switch (zmienna)
    {
    case 'd':
   
    break;

    case 'e':

    break;

    case 'z':

    break;
    }

jeśli char to sprawdzi po literach 'x'


While i do/while

 while (warunek)
    {
   
    }
 do
{

} while (warunek); 

//wykona się przynajmniej raz


Pętla for

 for (int i=0 ; i<10 ; i++)
    {

    }
 
ZADANIA Z PĘTLI - > link


Liczby pseudolosowe

 #include <cstdlib>
#include <time.h>
   
srand( time( NULL ) );
int liczba = rand();

-----
losowe z przedziału od a do b:
--
x = a + int((b-a+1) * rand()/(RAND_MAX+1.0));
--
x=a+(rand() % (b-a+1)); // prosta metoda ale korzysta z małej ilości bitów
 


Czyszczenie ekranu

 #include <stdlib.h>
s y s t e m  ("cls"); // czysci ekran konsoli

 


Oczekiwanie na wciśnięcie ENTERA

#include <stdio.h>

while (getchar() != 'n');  // zapętlenie do momentu wciśnięcia entera

 


Oczekiwanie na wciśnięcie dowolnego klawisza

#include <conio.h>

char key = getch();  // wczytanie dowolnego klawisza bez potwierdzenia enterem

 


Długość stringa

#include <iostream>
#include <string>
using namespace std;

int main()
{
string sNapis = "To jest napis";
cout << "Napis: " << sNapis << endl;
cout << "Dlugosc napisu: (metoda size): " << sNapis.size() << endl;
cout << "Dlugosc napisu: (metoda length): " << sNapis.length() << endl;
return 0;
}

 


Obsługa plików w C++  (więcej)

#include <iostream>
#include <fstream>
using namespace std;

main()
  {
    ofstream plik;
    plik.open("nazwa.txt");
    for (int i=0;i<9;i++) plik<<i<<endl;
    plik.close();

    plik.open("inna_nazwa.txt");
    int a=5,b=3,c=7;
    plik<<a<<"n"<<b<<endl<<c<<endl;
    plik<<endl<<++a;
    plik.close();
    return 0;
  }
#include <fstream>


main()
  {


fstream plik;
plik.open("nazwa.txt",ios::in);

if (plik.good()==false)
       {
        cout<<"Nie udalo sie otworzyc pliku!";
        exit(0);
       }

while(getline(plik,linia))
    {
        switch(nr_linii)
       {
       case 1: tresc⌈nr_pytania⌉ = linia;       break;
       case 2: odpA⌈nr_pytania⌉ = linia;        break;
       case 3: odpB⌈nr_pytania⌉ = linia;        break;
       case 4: odpC⌈nr_pytania⌉ = linia;        break;
       case 5: odpD⌈nr_pytania⌉ = linia;        break;
       case 6: poprawna⌈nr_pytania⌉ = linia;    break;
        }

        if (nr_linii==6) {nr_linii=0; nr_pytania++;}
        nr_linii++;
    }
plik.close();
}



ZADANIA Z PĘTLI - > link

ZADANIE "POPULACJA":


Dana jest populacja złożona ze 100 osobników.
Populacja rozmnaża się proporcjonalnie do swojej liczebności
w tempie T nowych osobników na rok.
Każdy w wieku 20-60 lat produkuje 2 jednostki jedzenia na rok,
jednocześnie każdy osobnik do życia potrzebuje 1 jednostkę jedzenia
na rok. Dla kogo nie wystarczy jedzenia umiera z głodu
(w pierwszej kolejności umierają najstarsi).
Jak będzie rozwijać się populacja jeśli założyć,
że maksymalna długość życia każdego osobnika wynosi 80 lat?