daprogramebis safuzvlebi leqcia #5 2009-2010 sasw.w. i semestri tsu asoc. prof. natela arcvaze tsu...

17
daprogramebis daprogramebis safuZvlebi safuZvlebi leqcia #5 leqcia #5 2009-2010 sasw.w. I semestri 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela Tsu asoc. prof. naTela arCvaZe arCvaZe Tsu, zusti da sabunebismetyvelo Tsu, zusti da sabunebismetyvelo 1

Upload: irea-reilly

Post on 26-Mar-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

daprogramebis daprogramebis safuZvlebisafuZvlebileqcia #5leqcia #5

daprogramebis daprogramebis safuZvlebisafuZvlebileqcia #5leqcia #5

2009-2010 sasw.w. I semestri2009-2010 sasw.w. I semestri

Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe

Tsu, zusti da sabunebismetyvelo mecnierebaTa Tsu, zusti da sabunebismetyvelo mecnierebaTa fakulteti, kompiuterul mecnierebaTa mimarTuleba fakulteti, kompiuterul mecnierebaTa mimarTuleba

1

Page 2: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

wina leqciaze: ricxvebis wakiTxvascanf(formati, &cvl1, &cvl2 . . .);

informaciis Setana-gamotanis gadamisamarTeba. funqcia freopen

freopen (misam., reJimi, nakadis_sax);freopen ("c:\monacemebi\data.txt", "r", stdin); freopen ("c:\shedegi.txt", "w", stdout);

2

Page 3: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

Tema: ricxvebis tipebi

mTeli ricxvebis tipebilong int cvladis-saxeli ;short int cvladis-saxeli ; sizeof(short) ≤ sizeof( int) ≤

sizeof(long)

signed long int result; igivea, raclong result;

3

Page 4: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

specifikatorebiprintf() da scanf() funqciebSi

specifikatorebi gamoyenebebi

%hd (signed) short int

%d (signed) int

%ld (signed) long int

%hu unsigned short int

%u unsigned int

%lu unsigned long int4

Page 5: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

#include<stdio.h> #include<stdlib.h>#include <limits.h>int main(){ int x = INT_MIN, y = INT_MAX; unsigned int ux = UINT_MAX; long int lx = LONG_MIN, ly = LONG_MAX; unsigned long int lu = ULONG_MAX; short int sx = SHRT_MIN, sy = SHRT_MAX; unsigned short int su = USHRT_MAX; printf("int ikavebs %d baits\n", sizeof(int)); printf("misi diapazonia %d : %d\n", x,y); printf("unsigned int-is diapazonia 0 : %u\n", ux); printf("long int ikavebs %d baits\n", sizeof(long)); printf("misi diapazonia %ld : %ld\n", lx,ly); printf("unsigned long-is diapazonia 0 : %lu\n", lu); printf("short int ikavebs %d baits\n", sizeof(short)); printf("misi diapazonia %hd : %hd\n", sx,sy); printf("unsigned short int-is diapazonia 0 : %hu\n", su); return 0;}

5

Page 6: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

programis Sedegia:

int ikavebs 4 baitsmisi diapazonia -2147483648 : 2147483647unsigned int-is diapazonia 0 : 4294967295long int ikavebs 4 baitsmisi diapazonia -2147483648 : 2147483647unsigned long-is diapazonia 0 : 4294967295short int ikavebs 2 baitsmisi diapazonia -32768 : 32767 unsigned short int-is diapazonia 0 : 65535

6

Page 7: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

tipi char diapazoni (-128)-dan 127-mde.unsigned char diapazoni 0–dan 255–mde.ASCII (American Standard Code for Information Interchange)

scanf("%c", &symbol); -araa rekomendirebuli<stdio.h> - getchar(); putchar();char ch; ch = getchar(); -simbolos wakiTxva

putchar(simbolo); -ekranze dabeWdva

