Mala i besplatna škola programskog jezika C++ (Drugi dio)

Mala škola programiranja C++ - Naslovna 2

Ako ste čitali prethodni članak (https://www.bajtbox.com/mala-i-besplatna-skola-programskog-jezika-c-prvi-dio/), tj. prvi dio našeg serijala, primijetili ste osnovni model računala, Von Neummann model računala. Spominju se pojmovi kao što su ulazne i izlazne jedinice, te memorija računala. Te ulazne jedinice (naši unosi) spremaju se u memoriju, te nakon obrade imamo neke rezultate, to jest izlazne jedinice. Iste dijelimo u nekoliko kategorija, ili tipova podataka, a koristimo ih u našem programu u obliku varijabli. To će biti tema ovog dijela serijala.

Kroz formalno obrazovanje matematika je dio nastavnog plana i programa. Kroz osnovnu školu učimo razne skupove brojeva i brojevne sustave. Čovjek razmišlja i radi u dekadskom brojevnom sustavu, gdje imamo brojeve od 0 do 9 i tako računamo. Digitalna računala imaju 2 stanja; 0 i 1. Njihov sustav se naziva binarni (dva broja, odnosno bi), ali u interakciji čovjek – računar imamo potpunu slobodu korištenja dekadskog brojevnog sustava. Svi podaci se spremaju u memoriji kao niz vrijednosti 0 i 1 koji uz određene logičke operacije čine podatak. Tako na primjer broj 10 (deset) u memoriji bi bio niz pobuđenih memorijskih elemenata u binarnom zapisu 1010. Logiku binarnog brojčanog sustava, te konverziju između dekadskog i binarnog sustava možete pronaći na https://www.rapidtables.com/convert/number/decimal-to-binary.html?x=10 .

U programskom jeziku C++ imamo više tipova za različite skupove brojeva:

  • int – označava skup cijelih brojeva Z, zajedno sa standardnim operacijama
  • char – skup C, označava skup svih ASCII znakova

(https://en.cppreference.com/w/cpp/language/ascii)

  • float, double – označava skup realnih brojeva R, zajedno sa standardnim operacijama
  • bool – skup B, obuhvaća dvije moguće vrijednosti; true ili false
Tip podatkaOpseg vrijednostiPrimjer vrijednosti
int– 2.147.483.648 do 2.147.483.6471, 2, 3
char0 do 255A, b, Z
float1,2E38 do 3,4E381,122
double2,2E308 do 1,8E3082,3467678
bool0-10 ili 1, true ili false


Tu dolazimo do naših ulaza i izlaza iz programa, to jest, varijabli. Jednostavni objekti koji pamte vrijednost ulaza, obrade i izlaza u memoriji se nazivaju varijable. U programskom jeziku C++ bitno je, kod kreiranja varijable, dati instrukciju o kojem tipu podatka se radi. Takve jezike nazivamo „strongly-typed“. U radu sa C++ uvijek je važno navesti tip podataka, bar osnovni. Od toga nam ovise operacije koje možemo vršiti nad podatkom, odnosno u konačnici što sve možemo napraviti sa njim.

Ako želimo deklarirati varijablu u našem programu moramo poštovati sljedeću strukturu:

tip_podatka identifikator;

Na mjesto „tip_podatka“ unosimo željeni tip podataka, a na mjesto „identifikator“ unosimo željeni naziv varijable. Ukoliko želimo odmah dodijeliti vrijednost toj varijabli, to možemo uraditi inicijalizacijom iste na sljedeći način:

tip_podatka identifikator = vrijednost;

Unesena vrijednost mora biti sukladna tipu podatka, inače nam program neće raditi. Ispod ćemo navesti jedan primjer programa sa deklariranom i inicijaliziranom varijablom, koja je cijeli broj. Svrha primjera je da pokaže jedan potpuno ispravan program čija jedina funkcija je inicijalizacija vrijednosti.

void main()
{
int a = 3;
}

Sada se vjerojatno pitate, pa dobro koji je smisao ovog programa, kako da uradim nešto s podacima? Kako da korisnik u skladu sa svojim željama unosi vrijednosti koje će program obraditi i dati rezultat?

Za pisanje takvog programa iskoristiti ćemo postojeću C++ biblioteku „iostream“. Ista nam omogućuje upis sadržaja sa tipkovnice, te ispis na zaslon računala. Ispod se nalazi program sa objašnjenjima u komentaru.

#include<iostream> //ukljucujemo biblioteku za unos i ispis sadržaja
using namespace std;
void main()
{
	float cijenaEUR; // deklariramo varijablu
	cout << "Unesite cijenu u EUR : ";// ispisujemo tekst na ekranu – uputa za klijenta
	cin >> cijenaEUR; /*otvaramo klijentu opciju za unos, nakon unosa na ekran vrijednost se sprema u varijablu */
	cout << "Cijena u KM iznosi : " << cijenaEUR * 1.95 <<endl;  /* ispisujemo cijenu konvertiranu u drugu valutu */
}

Čestitamo! Napisali ste prvi program koji ima neku funkciju. Unesenu vrijednost u valuti euro pretvara u konvertibilne marke. Ovdje imamo sreću što je tečaj uvijek fiksan između ove dvije valute, te možemo „hardkodirati“ tečaj od 1,95.

Drugi način da spremimo u program neku vrijednost koja je uvijek konstanta i ne može se kasnije kroz program mijenjati je uvođenje ključne riječi const.

Sada ćemo opet napisati isti program korištenjem konstante varijable.

#include<iostream> //ukljucujemo biblioteku za unos i ispis sadržaja
using namespace std;
void main()
{
	float cijenaEUR; // deklariramo varijablu
	const float tecaj = 1.95; //deklariramo konstantu – nepromjenjivu varijablu
	cout << "Unesite cijenu u EUR : ";// ispisujemo tekst na ekranu – uputa za klijenta
	cin >> cijenaEUR; /*otvaramo klijentu opciju za unos, nakon unosa na ekran vrijednost se sprema u varijablu */
	cout << "Cijena u KM iznosi : " << cijenaEUR * tecaj<<endl;  /* ispisujemo cijenu konvertiranu u drugu valutu */
} 

Ovo je sve za ovu lekciju. Naučili ste što su varijable i koje su mogući tipovi podataka. Čak smo i napravili jedan koristan program. Za sva pitanja koja imate možete pisati u našu redakciju na info@bajtbox.com. Osim nas, Internet, Google i ChatGPT su vaši prijatelji u učenju programiranja. Do idućeg čitanja.

Davor Škobić

Svi korisnici koji žele koristiti ili prenositi sadržaj s Bajtbox portala moraju se pridržavati sljedećih pravila: Citiranje Izvora: Obavezno je jasno i precizno navesti izvor informacija, uključujući naziv autora (ako dostupno), naslov članka ili teksta te datum objave. Poveznica na Originalni Tekst: Svaka upotreba sadržaja mora uključivati aktivnu poveznicu (link) koja vodi na izvorni tekst na Bajtbox portalu. Pravna Odgovornost: Kršenje ovih pravila može imati pravne posljedice sukladno zakonima o autorskim pravima.

guest

2 Comments
Inline Feedbacks
Pogledaj sve komentare
Fpinsoles ca

Pozdrav! This is a fantastic resource for learning C++. I’ve been following this series from across the ocean, and the way you break down these programming concepts is so helpful for building a solid foundation.

Last edited 1 sat prije by Fpinsoles ca
Fpinsoles ca

Great follow-up to the first part of the guide! C++ can be a challenge, so having a free school like this is a huge win for the community.
One thing I’ve learned while working remotely is that your physical health directly impacts your mental focus. Standing in one spot while working on complex code can lead to repetitive joint stress and poor alignment if you aren’t careful.
Since I travel quite a bit between Europe and North America, I’ve become very picky about my ergonomics. I recently picked up Fpinsoles in canada, and the custom molding has been a lifesaver for my daily comfort. Having access to top-tier shock absorption with fast, geo-local shipping makes it so much easier to stay healthy while working.
Keep up the excellent educational work on Bajtbox!

2
0
Pogledaj komentare ili komentirajx