Download presentation
Presentation is loading. Please wait.
1
Shkencat kompjuterike I
2
“Gjuha është instrumenti vetëm i shkencës….”
Thenje... “Gjuha është instrumenti vetëm i shkencës….” Samuel Johnson (English writer who made lasting contributions to English literature as a poet, essayist, moralist, literary critic, biographer, editor and lexicographer)
3
Çka është C++ ? C++ është o kompajluar, gjuhë me orijentim-objekt
Është “pasardhës-successor” i C, një gjuhë procedurale (Ku “++” quhet si successor operator në C++) C është derivuar nga gjuha e quajtur B e cila eshte e derivuar nga BCPL C u zhvillua në vitet 1970 nga Dennis Ritchie i kompanis AT&T Bell Labs C++ u zhvillua gjat vitit 1980 nga Bjarne Stroustrup të AT&T Bell Labs. Shumica e C është një predikuese e C + +
4
Njerëzit & Programet User: një individ që vrapon-runs, ose ekzekuton nje program Programer: një individ që krijon, shkruan një program
5
Programi në C++ Përbëhet nga… Declarations-Deklarimi
Definojnë përdorimin e identifikatorëve të ndryshëm, të cilët krijojnë elementet që përdoren nga programi(computer) Statements-Komandat Ose deklarata të ekzekutueshme, veprime që i kryen kompjuteri me kërkesën e përdoruesit
6
Identifikatorët Emra për entitetet e ndryshme të përdorura në një program; përdorur për ... Variables-ndryshore: vlera që ndryshojnë vazhdimisht Constants-konstante: vlera që nuk ndryshojnë Functions-funksione: njësi programore që përfshinë operacione komplekse Parameters-Parametra: vlerat që ndryshojnë rrallë
7
Program i thjeshtë në C++
#include <iostream.h> int main() { // Declarations -Deklarime // Statements -Komanda return 0; } Compiler directive: I tregon kompajlerit se çfar të bëj para se të nis me kompajlimin Kjo përfshin source code nga një fajl tjetër
8
Program i thjeshtë në C++
#include <iostream.h> int main() { // Declarations // Statements return 0; } Main function (Funksioni kryesor)
9
Program i thjeshtë në C++
#include <iostream.h> int main() { // Declarations // Statements return 0; } Header for main function States… Tipi i të dhënave për vlerën e kthyer Identifikuesi për funksion Lista e argumenteve mes kllapave (asnjë për këtë funksion)
10
Program i thjeshtë në C++
#include <iostream.h> int main() { // Declarations // Statements return 0; } Kllapat e mëdha përkufizojnë trupin e funksionit(ko mandave) Ata përfaqësojnë fillimin dhe fundin e funksionit
11
Program i thjeshtë në C++
#include <iostream.h> int main() { // Declarations // Statements return 0; } Declarations and statements Trupi kryesor i funksionit “//” paraqesin fillimin per komentim
12
Program i thjeshtë në C++
#include <iostream.h> int main() { // Declarations // Statements return 0; } Return statement përcakton vlerën që kthen funksioni Të gjitha (pothuajse) deklaratat dhe komandat përfundojnëm e një pikëpresje ";"
13
Program i thjeshtë në C++
#include <iostream.h> int main() { // Declarations // Statements return 0; } Ky program nuk bën asgjë!
14
Program i thjeshtë në C++
#include <iostream.h> int main() { int number; cout << “Enter a number” << endl; cin >> number; cout << “You entered: “ << number << endl; } Deklarimi ndryshores Identifikatori number është deklaruar si tip të dhënash int, ose integer
15
Program i thjeshtë në C++
#include <iostream.h> int main() { int number; cout << “Enter a number” << endl; cin >> number; cout << “You entered: “ << number << endl; } cout komanda dalëse(shkri mi)në C++ Shenja sintakses“<<“ endl paraqet një end-of-line fundin-e- rreshtit
16
Program i thjeshtë në C++
#include <iostream.h> int main() { int number; cout << “Enter a number” << endl; cin >> number; cout << “You entered: “ << number << endl; } cin komanda hyrëse (për lexim)në C++ Sintaksa “>>”
17
Program i thjeshtë në C++
#include <iostream.h> void main() { int number; cout << “Enter a number” << endl; cin >> number; cout << “You entered: “ << number << endl; } Did you copy this down? You had better, since this will be the first program you’ll try!
18
Kjo ka kuptim tani! Program i thjeshtë në C++
#include <iostream.h> int main() { int number; cout << “Enter a number” << endl; cin >> number; cout << “You entered: “ << number << endl; } Kjo ka kuptim tani!
19
Assignment-Detyrë Detyra është një operacion që cakton vlerën e një variable në një shprehje Shembull Total = Së pari, pasqyrimi“ ” evulon Pastaj, kjo vlerë është caktuar për ndryshoren "Total"
20
Assignment-Detyrë Kur ndryshorja është deklaruar, hapsira është alokuar në memorjen e kompjuterit për ndryshoren Çdo tip të të dhënave kërkon një numër të ndryshëm të byte-ve në kujtesë për magazinimin e një ndryshoreje. 1Byte=8bit, 1B=8bit int - 2 float - 4 double - 8 char, bool - 1
21
Assignment-Detyrë Kur një variabli i është caktuar një vlerë, vlera është vendosur në vendin e variablës në kujtesën e përcaktuar paraprakisht 10 Total = ; Total
22
Operacionet aritmetikore
Mbledhje-shtim: Zbritje: Shumzim: * 4 Pjestim-ndarje: 12 / 3
23
Urdhri i Operacioneve Shprehjet aritmetike vlerësohen sipas këtij rendi të operacioneve Në çdo nivel, operacionet ekzekutohen nga e majta në të djathtë (1) Parenthesis-Kllapat, Functions- Funksioni (2) Multiplication-Shumzimi, Division- Pjestimi (3) Addition -Mbledhja, Subtraction- Zbritja
24
Parenthesis-Kllapat Kllapa janë përdorur për të ndryshuar rendin e ekzekutimit të operacioneve SH. 4 + 5 * 2 equals-barabart me 14 (4 + 5) * 2 equals-barabart me 18
25
Fillojmë! Problem: Për të përcaktuar mesataren e tre numrave
Detyra: Kërkesë, nga ana e përdoruesit, tre numra, të llogaritet mesatarja , të shtypen vlerat origjinale të tre numrave dhe të shtypet mesatarja e llogaritur Bëje! Keni 20 minuta të caktuara!
26
Functions-Funksionet
Computer Science I Functions-Funksionet
27
Q: Çka është funksioni? Një njësi e programimit
Ngjashëm me funksionet matematikore Shembull: f(x) = x2 + 5x + 7 For x = 2, f(2) = (2)2 =5(2) + 7 = 21
28
Q: Çka është funksioni? Ai ka... ... Arguments- argumentin
... a name-emrin (identifier) ... Vlerën që kthen ... trupin int foo(int x) { int result; result = x*x + 5*x + 7; return result; }
29
Procedurë abstrakte Mendo “Kutin e zezë” !
Kur përdorni një funksion, ju vetëm duhet të jeni të shqetësuar me atë që bën, jo se si ajo e bën atë Kur shkruani një funksion, ju duhet të jeni të shqetësuar me si
30
Shembull: Cube it! int cubeIt(int x) { int result; result = x*x*x; return result; } int cubeIt(int x) { int result; result = x; result = x*result; result = x*result; return result; }
31
Pseudocode Duket si një gjuhë programimi
Ka të gjithë strukturën e një gjuhe programimi Ka një sintaksë shuuumë të lirshme
32
Pseudocode Shembull: function foo (x) result x2 + 5x return result Kjo është ajo! A është ajo?
33
Computer Science I Decision Statements
34
Q: Çka është vendim? Diçka që përfaqëson një pikë kyçe në një zgjidhje
Rezultatet janë shpesh të varur nga kushtet fillestare
35
Vendimi në programe Pa komand vendimtare (apo struktura të tjera të kontrollit dinamik), programet janë statike Programet statike bëjnë pikërisht të njëjtat gjëra çdo herë që ata ekzekutohen Programet dinamik nuk e bëjnë
36
Boolean Algjebra Bazohet në vlera që janë ose të Vërteta ose False(jo të vërteta) Vlerat e vërteta dhe të rreme përfaqësohen shpesh nga 1 dhe 0, përkatësisht
37
Operatori logjik: And-DHE
A B Shprehja është True iff A and B janë që të dyja të vërteta
38
Operatori logjik : Or-OSE
A B Shprehja është e saktë nëse A ose B janë të sakta Shenim: Gjithashtu do të jetë e saktë nëse edhe A edhe B janë të sakta
39
Operatorët logjik: Ushtrime
A = True, B = True, C = False 1. A B 2. A C 3. A B C 4. (A B) (A C)
40
Operatorët relacionar
A < B “A _______________________B” A > B “A ______________________B” A = B “A ______________________B” A B “A ______________________B” A B “A ______________________B” A B “A ______________________B”
41
Ushtrime A = 5, B = 3, C = -7 1. A < B 2. A C
3. (A < C) (B < C)
42
Boolean Operatorët: C++
A B A B A < B A > B A = B A B A B A B A && B A | | B A < B A > B A = = B A > = B A < = B A < > B
43
Provo këtë! Problem: Dëshiron të shkojsh në kinema.
Filmi kushton 8.00den, fanta 2.50den dhe bukteshat 4.50den. Duke u bazuar në gjendjen financiare të xhepit tuaj, determino se çka mund të bëjsh... (a) Të shohish filmin dhe të blejsh fanta, (b) Të shohish filmin,të blejsh fanta dhe buktesha, ose (c) Rri në shtëpi
44
Dim që? Filmi kushton 8.00den Fanta kushton 2.50den
Bukteshat kushtojnë 4.50den Sa para kam në xhepin tim
45
Nevoja? Çmimi i filmit dhe fantes
Çmimi i filmit, fantes dhe bukteshave Pse të zgjedhish një nga tre opcionet (kjo është, merr vendim!)
46
Bëje? (a) kushton 10.50den (b) kushton 15.00den (c) nuk kushton
Çka më tutje?
47
Filmi,fanta& bukteshat
Diagrami i problemit? Kjo quhet flowchart- diagrami rrjedhshmë risë Para < 10.50den Para < 15.00den Rri në shpi Filmi,fanta& bukteshat Filmi & fanta
48
Filmi,fanta& bukteshat
Diagrami i problemit? Blloqet- kutit paraqesin aktivitetin Para < 10.50den Para < 15.00den Rri në shpi Filmi,fanta& bukteshat Filmi & fanta
49
Filmi,fanta& bukteshat
Diagrami i problemit? Blloqet e verdha paraqesin pikat vendimtare- kushtezimet Para < 10.50den Para < 15.00den Rri në shpi Filmi,fanta& bukteshat Filmi & fanta
50
Filmi,fanta& bukteshat
Diagrami i problemit? Shigjetat tregojnë rrjedhjen Para < 10.50den Para < 15.00den Rri në shpi Filmi,fanta& bukteshat Filmi & fanta
51
Filmi,fanta& bukteshat
Diagrami i problemit? The arrow at the top tells us there were previous steps The arrow at the bottom tells us there are subsequen t steps Para < 10.50den Para < 15.00den Rri në shpi Filmi,fanta& bukteshat Filmi & fanta
52
Si ta shkruaj këtë? Përdorimi i Pseudocode Prit!
What the CENSORED is Pseudocode?
53
Pseudocode Duket si gjuhë programuese
Ka të gjitha strukturat si gjuhë programuese Ska sintaks
54
Pseudocode Shembull: get x result <- x2 + 5x + 7 print result
Kjo është! Por, a është e nevojshme?
55
Edhe një herë! Pseudocode... If (Para < $10.50) then Rri në shtëpi else If (Para < $15.00) then film, fanta else Film, fanta, buktesha
56
Si do ta shkruajmë këtë? Së pari, kemi nevoj të vendosim si të organizojmë problemin tonë A duhet të ndërtojmë algoritëm? A duhet ti vendosim këto vlera? Le ti qasemi ndrzshe problemit!
57
Si do ta shkruajmë këtë? Problem: Dëshiron të shohish nje film. Filmi kushton 8.00den,fanta 2.50den dhe bukteshat kushtojnë 4.50den. Duke u bazuar në parat që ke në xhep, determino se çka mund të bëjshë... (a) Të shohish filmin dhe të blejsh fanta, (b) Të shohish filmin, të blej fanta dhe buktesha, ose (c) Rri në shtëpi The problem statement tells us the individual costs So, let’s assume they’re fixed or constant No need to ask the user for them
58
Si do ta shkruajmë këtë? Një pyetje tjetër: A duheet të paracaktojm çmimin te secilit opcion? Ose, ne do tia lëmë programit të bëj këtë? Deri sa ne kemi informacion te sakt se artikujt kan çmim të fiks, duket e logjikshme të paracaktojmë çmimin e secilit opcion Filmi: 8.00den Filmi & fanta: den Të tria: den
59
Si do ta shkruajmë këtë? Hapi tjetër, duhet të sigurohemi që kemi një algoritëm të kompletuar Input Para If (Para < 10.50den) then Display “Rri në shtëpi.” else If (Para < 15.00den) then Display “Shko në film;bli fanta.” else Display “Shko në film; bli fanta dhe buktesha.” Gati mbaruam!
60
Si do ta shkruajmë këtë? Determino se si duam te ndertojm programin
A duam vetëm një funksion? Ose, duam të krijojm disa funksione? Marrim dy funksione: njërin për të futur Para nga përdoruesi Dhe të dytin për të determinuar daljen
61
Si do ta shkruajmë këtë? Ja dhe prototipet për funksionet
int getMoney() void showResults(int myMoney)
62
Program Ok, tani duhet të përdorim algoritmin dhe dizajnin e programit për të krijuar një program Pra, Çka pritni? Bëje atë!!!
63
Multiway Branching If statements can be used for multiway branching
That is, choosing one of n mutually exclusive outcomes But what about n outcomes that are not totally unique?
64
Multiway Branching Consider the following problem: Each year, a local middle school requires students to purchase supplies based on their grade level. 6th graders need pencils and five notebooks. 7th graders also need a calculator. 8th graders add to this a 3-ring binder with loose leaf paper.
65
Multiway Branching We could use a nested If statement to handle this, but there is an alternative Whenever we need to represent a decision step, with n possible outcomes, where the outcomes form subsets of each other, and/or the outcomes are chosen based upon unique scalar values for a control expression, we can use a Case (switch) structure
66
Multiway Branching Case When Grade = 8th 3-ring binder loose leaf paper When Grade = 7th calculator When Grade = 6th pencils 5 notebooks
67
Multiway Branching In C++ ... switch (grade){ case 8:
cout << “3-ring binder, loose leaf, “; case 7: cout << “calculator, “; case 6: cout << “5 notebooks, & pencils.” << endl; } When the switch is encountered, control jumps to the matching case statement and continues until either a break is found or the end of the switch
68
Multiway Branching Here’s an example with a few break’s No final break
cout << “Your lunch period comes “; switch (grade) { case 8: cout << “first.” << endl; break; case 7: cout << “second.” << endl; case 6: cout << “third.” << endl; } No final break
69
Well? Get started! Exercise:
Create a program that will inform the user which advisor they should go to based on their major code number Well? Get started!
70
Computer Science I Loops
71
Q: What is a Loop? A control structure that allows for a sequence of steps to be repeated a certain number of times This sequence of steps is called the body of the loop
72
Q: What is a Loop? There are three basic loop structures in programming: For While Repeat
73
While loop Look familiar?
What if you added a change step to the end of the body? Condition F T Body
74
For loop Condition F T Body
75
While loop A while loop is a control structure where the body is repeated as long as the condition is true Condition F T Body
76
While loop When the condition is false, the body is bypassed, and flow continues with the next part of the algorithm Condition F T Body
77
(k<size) (found)
Example: Sequential search k 0 found False while (k<size) (found) do if A[k] = target then found True else k = k + 1 (k<size) (found) F T if A[k] = target then found True else k = k + 1
78
(k<size) (found)
Example: Sequential search k = 0; found = False; while ((k<size) && (!found)) if (A[k] == target) found = True; else k = k + 1; (k<size) (found) F T if A[k] = target then found True else k = k + 1
79
Exercise Strings are arrays of characters
How would you determine if a string fragment is part of a larger string? (needle in a haystack?)
80
Computer Science I Arrays
81
Q: What is an array? An array is a data structure consisting of one or more indexed members An array is like a row of mailboxes at the post office Each box is numbered in sequence (indices), and … Each box contains the same type of stuff (datatype)
82
An array could be drawn like …
g d a f c z l
83
An array could be drawn like …
g d a f c z l Each box is numbered in sequence
84
An array could be drawn like …
Each box has the same datatype g d a f c z l
85
In pseudocode we use … X[j]
Where X is the name of the array (identifier), and … j is an index indicating which position in the array we wish to address
86
An array is declared by …
int X[10]; Where int is the common datatype for all elements in the array, X is the name of the array (identifier), and … 10 is the size of the array, or how many elements are in the array Indices for a C++ array always begin with 0
87
Example: Student Grades
// Declare array double stGrades[7]; : // Assign value to array element stGrades[5] = 87; // Display array element cout << stGrades[3] << endl;
88
Problem: Create a program that will ask the user for three (3) numbers, determine the average, and then display the original numbers and the average Hint: You might wish to use a loop as well as an array!
89
Computer Science I Strings
90
What is a string? A string is a sequence of characters
Example: nc9*hNB98B&^v*&G Blank spaces are characters Each character requires one byte of storage in memory Each character is represented by a one byte character code, usually an ASCII code
91
Strings A literal is a string bounded by quotation marks
Example: “nc9*hNB 98B&^v*&G” Notice the blanks spaces in the sequence - they are characters!
92
Strings In C++, we declare string variables as follows
char string_identifier[length]; string_identifier is the name of the string variable length represents the length of the string, or how many characters are in the sequence
93
Strings Example: void main() { char name[24];
cout << “Enter your name: “; cin >> name; cout << “Your name is “ << name << endl; }
94
Streams A stream … Is a flow of characters
Is an object that represents either on input or an output to a program Can be associated with the keyboard, monitor, or files cout is an output stream cin is an input stream
95
How about file I/O? Where definitions for datatypes ifstream and ofstream are located #include <fstream.h> : ifstream in_stream; ofstream out_stream; Input stream declaration Output stream declaration
96
How about file I/O? #include <fstream.h> : ifstream in_stream; ofstream out_stream; in_stream.open(“infile.txt”); out_stream.open(“outfile.txt”); instream >> number; outstream << number << endl; instream.close(); outstream.close(); Associates files with streams & opens files for use Stream use Closes files
97
What if a file doesn’t exist?
In_stream.open(“notthere.txt”); If (in_stream.fail()) { cout << “Input file opening failed” << endl; exit(1); }
98
How about formatting? out_stream.setf(ios::fixed);
out_stream.setf(ios::showpoint); out_stream.precision(2); out_stream.width(10); : Set flag: fixed/scientific showpoint showpos right/left Number of decimal places Number of digits
99
More member functions get() put() eof()
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.