Download - C++ Ders1 - Giris
-
Glen Demirz
C++ ile Programlamaya Giri
-
Bu ders unlar vermeyi amalyor
Basit bilgisayar bilimleri kavramlar ou C++ programlama kavramlar
Nesneye Dayal Programlama dili
Bu dersin sonunda yapabilecekleriniz algoritmalar gelitirmek C++ kullanarak programlar yazmak ama ok byk programlar olmayacaklar
-
Eitmen Hakknda
Work Experience
1997-2008 Microsoft Corporation, Redmond WA, USA
Senior Development Lead(Microsoft Online Services)
Senior Design Engineer (Office Outlook)
Software Test Lead (Windows Networking)
Software Design Engineer(Windows Networking)
Education
M.Sc., Bilkent University, Computer Engineering and
Information Science, 1997
B.S., Bilkent University, Computer Engineering and
Information Science, 1995
-
nce
Belki bilgisayarlardan korkuyordunuz
Belki nefret ediyordunuz
Belki de onlar sadece elence amal kullanyordunuz
-
Ders suresinceBalangta kt ryalar grebilirsiniz
Kafay ttnzdnebilirsiniz
Ama dzgnce alp yeterince zaman da ayrrsanz eer...
-
Dersin Sonunda
Baar sizindir!
-
MS Visual Studio .NET (2010)
C++ programlarn yazacamz ve altracamz yazlm Laptoplarnza yklemeniz gerekiyor Adm adm ykleme ile ilgili sunumu aada bulabilirsiniz:
http://myweb.sabanciuniv.edu/gulsend/files/2009/02/vs2008_how_to_install.ppt
-
Bilgisayar Bilimi nedir?
Bilgisayar Bilimi bilginin, zellikle elektronik
makineler araclyla, dzenli ve ussal biimde
ilenmesi bilimidir.
Bilgi data
lenmek problem zmek (processing)
Bilgisayar belirli komutlara gre veri ileyen ve depolayan
bir makinedir.
Birok lkede zellikle Avrupada enformatik diye bilinir
Bilgisayar mhendislii daha ok donanm-yazlm entegrasyonu, devre/chip tasarm iin kullanlr.
-
Bilgisayar Bilimi
Bilgisayar Bilimi sadece programlama deildir programlamadan fazlasdr
Bilgisayar Bilimi gen bir disiplindir
50 yldan fazla
lk yksek lisans program CMU (Carnegie Tech) 1965
Trkiyede ilk CS blm 1977
Turing machine (1937)
abstract machine
theoretically capable of any computation that we can do with modern computers today
-
Bilgisayar Bilimi Architecture hardware-software interface
Software Engineering creating software products
Operating Systems Windows, Linux/UNIX, MacOS
Graphics animation, entertainment, games
Computer Security hacking, digital signatures
Computer Networking made internet a reality
Artificial Intelligence thinking machines, learning
Scientific Computing biocomputing
Theoretical CS analyze algorithms
-
AlgoritAlgoritAlgoritAlgoritmalarmalarmalarmalar
Arapa kkenli bir kelimedir Bir problemi adm adm zmektir
nce bunu yap, sonra unu yap, ... en sonunda da bir cevap ile durur bir spesifik programlama diline has deil de genel bir ileme yntemidir
Ama doruluk Verimlilik
1 and 100 arasnda bir say seeyim Siz tahmin edeceksiniz Ben de her tahminde yksek, alak, dorudiyeceim.
Ka tane tahmin gerekir (en kt ihtimalde)?
-
rnek rnek rnek rnek AlgoriAlgoriAlgoriAlgoritmatmatmatma MMMMinimuminimuminimuminimumu bulmau bulmau bulmau bulma lk liste: 4 6 7 3 9 1 4 5
Sralasak m? 1 3 4 4 5 6 7 9
(n.log(n)) ilem gerek, n eleman says
Optimum algoritma Yaklak n ilem lk nce 4 minimum olsun
4 ve 6 y karlastralm - min hala 4
4 ve 7 yi karlastralm - min hala 4
4 ve 3 karlastralm imdi 3 yeni minimum
3 ve 9 u karlastralm - min is still 3
3 ve 1 i karlastralm - imdi 1 yeni minimum
1 ve 4 karlastralm - min hala 1
1 ve 5 i karlastralm imiz bitti ve minimum 1
-
Bilgisayarda Bilginin Gsterimi Bilgisayarlar bilgi ileyen makinerdir
Btn bilgiler nmerik ekilde gsterilir ve saklanrlar saylar bariz sekilde nmerik zaten
karakterler ASCII (Unicode) kodlarla (A=65, Z=90)
renkler RGB deerleri ile
erde saklan (en alt dzeyde) ikilik say sistemidir 0 ve 1 (4=100, 5=101)
btn aritmetik ilemler de ikilik sistemde yaplr
En dk seviyedeki ynergeler de ikilik sistemdedir Makine dili
nsan tarafndan okunamaz ve programlanamaz!
-
HighHighHighHigh----level Languages and Assemblylevel Languages and Assemblylevel Languages and Assemblylevel Languages and Assembly
Rather than instruct computers at the level of 0s and 1s, higher level languages have been developed. Flexible and easier programming
Compilers translate a high level language, such as C++, into machine-specific executable program (0s and 1s) The compiler is a program, input is C++ program, output is an executable program
for other languages different compilers are needed Between machine code and high-level languages: assembly language human understandable form of machine code instructions
-
Programlama Dillerinin Seviyeleri st Seviyest Seviyest Seviyest Seviye
int main()
{
int x, y, z;
x = 7;
y = 12;
z = x * y;
return 0;
}
-
Programlama Dillerinin Seviyeleri - assemblyassemblyassemblyassembly Makneye has assembly dili, soldaki Sparc, sadaki Pentium, ikisi de ayn C++ kodundan tretilmitir
main: main:
save %sp,-128,%sp pushl %ebp
mov 7,%o0 movl %esp,%ebp
st %o0,[%fp-20] subl $12,%esp
mov 12,%o0 movl $7,-4(%ebp)
st %o0,[%fp-24] movl $12,-8(%ebp)
ld [%fp-20],%o0 movl -4(%ebp),%eax
ld [%fp-24],%o1 imull -8(%ebp),%eax
call .umul,0 movl %eax,-12(%ebp)
nop xorl %eax,%eax
st %o0,[%fp-28] jmp .L1
mov 0,%i0 .align 4
b .LL1 xorl %eax,%eax
nop jmp .L1
-
Basit Program Gelitirme Admlar
Problemi Analiz Edin
Algoritma Gelitirin
ProgramTasarlayn
Kodu kada yazn
Kodu bilgisayara yazn
Kaynak Kod
Derle & Kur
Syntax Hatalar?
Evet
Dzelt
Hayr
altr
Doru Sonular?
Evet - Bitti
No
Dzelt(Debug)
-
Basit bir Program Kullancdan tane tamsay okuyun ve toplamlarn hesaplayn
Algoritma ekrana bilgi girii iin istemde bulunan bir cmle yazn
saylar okuyun(say1, say2, say3)
toplam say1 + say2 + say3 kt (toplam)
Program Microsoft Visual Studio 2010 ile yazalm (toplam3say.cpp)