IBRA SERVIS

IBRA SERVIS
KOMPIUTER - LAPTOP - SMARTFON - TABLET

Popular Posts



Tema: Tiparet e programimit ne C++
Variablat
Me qëllim që të përdoret një variabël në  C++, duhet deklaruar tipi i
tij dhe emri që është identifikuesi  . Sintaksa e deklarimit të variablave është: Tipi_të_dhënave   identifikuesi;
 Për shembull:
int a;
float mynumber;

Inicializimi i variablave

Kur deklarohet një variabël lokal, vlera nuk i jepet ‘by default’. Në rast se deshiron ti japësh një vlerë këtij identifikuesi që në momentin e inicializimit shkruan:
Tipi identifikues = vlera_inicializuese ;
C++ ka edhe një mënyrë të re inicializimi për variablat, duke përfshirë vlerën inicializuese brenda kllapave ():   tipi identifikues(vlera_inicializuese) ;
Për shembull: int a (0); Të dyja mënyrat janë të mundëshme  në C++.
Përdorimi i variablave
Të gjithë variablat që do të përdoren duhet të deklarohen paraprakisht. Një ndryshim i rëndësishëm  midis gjuhës C dhe C++, është se në C++ ne mund ti deklarojmë variablat kudo në kodin burim(mjafon para përdorimit të tyre) ndërsa në C vetëm në fillim të bllokut të instruksioneve. Gjithsesi metoda e deklarimit të variablave sipas gjuhës C është akoma e rekomandueshme sepse është mirë të jenë në grup deklarimet e variablave sidomos gjatë procesit të ‘Debug’.
Variablat Global mund të përdoren kudo në kod, brenda çdo funksioni, kudo mbas deklarimit
Vlefshmëria e variablave local  është e kufizuar në kodin brenda të cilit janë deklaruar. Nëse janë të dekararuar në fillim të funksionit (si në main) shtrirja e tyre është përgjatë gjithë main, nëse është deklaruar brenda një cikli. Në këtë shembull, kjo to të thotë se nëse një tjetër funksion është deklaruar përveç  main(), variablat lokale të deklaruar në main nuk mund të përdoren në funksionin tjetër, dhe e kundërta është e vlefshme.

Konstantet

Një konstante është çdo shprehje që ka një vlerë fikse. Konstantet ndahen në numra integer, numra floating-foint, karaktere dhe stringje.

