Na początku był C++... #nauka
Zaczęłam się uczyć kodowania C++ u Mirosława Zelenta na kanale YouTube Pasja Informatyki . Pan Zelent sam sugeruje, aby zacząć od C++, ponieważ naucze się podstaw i pomoże mi to ogarnąć Javę Script. Na czym mi zależy, bo chcę być dobrym koderem a nie tylko Googlerem. Bo... to trochę siara B| a mi zależy na zamodzielności w kodowaniu.
Złośliwość rzeczy martwych. Illustrator mi se zbuntował, więc nie mogę zgarnąć ścieżek <path>. Postaram się dzisiaj to zrobić.
Na facebookowym forum przeczytałam, że pan Zelent jest (cytuję) "niedouczony" i słabo wypada mu tutorial o PHP. Ale oczywiście żaden z mądrali nie podał innego lepszego. Jakie to typowe dla nerdów. Do krytyki wszyscy do pomocy zero, bo jeszcze zostana zjechani od kretyów co polecają złego nauczyciela a to dla ich nieskiego ego nie byłoby do zniesienia...
Poniżej moje pierwsze notatki z programowania w C++
Lekcja#1 - Pliki projektów, pierwszy program.
int worki, koty; // int to jest pojemnik z danymi
cout<< "Ile jest worków:"
cin>>"worki";
cout << "Podaj liczbę ile jest kotów w workach";
cin >> koty; // to co przyszło z klawiatury wrzucamy do pojemnika int koty
obliczenia w pojemniku
chcemy wywalić koty nieparzyste z worka, więc dzielimy koty przez worki
int worki, koty, x, y; // x oznacza liczbę kotów, y oznacza liczbę worków
y = koty/worki; // wynik znajduje sie teraz w RAM'ie, nazywa się to instrukcja przypisania
//załużmy, że białych kotów jest 30 i jeden czarny a wokrów 3 i nie chcemy obliczac czarnego a chcemy znać licznę kotów w jednym roku.
y = (koty-1)/worki;
cout<< "kotów w jednym worku"<<x; //pisze po ekranie zamiast x wynik
Jak dołaczyć do programu biblioteki?
#include=<nazwa_biblioteki>
(np.iostream)
iostream=bilbioteka stumieni wejścia i wyjscia
Jak pisac po ekranie
cout<<"Napis, jakiś tekst"<<endl;
int w C++ oznacza liczbę całkowitą (integralną, czyli niepodzielną)
Jak zerezerwować miejsce w pamięci RAM na liczbę całkowitą (czyli arezerwować zmienną)
int x;
gdzie int to typ danych a x to nazwa
jak wczytać liczbę z klawiatury
cin>>x;
Jak policzyc jakąś wartość i przypisać do zminnej:
x=cukierki/(uczniowie-1);
gdzie x operator przypisania
Jak pokazać zawartość zmiennej na ekranie
cout << nazwa_zmiennej;
using namespace std; = używa przestrzeni nazw "standard"
funkcja main() to tzw. funkcja główna
return 0;
kończy funkcję główną, czyli cały nasz program
Plik .CPP to plik z kodem źródłowym C++
Plik .cbp to plik projektu, zawierający listę plików wchodzący w skłąd plku cpp.
katalog bin przechowuje nasz binadrny plik .exe
Plik .LAYOUT zachowuje położenie okien środowiska IDE
Wyłaczanie i właczanie F2 lewego okna, Shift+F2 dolnego okna
Zadanie:
#include <iostream>
using namespace std;
int uczniowie, cukierki, x, y;
int main()
{
cout << "Ile uczniow jest w klasie:";
cin>>uczniowie;
cout << "Ile cukierkow kupila mama:";
cin >> cukierki;
x = cukierki/(uczniowie - 1);
cout<<"Cukierki na jednego ucznia:"<<x;
y = cukierki - x * (uczniowie -1);
cout<< endl<<"Ile cukierkow na wieczor:"<<y;
return 0;
}
Lekcja#2 - Instrukcja warunkowa if. Decyzje w programie
Program podejmuje decyzje o podjęciu dalszego działania, cofnięciu lub przeskoczeniu dalej.
Czyli innymi słowy zabawa w "żłówie".
Albo wpuścić do systemu albo zabronić.
1. Symulator bankomatu
2. Logowanie do programu.
3. Sprawdzanie wieku podanego przez użytkownika i czy może zostać prezydentem (30 lat)
1. w zmiennej int PIN; jest pojemnik na dane wprowadzone przez użytkownika
komputer 0 nie zapisuje w pamięci, i est to pusta przestrzeń. np. 0517 to dla komputera 517.
Więc zapisujemy nie jako liczby tylko jako napis (ciąg znaków)
napisy przechowujemy w zmiennej typu string
string PIN;
string = łańcuch (łańcuch składa się z ogniw, tak napisy skłądają się z ciągu znakó)
litery to ogniwa łańcucha
if (PIN="1729")
{
cout<<"Poprawny PIN"
}
jeżeli pin wynosi 1729 to zapiszemy Poprawny PIN. Nasza zmienna 1729 jest napisem, to zapisujemy ją jako napis a nie liczbę, czyli w cudzysłowiu.
= instrukcja, operator przypisania; używamy tej instrukcji kiedy chcemy nadać jakąś wartość
== w tym przypadku nie nadajemy, tylko PORÓNUJEMY wartości. - to jest operator porównania
if(PIN!="1729")
!= oznacza "nie jest równy"
{
cout<< "Niepoprawny pin";
}
else (w przeciwnym przypadku)
{
cout<<"Niepoprawny PIN";
}
Zadanie :
#include <iostream>
using namespace std;
string PIN;
int main()
{
cout << "Witaj w naszym banku!" << endl;
cout << "Podaj numer PIN:";
cin >> PIN;
if(PIN=="1729")
{
cout<<"Poprawny PIN";
}
else
{
cout<<"Nieprawidlowy PIN";
}
return 0;
}
=> jest większy lub równy
>= jest większy równy
#include <iostream>
using namespace std;
int wiek;
int main()
{
cout << "Ile masz lat? ";
cin >> wiek;
if(wiek>=18)
{
cout << "Jestes pelnolatni. ";
}
else {
cout << "Jestes niepelnoletni. ";
}
if(wiek>=35)
{
cout << "Mozesz kandydowac na prezydenta.";
}
else {
cout << "Nie mozesz kandydowac na prezydenta.";
}
return 0;
}
Skrócona wersja:
Złośliwość rzeczy martwych. Illustrator mi se zbuntował, więc nie mogę zgarnąć ścieżek <path>. Postaram się dzisiaj to zrobić.
Na facebookowym forum przeczytałam, że pan Zelent jest (cytuję) "niedouczony" i słabo wypada mu tutorial o PHP. Ale oczywiście żaden z mądrali nie podał innego lepszego. Jakie to typowe dla nerdów. Do krytyki wszyscy do pomocy zero, bo jeszcze zostana zjechani od kretyów co polecają złego nauczyciela a to dla ich nieskiego ego nie byłoby do zniesienia...
Poniżej moje pierwsze notatki z programowania w C++
Lekcja#1 - Pliki projektów, pierwszy program.
int worki, koty; // int to jest pojemnik z danymi
cout<< "Ile jest worków:"
cin>>"worki";
cout << "Podaj liczbę ile jest kotów w workach";
cin >> koty; // to co przyszło z klawiatury wrzucamy do pojemnika int koty
obliczenia w pojemniku
chcemy wywalić koty nieparzyste z worka, więc dzielimy koty przez worki
int worki, koty, x, y; // x oznacza liczbę kotów, y oznacza liczbę worków
y = koty/worki; // wynik znajduje sie teraz w RAM'ie, nazywa się to instrukcja przypisania
//załużmy, że białych kotów jest 30 i jeden czarny a wokrów 3 i nie chcemy obliczac czarnego a chcemy znać licznę kotów w jednym roku.
y = (koty-1)/worki;
cout<< "kotów w jednym worku"<<x; //pisze po ekranie zamiast x wynik
Jak dołaczyć do programu biblioteki?
#include=<nazwa_biblioteki>
(np.iostream)
iostream=bilbioteka stumieni wejścia i wyjscia
Jak pisac po ekranie
cout<<"Napis, jakiś tekst"<<endl;
int w C++ oznacza liczbę całkowitą (integralną, czyli niepodzielną)
Jak zerezerwować miejsce w pamięci RAM na liczbę całkowitą (czyli arezerwować zmienną)
int x;
gdzie int to typ danych a x to nazwa
jak wczytać liczbę z klawiatury
cin>>x;
Jak policzyc jakąś wartość i przypisać do zminnej:
x=cukierki/(uczniowie-1);
gdzie x operator przypisania
Jak pokazać zawartość zmiennej na ekranie
cout << nazwa_zmiennej;
using namespace std; = używa przestrzeni nazw "standard"
funkcja main() to tzw. funkcja główna
return 0;
kończy funkcję główną, czyli cały nasz program
Plik .CPP to plik z kodem źródłowym C++
Plik .cbp to plik projektu, zawierający listę plików wchodzący w skłąd plku cpp.
katalog bin przechowuje nasz binadrny plik .exe
Plik .LAYOUT zachowuje położenie okien środowiska IDE
Wyłaczanie i właczanie F2 lewego okna, Shift+F2 dolnego okna
Zadanie:
#include <iostream>
using namespace std;
int uczniowie, cukierki, x, y;
int main()
{
cout << "Ile uczniow jest w klasie:";
cin>>uczniowie;
cout << "Ile cukierkow kupila mama:";
cin >> cukierki;
x = cukierki/(uczniowie - 1);
cout<<"Cukierki na jednego ucznia:"<<x;
y = cukierki - x * (uczniowie -1);
cout<< endl<<"Ile cukierkow na wieczor:"<<y;
return 0;
}
Lekcja#2 - Instrukcja warunkowa if. Decyzje w programie
Program podejmuje decyzje o podjęciu dalszego działania, cofnięciu lub przeskoczeniu dalej.
Czyli innymi słowy zabawa w "żłówie".
Albo wpuścić do systemu albo zabronić.
1. Symulator bankomatu
2. Logowanie do programu.
3. Sprawdzanie wieku podanego przez użytkownika i czy może zostać prezydentem (30 lat)
1. w zmiennej int PIN; jest pojemnik na dane wprowadzone przez użytkownika
komputer 0 nie zapisuje w pamięci, i est to pusta przestrzeń. np. 0517 to dla komputera 517.
Więc zapisujemy nie jako liczby tylko jako napis (ciąg znaków)
napisy przechowujemy w zmiennej typu string
string PIN;
string = łańcuch (łańcuch składa się z ogniw, tak napisy skłądają się z ciągu znakó)
litery to ogniwa łańcucha
if (PIN="1729")
{
cout<<"Poprawny PIN"
}
jeżeli pin wynosi 1729 to zapiszemy Poprawny PIN. Nasza zmienna 1729 jest napisem, to zapisujemy ją jako napis a nie liczbę, czyli w cudzysłowiu.
= instrukcja, operator przypisania; używamy tej instrukcji kiedy chcemy nadać jakąś wartość
== w tym przypadku nie nadajemy, tylko PORÓNUJEMY wartości. - to jest operator porównania
if(PIN!="1729")
!= oznacza "nie jest równy"
{
cout<< "Niepoprawny pin";
}
else (w przeciwnym przypadku)
{
cout<<"Niepoprawny PIN";
}
Zadanie :
#include <iostream>
using namespace std;
string PIN;
int main()
{
cout << "Witaj w naszym banku!" << endl;
cout << "Podaj numer PIN:";
cin >> PIN;
if(PIN=="1729")
{
cout<<"Poprawny PIN";
}
else
{
cout<<"Nieprawidlowy PIN";
}
return 0;
}
Ad.2: Mechanizm logowania
if ( (login=="admin")&&(haslo=="szarlotka") )
jeśli oba mają być prawdziwe if true & true -> true, to wstawiamy między nimi && - to jest spójnik logiczny "and"/"i"
&& to spójnik logiczny "and" / "i"
if ( (warunek1) && (warunek2) )
tabela prawdy
warunek 1 warunek 2 cały if
0 0 0
0 1 0
1 0 0
1 1 1
Pojedynczy & (tzw. ampersand) to operator już zarezerowwany
|| to spjnik logiczny "or" / "lub"
if ( (warunek1) || (warunek2) )
tabela prawdy
warunek1 warunek2 cały if
0 0 0
0 1 1
1 0 1
1 1 1
Zastosowanie:
Quiz
a (z CapsLock'iem A)
b
c
d
if ((odp1==a) || (odp1==A)
Co, jeśli (warunek 1)|| (warunek 2) || (warunek 3) && (warunek 4)
w C++ operator && ma pierwszeństwo nad || (tak jak np. w matematyce mnożenie ma pierwszeństwo przed dodawaniem).
Stąd tak naprawdę mówię tutaj jedynie o takim warunku:
if((x<=5 || x>12 || a!=7) && a>15)
if ((x<=5) || (x>12) || (a!=7) && (a>15))
zmienna x to 3,
zmienna a to 7
Zadanie:
#include <iostream>
using namespace std;
string login, haslo;
int main()
{
cout << "Podaj login: ";
cin >> login;
cout << "Podaj haslo: ";
cin >> haslo;
if((login=="admin")&&(haslo=="szarlotka"))
{
cout << "Udalo sie zalogowac!";
}
else {
cout << "Nie udalo sie zalogowac";
}
return 0;
}
Ad.3. Sprawdzanie wieku podanego przez użytkownika
Pełnoletni? (minimum 18 lat)
Kanydat na prezydenta? (minimum 35 lat)
=> jest większy lub równy
>= jest większy równy
#include <iostream>
using namespace std;
int wiek;
int main()
{
cout << "Ile masz lat? ";
cin >> wiek;
if(wiek>=18)
{
cout << "Jestes pelnolatni. ";
}
else {
cout << "Jestes niepelnoletni. ";
}
if(wiek>=35)
{
cout << "Mozesz kandydowac na prezydenta.";
}
else {
cout << "Nie mozesz kandydowac na prezydenta.";
}
return 0;
}
Skrócona wersja:
else if
#include <iostream>
using namespace std;
int wiek;
int main()
{
cout << "Ile masz lat? ";
cin >> wiek;
if(wiek<18)
{
cout << "Nie jestes pelnolatni i nie możesz zostac prezydentem.";
}
else if ((wiek>=18) && (wiek<35))
{
cout << "Jestes pelnoletni i nie mozesz zostac prezydentem.";
}
else
{
cout << "Jestes pelnoletni i mozesz kandydowac na prezydenta.";
}
return 0;
}
#include <iostream>
using namespace std;
int wiek;
int main()
{
cout << "Ile masz lat? ";
cin >> wiek;
if(wiek<18)
{
cout << "Nie jestes pelnolatni i nie możesz zostac prezydentem.";
}
else if ((wiek>=18) && (wiek<35))
{
cout << "Jestes pelnoletni i nie mozesz zostac prezydentem.";
}
else
{
cout << "Jestes pelnoletni i mozesz kandydowac na prezydenta.";
}
return 0;
}
Odnośnie p. Zelenta zastrzeżenia pojawiają się także w przypadku jego twórczości n/t C++: https://4programmers.net/Forum/1226486
OdpowiedzUsuńJeśli chcesz informacji gdzie uczyć się C++ (oraz gdzie tego ne robić), to polecam ten wpis: http://www.wykop.pl/wpis/9719000/cpp-naukaprogramowania-programowanie-wstep-czestot/
Ciekawe. Dowiedziałam się o tym niedawno na fb 'HTML5 i CSS3: pierwsze kroki', gdzie zarzucano mu błędy w lekcjach zaczynajacych się od html i dalej na php. Możliwe, że jesteś jednym z grupy, bo dyskusja trwa do dziś B|. Dzięki za linka. Z ciekawości przejrzę i zobaczę czy czegoś mnie złego nauczył pan Zelent, skoro to były tylko proste formułki z przykładami ;).
Usuń