mag. char ch ='Z'; putchar(ch);• <conio.h>-is funqcia getch() msgavsia• system("PAUSE") -is

7

Page 8: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

magaliTi:

#include<stdio.h> #include<conio.h> int main() { char p; printf("Enter a symbol : "); p=getchar(); /* simbolos wakiTxva */ printf("Symbol is : "); putchar(p); /* simbolos beWdva */ getch(); /* ekranis gaCereba */ return 0; }

8

Page 9: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

namdvili ricxvebis tipebifloat, double, long doublefloat f; /* namdvili ricxvi */double d; /* ormagi sizustis */long double x; /* gazrdili sizustis */int main() { printf("float ikavebs %d baits\n", sizeof(f) ); printf("double ikavebs %d baits\n", sizeof(d) ); printf("long double - %d baits\n", sizeof(x) ); return 0; }programis Sesrulebis Sedegi:float ikavebs 4 baitsdouble ikavebs 8 baitslong double - 12 baits   

9

Page 10: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

specifikatorebi printf() da scanf() funqciebSi

ganacxadebi mudmivebzeconst tipi cvladis_saxeli = mniSvneloba ;magaliTad, const float PI = 3.141592;

specifikatorebi gamoyenebebi SeniSvna

%f float printf-sa da scanf-isTvis

%f double mxolod printf-isTvis

%lf double mxolod scanf-isTvis

%Lf long double yvela kompiuterisTvis ar gamoiyeneba

10

Page 11: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

TeqvsmetobiTi da rvaobiTi mudmivebi

• ricxvi iwyeba ″0x″–iT - TeqvsmetobiTi• ricxvi iwyeba ″0″–iT - rvaobiTi ricxvi

int k = 020+0x20+20; //8-biTi, 16-biTi da 10-biTi ocebis jami

printf("%d\n",k); //daibeWdeba 68 (16+32+20)

11

Page 12: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

magaliTi:#include <stdio.h>#include <stdlib.h>int main() {int x = 100;printf("dec=%d;octal=%o;hex=%x\n",x,x,x);printf("dec=%d;octal=%#o;hex=%#x\n",x,x,x); system("PAUSE"); return 0;} programis Serulebis Sedegi: dec = 100; octal = 144; hex = 64 dec = 100; octal = 0144; hex = 0x64

    

12

Page 13: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

for ciklis operatori for (inicializeba; piroba; koreqcia)

Setyobineba;

while (pirobis Semowmeba ) { Setyobineba; koreqcia;}

13

Page 14: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

magaliTi: SevkriboT 5 ricxvi (while cikliT)#include <stdio.h>#include <stdlib.h>int total; /* yvela ricxvis jami */int current; /* damxmare cvladi */int counter; /* ganmeorebaTa mTvleli */int main(){ total=0; counter=0; while(counter<5){ printf("number? "); scanf("%d", &current); total+=current; ++counter; } printf("The grand total is %d\n", total); return (0); }

14

Page 15: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

magaliTi: SevkriboT 5 ricxvi (for cikliT)

#include <stdio.h>#include <stdlib.h>int total; /* yvela ricxvis jami */int current; /* damxmare cvladi */int counter; /* ganmeorebaTa mTvleli */int main(){ total=0; for (counter=0;counter<5;++counter){ printf("number? "); scanf("%d", &current); total+=current; } printf("The grand total is %d\n", total); return (0); }

15

Page 16: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

16

Page 17: Daprogramebis safuZvlebi leqcia #5 2009-2010 sasw.w. I semestri Tsu asoc. prof. naTela arCvaZe Tsu asoc. prof. naTela arCvaZe Tsu, zusti da sabunebismetyvelo

konsultacia: yovel paraskevs 16 saaTze 805 auditoriaSi

kursis kategoriebi: kompiuteruli mecnierebebikursi: daprogramebis safuZvlebi- 2009 Semodgoma მასწავლებელი: ნათელა არჩვაძე

http://moodle.science.tsu.ge/

17