- Numra  Integer
1776
707
-273
Janë konstante numerike që identifikojnë numrat e plotë integer.
Përveç numrave decimale C++ lejon të përdoren konstante për numrat octal(me bazë 8) dhe hexadecimal (bazë 16). Nëse duam të shkruajmë një numër octal ne duhet ta paraprijmë atë me  0character (zero character). Për të shprehur një numër hexadecimal duhet paraprirë nga  0x (zero, x). Për shembull konstantet e mëposhtme janë ekuivalente me njera - tjetren:
75         // decimal
0113       // octal
0x4b       // hexadecimal
Të gjithë prezantojnë 75 decimal
- Numra Floating Point
Disa konstante të numrave Floating Point janë:
3.14159    // 3.14159
6.02e23    // 6.02 x 1023
1.6e-19    // 1.6 x 10-19
3.0        // 3.0
-Karakteret dhe  Stringjet
Ekzistojnë edhe konstante jo numerike:
'z'
'p'
"Hello world"
"How do you do?"
Konstante janë edhe disa të ashtuquajtura ‘Escape codes’. Këto janë karaktere speciale si newline (\n) or tab (\t). Mëposhtë jepet lista e tyre:
\n
newline
\r
carriage return
\t
tabulation
\v
vertical tabulation
\b
backspace
\f
page feed
\a
alert (beep)
\'
single quotes (')
\"
double quotes (")
\?
question (?)
\\
inverted slash (\)

Përcaktimi i konstanteve  (#define)

Mund të deklarohen konstantet që përdoren më shpesh pa I renditur ato te variablat por duke përdorur direktivën e parakompilimit #definepreprocessor directive.
Sintaksa është e tillë:#define identifier value
Për shembull:
#define PI 3.14159265
#define NEWLINE '\n'
#define WIDTH 100

Deklarimi i konstanteve (const)

Gjithashtu një konstante mund të deklarohet edhe me prefiksin const  për një variabël të një tipi të caktuar.
const int width = 100;


 Komunikimi me Konsolën
Konsola është ndërfaqja kryesore e kompjuterit, zakonisht është e përbërë nga tastjera dhe ekrani. Tastjera është zakonisht njësia standarte input dhe ekrani është njësia standarte output
Në librarinë e C++  iostream, veprimet input dhe outputpër një program realizohen nga data streams: cinpër input and cout për output. Për më tepër, cerrdhe cloggjithashtu janë implementuar – këto janë të dyja output stream që janë dizenjuar për të afishuar mesazhe gabimi. Ato drejtojnë mesazhin për te ekrani apo te një ‘log file’.
Me anë të cin dhe cout do të jemi në gjendje për të komunikuar me përdoruesin përderisa mund ti paraqesim mesazhe në ekran dhe të marim të dhëna prej tyre nga tastjera.

-Output (cout)

cout përdorët bashkë me operatorin <<
cout << "Output sentence"; // printon Output sentence ne ekran
cout << 120;               // printon numrin 120 ne ekran
cout << x;                 // printon permbajtjen e variablit x ne ekran
Vihet re te instruksioni i parë se teksti është futur mes thonjëzash (") sepse është string karakteresh. Sa herë që përdoren konstante stringjesh duhen futur në thonjëza, për tu dalluar nga variablat. Për shembull:
cout << "Hello";      // printon stringun Hello 
cout << Hello;        // printon permbajtjen e variablit Hello
Operatori (<<) mund te perdoret me shume se nje here ne nje instruksion:
cout << "Hello, " << "I am " << "a C++ sentence";
Operatori (<<) perdoret kur duam te printojme kombinim variablash dhe konstantesh apo per me shume se nje variable:
cout << "Hello, I am " << age << " years old and my zipcode is " << zipcode;
cout nuk shton nje nderprerje rrjeshti pa ja thene psh:
cout << "This is a sentence.";
cout << "This is another sentence.";
do të afishonte:
This is a sentence.This is another sentence.
Me qëllim që të kalojmë në një rrjesht të ri përdoret ‘new-line character’qe shkruhet  \n:
cout << "First sentence.\n ";
cout << "Second sentence.\nThird sentence.";
Gjithashtu mund të përdoret është manipulatori endl.
cout << "First sentence." << endl;

-Input (cin).

Input-i  standart realizohet me anë të cin që shoqërohet me operatorin >>.
Gjithashtu duhet të shkruhet emri i variablit ku do të ruhet vlera që do të lexohet. Për shembull:
int age;
cin >> age;
cin mer të dhënat nga tastjera derisa  tastoja ENTER është shtypur. Kështu, edhe nëse kërkon një karakter të vetëm cinlexon inputin deri në momentin që përdoruesi të shtyp ENTER.
Tipi i variablave që i shoqerohet cin duhet të përputhet me tipin e të dhënave që priten të jepen nga tastjera.
// i/o example
#include <iostream.h>
 
int main ()
{
  int i;
  cout << "Please enter an integer value: ";
  cin >> i;
  cout << "The value you entered is " << i;
  cout << " and its double is " << i*2 << ".\n";
  return 0;}
Kur lexohen të dhëna që futen nga tastjera, me anë të  cin duhet të keni besimin se përdoruesi kur ti kerkohet të shtyp një vlerë të variablit integer, ai duhet të fus një integer dhe jo një string sepse këto situata sjellin gabime të mundshme në program.
Gjithashtu përdoret cin për të kërkuar më shumë se një vlerë të shtypur nga tastjera:
cin >> a >> b;
është ekuivalente me:
cin >> a;
cin >> b;

-Funksioni printf()

Funksioni printf() është pjesë e librarisë standarte të gjuhës C dhe shumë i përdorshëm për atë gjuhë për të afishuar outpute të formatuar. Sintaksa e këtij funksioni është:

int printf(const char *format_string, arg2, arg3, ...);

format _string përmban karaktere dhe specifikues formatimi që kontrollojnë afishimin e argumenteve. Çdo specifikues formatimi fillon me  % dhe vazhdon me një karakter që përcakton tipin e të dhënave që do të afishohen. Më të përdorshmet janë:
Specifikuesi
Tipii Argumentit
%d
int
%f
float or double
%u
unsigned
%c
character
%s
character string (char *)

Midis shenjës % dhe karakterit, mund të përdoren edhe te ashtuquajtur ‘flag’ që kontrollojnë më tej formatimin e të dhënave që do të afishohen.
Flag
Meaning
-
Left justify
+
Causes a number to be printed with its sign, + or -./td>
0
Zero pads a number with leading zeros, up to the length of its field.
xx.x
A number


Shembuj:
printf("%d\n",5);
printf("%f\n",5,5);
printf("This is five %d\n",5);
printf("%s\n","Hello Glossary");
Funksioni printf() përdoret edhe në gjuhën C++ përveç cin<< që realizon afishim në daljen standarte.

-Funksioni scanf()
 Funksioni scanf() është pjesë e librarisë standarte të gjuhës C  dhe përdoret për input të formatuar. Ai lexon nga tastjera(standart input). Sintaksa e këtij funksioni është:

int scanf(const char *format_string, arg1, arg2, .....);
Scanf lexon nga tastjera dhe konverton çdo argument si është specifikuar në format_string.
Argumentat mbas format_string duhet të jenë shenjues.
Shembuj:

/* te lexoj nje float dhe nje int */
float a;
float *fpt = &a;
int k;
.......
scanf("%f%d",fpt, &k);
Namespaces
Këto bëjnë të mundur të grupojmë një bashkësi klasash, objektesh, funksionesh globale nën një emer. Pra këto shërbejnë për të ndarë mes tyre globalet në disa kategori që quhen namespaces. Forma e përdorimit të  namespaces është:
namespace identifikues
{
  trupi-namespace
}
Ku identifikues është çdo identifikues i vlefshëm dhe trupi-namespaceështë një bashkësi klasash, objektesh dhe funksionesh që janë përfshirë brenda namespace. Për shembull:
namespace general
{
  int a, b;
}
Në këtë rast, variablat a,b janë variabla normale të integruar brenda general namespace. Nëse do të dëshironim ti aksesonim këta variabla jashtë këtij namespace duhet përdorur operatori :: (scope operator). Për shembull, për të aksesuar variablat e mësipërm duhet të shkruajmë:
general::a
general::b
Funksionaliteti i  namespaces është vecanërisht i përdorshëm në rastet kur  ka një mundësi që një objekt global apo funksion global  ka të njëjtin emër si një tjetër , kjo pa përdorimin e namespaces do shkaktonte gabim. Për shembull:
// namespaces
#include <iostream.h>
 
namespace first
{  int var = 5;}
 
namespace second
{  double var = 3.1416;}
 
int main () {
  cout << first::var << endl;
  cout << second::var << endl;
  return 0;}
Output:5
3.1416
Në këtë rast ekzistojnë dy variabla globale me emrin  var, një i përcaktuar brenda  namespace first dhe tjetri brenda namespace second. Nuk paraqet gabim  vetëm prej namespaces.
Persorët direktiva usinge ndjekur nga emri i namespace në mënyrë që objektet dhe funksionet e  namespace mund të aksesohen direkt sikur të ishin dekaluar në zonën globale
using namespace identifier;
Namespace std është namespace që përmban të deklaruar gjithë librarinë e C++.
Duke shkruar: using namespace std thjeshton aksesin në librarinë standarte.




http://eseshkolle.blogspot.com/
Beteja e Beratit (1455) dhe e Albulenës (1457)
Marrja e Beratit kishte një rëndësi të dyfishtë për shqiptarët. Nga njera anë u prishej turqve të sanxhakut të Shqipërisë baza ushtarake më e përparuar dhe më e fortifikuar e nga ana tjetër hapej rruga për çlirimin e krahinave jugore të Shqipërisë.
Për marrjen e Beratit Skënderbeut i duheshin artileri dhe mjete të tjera me të cilat do të rrethonte kështjellën që ngrihej mbi një pozicion të rëndësishëm strategjik. Për këtë qëllim, ai qysh më 1453 kishte vajtur vetë në Napoli dhe i kishte kërkuar Alfonsit dërgimin e ndihmave ushtarake dhe në mënyrë të veçantë të artilerisë, sipas marrëveshjes së Gaetës. Me kërkesat e përsëritura të Skënderbeut, Alfonsi më në fund dërgoi në maj të vitit 1455 një repart prej 2 mijë këmbësorësh italianë.
Në korrik të vitit 1455, Skënderbeu në krye të ushtrisë prej 14 mijë vetësh, i ndihmuar edhe nga repartet napolitane rrethoi Beratin. Në fillim shqiptarët korrën suksese, pushtuan qytetin, ngushtuan rrethimin e kështjellës që ngrihet mbi qytet dhe e detyruan komandantin turk të garnizonit të kërkonte armëpushim prej 15 ditësh për të bërë dorëzimin. Në pritje të afatit Skënderbeu u nis për të pregatitur sulmin kundër një kështjelle tjetër. Por ndërkohë, në mënyrë të befasishme, një ushtri turke prej 40 mijë vetësh, nën komandën e Isak Bej Evrenozit që e kishte njohur Shqipërinë gjatë shtypjes së kryengritjes së Gjon Kastriotit më 1430, i erdhi në ndihmë, pa u diktuar, garnizonit të rrethuar të Beratit dhe i sulmoi prapa krahëve shqiptaret e papërgatitur dhe të shkujdesur. Në këtë përleshje shqiptarë u thyen rëndë. Me mijra vetë u vranë, bashkë me to edhe pjesa më e madhe e ushtarëve napolitanë. Kjo qe një disfatë serioze që pësuan forcat shqiptare gjatë periudhës që luftuan nën udhëheqjen e Skënderbeut.
Ardhja pa u diktuar e turqve u bë e mundur, sepse Moisi Golemi, komandant i forcave kufitare, i pakënaqur nga përqëndrimi i pushtetit në duar të Skënderbeut ia kishte hapur tradhëtisht rrugën Isak Bej Evrenozit. Pas disfatës së Beratit, Moisiu kaloi hapur në anën e turqve.
Disfata e Beratit u kushtoi shumë shtrenjtë shqiptarëve. Përveç humbjeve të mëdha njerëzore, u keqësua edhe gjëndja politike e Skënderbeut. Alfonsi i Napolit hoqi dorë përfundimisht nga ndihmat ushtarake. Venediku shfrytëzoi rastin dhe rifilloi provokimet për të eliminuar pushtetin e Skënderbeut. Krerët feudalë, të nxitur edhe nga Venediku, duke kujtuar se tashmë i erdhi fundi rezistencës shqiptare, vrapuan të merreshin vesh me turqit ose të siguronin strehim në Venedik. Dukagjinët u prishën përsëri me Skënderbeun dhe u lidhën me turqit. Por me gjithë këto fatkeqësi, në sajë të përkrahjes së pakufizuar që gjeti në masat popullore, Skënderbeu e rimori vehten dhe e rimëkëmbi brënda një kohe të shkurtër ushtrinë e gjymtuar.
Më 1456 një ushtri turke prej 15 mijë kalorësish, duke pasur në krye tradhëtarin Moisi Golemin, u nis kundër Shqipërisë, por thye në betejën që u zhvillua më 14 maj, në fushën e Oranikut (Dibër). Moisiu, i penduar, iu dorëzua Skënderbeut dhe i shërbeu atij me besnikëri deri në fund. Më 1456 ndodhën lëkundje të tjera në radhët e bujarëve shqiptarë. Gjergj Stres Balsha u dorëzoi me tradhëti turqve kështjellën e Modricës. Kulmi i përçarjes dhe i tradhëtisë feudale arriti më 1457. Nipi dhe bashkëpunëtori më i ngushtë i Skënderbeut, Hamza Kastrioti, i cili e humbi shpresën për t'i zënë vendin ungjit të vet kur këtij i lindi djali trashëgimtar, kaloi në anën e sulltanit.
Viti 1457 ka qënë një nga vitet më kritikë të periudhës 25 vjeçare të luftave të Skënderbeut. Vdekja e Huniadit që ndodhi më 1456 i dha rast sulltan Fatihut ta drej-tonte vemendjen e vet kundrejt Shqipërisë. Ai nisi në korrik të këtij viti një ushtri të madhe turke prej 80 mijë vetësh nën komandën e gjeneralit të regjur në luftën kundër shqiptarëve, Isak Bej Evrenozit dhe të shoqëruar nga Hamza Kastrioti, të cilin e kish-te emëruar sundimtar të Krujës.
Hamza Kastrioti, njohës i mirë i vendit, i ushtrisë shqiptare dhe i taktikës së Skënderbeut, përpara se t'i drejtohej Krujës, e këshilloi komandantin turk të asgjëson-te masën kryesore të ushtrisë shqipëtare e cila bashkë me komandantin e saj qëndron-te zakonisht jashtë kështjellave. Skënderbeu këtë radhë ishte i detyruar të ndiqte një taktikë të re. Pasi kreu një sërë veprimesh dhe tërheqjesh ai, si duket e shpërndau përkohësisht masën kryesore të ushtrisë për t'u dhënë turqve të kuptonin se ishte shpartalluar, se ushtarët e tij kishin dezertuar, se krerët e kishin tradhëtuar, dhe se ai vetë po kërkonte shpëtim. Kjo manovër duket se pati sukses, sepse edhe kapiteni venedikas i Durrësit, Marko Diedo, e njoftonte më 31 korrik 1457 dogjin e republi-kës: "Fort i larti Skënderbe po bredh nëpër male për të shpëtuar kokën, dhe u braktis nga të gjithë krerët kryesorë të rrethit të vet që shkuan të bashkohen me turkun". Isak Bej Evrenozi dhe Hamza Kastrioti, duke mos e ndeshur në asnjë vend ushtrinë shqip-tare, u bindën më në fund se Skënderbeu tashmë ishte shpartalluar. Por kur më 7 shtator 1457 ushtria turke kremtonte në fushën e Albulenës pranë Milotit fundin e rezistencës shqipëtare, - Skënderbeu, i cili nuk i kishte humbur lidhjet me ushtarët e vet, me kushtrimin e tij të parë grumbulloi me të shpejtë ushtrinë e shpërndarë dhe sulmoi në befasi turqit e shkujdesur duke i shpartalluar plotësisht. Shqiptarët zunë rob midis mijra vetave edhe Hamza Kastriotin, i cili u mbajt i burgosur për disa vjet në Itali.

Instagram Instagram

Categories

eseshkolle.blogspot.com. Powered by Blogger.

Find Us On Facebook

Random Posts

Social Share

Recent comments

Pages

Most Popular

BLEJME IPHONA TE BLLOKUAR

BLEJME IPHONA TE BLLOKUAR
BLEJME DHE RIPAROJME

Popular Posts

Blog Archive

Labels