33
2010.03.26 Си Осмовы-Си хэлний үндсүүд: 1. №1. Удиртгал Алгоритмын 6 үндсэн чанарууд байдаг. №2 .Команд гэж юуг хэлэх вэ компьютерийн заавал гүйцэтгэх үйлдлийг хэлнэ. №3. Доод түвшний хэлүүд, Өндөр түвшний хэлүүд/Тодорхой компьютерийн өгөгдлөөс хамаарархгүй/ №4. Си хэлний давуу тал/Маш өргөн төрлийн боломжуудтай,/Сөрөг тал/Алдаа гарахад алдаа нь сайн мэдэгддэггүй/ №5. Үндсэн хэсэг Main() {-эхлэл Тооцоолох,Биелэгдэх хэсэг }-төгсгөл №6. First.cpp, First.o гэсэн өргөтгөлтэй байж болно. /Обеъкт файл, функцүүд заавал байх ёстой/ Ингэснээр бид .exe файл болгон гаргана. Анхаарах зүйл:Анхдагч файл байх тохиолдолд сэргээх боломжтой. 7. #include <stdio.h> stdio – Ямар файл багтаах гэж байгаа файлыг дуудаж өгөх команд/standar input output/ #include <stdio.h> Main() { Printf(“text дэлгэцрүү хэвлэнэ”); /Формат файл гэнэ/ { 8 IDE/Integrated Development Environment/ Буцаж сэргээх – Shift-Ctrl-Z; Шинэ файл үүсгэх – Ctrl- N; Ажиллуулах – F9; 9 getch()- өгөгдлийг хадгалж харуулж байдаг/Үсэг дарах бүрт/ Жишээ: #include <stdio.h> #include <conio.h> main() { printf("Hewlene!");

баяраа сургалт

Embed Size (px)

Citation preview

Page 1: баяраа сургалт

2010.03.26

Си Осмовы-Си хэлний үндсүүд:1. №1. Удиртгал

Алгоритмын 6 үндсэн чанарууд байдаг.№2 .Команд гэж юуг хэлэх вэ компьютерийн заавал гүйцэтгэх үйлдлийг хэлнэ.№3. Доод түвшний хэлүүд, Өндөр түвшний хэлүүд/Тодорхой компьютерийн өгөгдлөөс

хамаарархгүй/№4. Си хэлний давуу тал/Маш өргөн төрлийн боломжуудтай,/Сөрөг тал/Алдаа гарахад

алдаа нь сайн мэдэгддэггүй/№5. Үндсэн хэсэг

Main(){-эхлэл

Тооцоолох,Биелэгдэх хэсэг}-төгсгөл

№6. First.cpp, First.o гэсэн өргөтгөлтэй байж болно./Обеъкт файл, функцүүд заавал байх ёстой/

Ингэснээр бид .exe файл болгон гаргана.

Анхаарах зүйл:Анхдагч файл байх тохиолдолд сэргээх боломжтой.№7. #include <stdio.h> stdio – Ямар файл багтаах гэж байгаа файлыг дуудаж

өгөх команд/standar input output/ #include <stdio.h>

Main(){Printf(“text дэлгэцрүү хэвлэнэ”); /Формат файл гэнэ/{

№8 IDE/Integrated Development Environment/Буцаж сэргээх – Shift-Ctrl-Z;Шинэ файл үүсгэх – Ctrl- N;Ажиллуулах – F9;

№9 getch()- өгөгдлийг хадгалж харуулж байдаг/Үсэг дарах бүрт/

Жишээ: #include <stdio.h>#include <conio.h>main()

{printf("Hewlene!");

getch();}

Алдаа гарсан тохиолдолд xxx.h: Файл болон нэр эсвэл хаягдсан байж болох алдаа

№10 //, /* - Талбар <Conio.h> - Гар болон дэлгэцтэй ажиллахад зориулсан толгой файл№11 Дэлгэцрүү гаргадаг зарим код/10/

\n- Шинэ мөрнөөс эхлэх

Page 2: баяраа сургалт

Жишээ бодлого:1

#include <stdio.h>#include <conio.h>int main() { printf("bayraa \n good \n CHi "); getch(); return 0;}

Үр дүн: Баяраа ыбаыба ыбаыбабыа

Жишээ бодлого:2

#include <stdio.h>#include <conio.h>int main() { printf(" *\n ***\n *****\n *******\n HH HH\n XXXXX "); getch(); return 0;}

Үр дүн: Байшингийн хэлбэртэй гарна

№12 Хувьсагч/Өөрийн гэсэн утгатай байна/ Санах ойн мужыг нэг үүр гэнэ/-Төрөл байна:ҮүндInt- 4 байтад хадгалдаг /бүхэл төрөл/Float- 4 байтад хадгалдаг /Бодит тоо/Char-1 байтад хадгалдаг /Тэмдэгт төрөл/

Хувьсагчийн нэр циклээр эхлэж болохгүй мөн дунд нь латин үсэг орж болохгүй

Хувьсагч зарлахдаа: Түүний нэр төрөл анхын утгуудыг нь тодорхойлж түүнд үүр бэлтгэж өгнө

Main(){

Int a;Float b,c /Бодит төрлийн b,c утгыг зарлаж өгнө/Int Tu104, IL83=23, Yak42 = анхны утга олгож байна

Float x=4.56, y, z;Char c, c2=’A’, m;

№13 Утга олгох операторП дээд түвшний оператыг хэлнэ.

A=5;X=a+20; /25/Y=(a+x)*(x-a); /600/

Утга олгох нь: Юуг хааш нь:/Тогтмолыг, Хувьсагчийг, арифметик үйлдлийг/

Page 3: баяраа сургалт

Div - / % - mod үлдэгдэл + ,-,

Жишээ:

Үйлдлийн хураангуй хэлбэр

Page 4: баяраа сургалт

1-р нэмэгдүүлэх1-р хорогдуулах гэх мэт

#include <stdio.h>#include <conio.h>int main(){ int a,b; a=5; b=a+2; a=(a+2)*(b-3); b=a/5; a=a%b; a++; b=(a+14)%7; getch();}Жишээ бодлого 3

Page 5: баяраа сургалт

2 тооны нийлбэр олох /тоог гараас оруулах/

#include <stdio.h>#include <conio.h>main(){ int a, b, c; printf("Á?õýë òîîí óòãóóäàà îðóóëíà óó\n"); scanf ("%d%d", &a, &b); c = a + b; printf("%d", c); getch(); return 0;}Үр дүн 20

%d – целое число /бүхэл тоо/%f – вещественное число /Бодит тоо/%c – 1 символ / Тэмдэгтүүдийн /%s – символьная/ мөр/

Page 6: баяраа сургалт

Бүхэл тоо гаргах

Эсвэл "%i" эсвэл /9 тэмдэгтийн байрлалд хэвлэнэ шүү/

Бодит тоо гаргах

Page 7: баяраа сургалт

/9 хэмжээнд таслалын арас 3 тэмдэгт орно/

#include <stdio.h>#include <conio.h>main(){ int a, b, c; printf("2 toogoo oruulna uu?\n"); scanf("%d%d", &a, &b); c = a + b; printf("%d+%d=%d", a, b, c); getch();}

Үр дүн 101010+10=20

Бодлого №14

#include <stdio.h>

#include <conio.h>

main()

{

int a, b, c,sa,se,so;

printf("3 toogoo oruulna uu?\n");

Page 8: баяраа сургалт

scanf("%d%d%d", &a, &b, &c,&sa,&se,&so);

sa = a + b + c;

se= a*b*c;

so= a/b/c;

printf("%d+%d+%d=%d\n", a, b, c,sa);

printf("%d*%d*%d=%d\n", a, b, c,se);

printf("%d/%d/%d=%d\n", a, b, c,so);

getch();

}

Үр дүн: 10+10+10=30; 10*10*10=1000; 10/10/10=1;

Салаалат бүхий алгоритм

2 бүхэл тоо оруулж аль ихийг нь олАлхамуудын төрөл нь #include <stdio.h>#include <conio.h>main(){

int a, b, max; printf("oruulna uu\n"); scanf("%d%d", &a, &b, &max); if (a > b) { max=a; } else { max=b; } printf("ih %d", max); getch(); return 0;}

5 тооны их#include <stdio.h>#include <conio.h>int main(){

int a, b, c, d, e, max; printf("oruulna uu\n"); scanf("%d%d%d%d%d", &a, &b, &c, &d, &e, &max);

Page 9: баяраа сургалт

max=a; if (b>max) max=b; if (c>max) max=c; if (e>max) max=e; if (d>max) max=d; printf("hamgiin ih: %d", max); getch(); return 0;}

#include <stdio.h>#include <conio.h>main(){

int a, b, c, d, e, max; printf("oruulna uu\n"); scanf("%d%d%d%d%d", &a, &b, &c, &d, &e, &max); if (a > b) { max=a; } else if (b > c) { max=b; } else if (c > d) { max=c;

} else if (d > e) { max=d; } else { max=e; } printf("hamgiin ih: %d", max); getch(); return 0;}

Нийлмэл нөхцөл2 нөхцөл зэрэг биелэж байна уу гэдгийг олно

Page 10: баяраа сургалт

#include<stdio.h>#include<conio.h>main(){

int x; printf("насаа оруул\n"); scanf("%d", &x); if (x >= 25) if (x <= 40) printf("Залуу"); else printf("Хөгшин"); else printf("Тохирохгүй"); getch();}-----------------------------------------------------------------#include<stdio.h>#include<conio.h>main() { int x; printf("Nasaa oruulna uu?\n"); scanf("%d", &x); if ( x >= 25 && x <= 40 ) printf("Zaluu"); else printf("tohirohgvi bna"); getch(); }

Хэд хэдэн энгийн нөхцлөөс хамаарсныг НИЙЛМЭЛ нөхцөл байнаЭдгээр нь олон логик нөхцөлтэй байна.||-or эсвэл!-үгүйсгэл== тэнцүү, = утга оноох, != тэнцүү биш

Page 11: баяраа сургалт

Үйлдлийн дараалал ямар байх вэ?

#include<stdio.h>#include<conio.h>main() { int x; printf("Nasaa oruulna uu?\n"); scanf("%d", &x);

Үйлийн төрөл нь INT төрөлтэйгөөр явагдана

Page 12: баяраа сургалт

if ( x >= 1 && x <= 18 ) printf("hvvhed"); else printf("tom hvn"); getch(); }

Давталт

Давталтын тоо нь тодорхой байдаг/Праметрт давталт/Алхамын тоог тодорхой бус/Нөхцөлтэй давталт/

1-8 хүртэлх тоонуудын кв куб дэлгэцэн хэвлэ

1-р нэмэгдэх байдлаар#include<stdio.h>#include<conio.h>main() {int i, i2, i3;for (i=1; i<=8; i++) { i2 = i*i; i3 = i2*i; printf("%4d %4d %4d\n", i, i2, i3); } getch();}

Page 13: баяраа сургалт

FOR операторын ажиллах зарчим

1-р хорогдох байдлаар#include<stdio.h>#include<conio.h>main() {int i, i2, i3; for ( i = 8; i >= 1; i-- ) { i2 = i*i; i3 = i2*i; printf("%4d %4d %4d\n", i, i2, i3); } getch();}

For (<анхны утга>; <Нөхцөл>;<Утгыг өөрчлөх хэсэг>)

Page 14: баяраа сургалт

#include<stdio.h>#include<conio.h>main() {int i, ib, ir;ib=1; printf("%5d %5d %5d\n",1,1,1);for (i=2; i<=10; i++) { ir=ib+(i-1); printf("%6d %6d %6d\n",ir,ir*ir,ir*ir*ir); ib=ir; } getch();}

Page 15: баяраа сургалт

Нөхцөлт давталт

Бүхэл тоог тодорхойл

N!=0 – 0-с ялгаатайWhile operator ashiglana

Ардаа нөхцөлтэй давталтНөхцөл шалгах үйлдэл нь давталтын төгсгөлд хийгдэж байгаа үед хэлнэээээ.

Page 16: баяраа сургалт

Нийт сар хэд хоногтой вэ?#include<stdio.h>#include<conio.h>main(){ int M, D; printf("Ugugdluu oruulna uu:\n"); scanf("%d", &M); switch ( M ) { case 2: D = 28; break;

case 4: case 6: case 9: case 11: D = 30; break;

case 1: case 3: case 5: case 7: case 8: case 10: case 12: D = 31; break;

default: D = -1; } if (D > 0) printf("ene sar %d honogtoi.", D); else printf("ugugdol buruu bna"); getch(); return 0;}

12 сарын 31 болоход хэд хоног дутуу байна вэ#include<stdio.h>#include<conio.h>int main(){ int Mo, Da; int Nd; printf("sar odroo oruulna uu:\n"); scanf("%d%d", &Mo,&Da); switch (Mo) { case 1: { Nd=(31*6+30*4+28)+(31-Da); break;} case 2: { Nd=(31*6+30*4)+(28-Da);break;} case 3: { Nd=(31*5+30*4)+(31-Da);break;} case 4: { Nd=(31*5+30*3)+(30-Da);break;} case 5: { Nd=(31*4+30*3)+(31-Da);break;} case 6: { Nd=(31*4+30*2)+(30-Da);break;} case 7: { Nd=(31*3+30*2)+(31-Da);break;} case 8: { Nd=(31*2+30*2)+(31-Da);break;} case 9: { Nd=(31*2+30)+(30-Da);break;}

Page 17: баяраа сургалт

case 10: { Nd=(31+30)+(30-Da);break;} case 11: { Nd=(31+(30-Da));break;} case 12: { Nd=(31-Da);break;}

default: Nd=-1; } if (Da > -1) printf("shine jil boltol %d dutuu bna.", Nd); else printf("ugugdol buruu bna"); getch();}

Do while ашиглан гараас гарагийн дугаар оруулж үр дүнг гаргах бодлого#include<stdio.h>#include<conio.h>int main(){ int yes, day;do { printf("Garagiin dugaaraa oruulna uu!\n"); scanf("%d", &day); switch (day) { case 1: {yes=1;printf("Monday\n"); break;} case 2: {yes=1;printf("Tuesday\n"); break;} case 3:{yes=1;printf("Wednesday\n"); break;} case 4:{yes=1;printf("Thursday\n"); break;} case 5:{yes=1;printf("Friday\n"); break;} case 6:{yes=1;printf("Saturday\n"); break;} case 7:{yes=1;printf("Sunday\n"); break;} default: yes=0; } } while (yes==0); /Давталтын нөхцөл шалгах/

getch();}

Page 18: баяраа сургалт

2010 III/27

МассивМассив гэж юу вэInt a;A=5; Си хэлэнд ,энгийн өгөгдлүүдээр нийлмэл өгөгдлийг бүтээж болно. Нийлмэл өгөгдлүүд гэдэгт МАССИВ, ,БҮТЭЦ, НЭГДЭЛ ФАЙЛ гэх мэтийг харуулдаг

Массив/array/ гэдэг нь нэгэн ижил төрлийн, олон тооныЭлементийн дугаарыг индекс (index) гэнэ. Индекс нь 0 эхлэн тоологдоно.

Массив нь математикийн матрицийг програмчилалын хэлэнд олгож болно.

Double z[4][6]={{1}{2}{3}{4}};Зургаар дүрсэлбэл:1 * * * * *2 * * * * *3 * * * * *4 * * * * *

,Int x[5][4]= {{1}{2,3}{4,5,6}{7,8,9,10}};-Гурвалжин массив1 * * *

2 3 * *4 5 6 *7 8 9 10* * * *

Өөрчлөгдөх боломжгүй утгыг тогтмолууд гэнэ.

Тогтмол массив зарлахдаа Const ашиглана.

Page 19: баяраа сургалт

8 хэмжээст Массивийн бүх элементийг 1 болгох програм зохио#include<stdio.h>#include<conio.h>main(){ unsigned char a[8]; int i; for(i=0; i<=7; i++) { a[i]=1; printf("\n a[%d]=%u",i,a[i]); } getch(); return 0;}

ееееееееееееееееееееееееееееееееееееееееееееееееееееееее#include<stdio.h>#include<conio.h>main(){ unsigned char a[8]; int i,max; max=-1; for(i=0; i<=7; i++) { a[i]=i; printf("a[%d]=%d\n",i,a[i]); } for(i=0; i<=7; i++) if (a[i]>max) max=a[i]; printf("hamgiin ih:%d",max); getch(); return 0;}

еееееееееееееееееееееееееееееееееееееееееееееееееееее#include<stdio.h>#include<conio.h>main(){ unsigned char a[8]; int i,max; for(i=0; i<=7; i++) a[i]=i; //anhnii utgiig onooj ugch bna for(i=0; i<=7; i++) printf("%3d",a[i]);

Page 20: баяраа сургалт

max=-100; for(i=0; i<=7; i++) if (a[i]>max) max=a[i]; printf("\n\n max element ni: %d", max); getch(); }

Тогтмол утга оруулахГараас утга оруулах

#include<stdio.h>#include<conio.h>main(){ unsigned char a[8]; int i,max; for(i=0; i<=7; i++){ printf("\na[%d]= ",i); scanf("%d",&a[i]); } for(i=0; i<=7; i++) printf("%3d",a[i]); max=-100; for(i=0; i<=7; i++) if (a[i]>max) max=a[i]; printf("\n\n max element ni: %d", max); getch(); }

Page 21: баяраа сургалт

Санамсаргүй тооны үүсгүүрийг ашиглан оруулахСанамсаргүй тоог бэлэн функц ашиглаж үүсгэнэRand()%size;Rand()-stdlib.h сангийн стандарт функцд Size-хамгийн ихдээ хэд хүртэлх тоог үүсгэхийн бэ #include<stdio.h>#include<conio.h>#include<stdlib.h>main(){ unsigned char a[8]; int i,max; for(i=0; i<=7; i++) a[i]=rand()%100; //86+rand()%10 //anhnii utgiig onooj ugch bna for(i=0; i<=7; i++) printf("%3d'",a[i]); max=-100; for(i=0; i<=7; i++) if (a[i]>max) max=a[i]; printf("\n\n max element ni: %d", max); getch(); }

#include<stdio.h>#include<conio.h>main(){ unsigned char a[5][5]; unsigned char i,j; for(i=0; i<=4; i++) { for(j=0; j<=4; j++) { a[i][j]=i*j; printf("%3d",a[i][j]); } printf("\n");

getch();}getch();}

Page 22: баяраа сургалт

#include<stdio.h>#include<conio.h>main(){ unsigned char a[5][5]; unsigned char i,j; for(i=0; i<=4; i++) { for(j=0; j<=4; j++) { a[i][j]=i*j; printf("%3d",a[i][j]); getch(); } printf("\n");

getch();}getch();}

#include<stdio.h>#include<conio.h>main(){ unsigned char a[5][5]; unsigned char i,j; for(i=0; i<=4; i++) for(j=0; j<=4; j++) { a[i][j]=i*j; printf("a[%d][%d]=%d\n",i,j,a[i][j]); } getch();}

Page 23: баяраа сургалт

#include<stdio.h>#include<conio.h>#include<stdlib.h>main(){ unsigned char a[8]; int i,s; for(i=0; i<=8; i++) a[i]=rand()%20; for(i=0; i<=8; i++) printf("%3d",a[i]); s=0; for(i=0; i<=8; i++) s=s+a[i]; printf("\n\n niilber element ni: %d", s); getch();}

ФунцДэд програмыг Фунц – Function –Утга буцаанаПроцедур – procedure – Утга буцаахгүй

- СтандартPrintf()

- ХэрэглэгчийнӨдрийн дугаарыг оруулахад нэрийг нь буцаадаг функц

String weekday(int a)

N хүртэлх тоонууд дотроос анхны тоонуудыг олN хүртэлх тоонуудаас палиндром анхны тоонууд байна ууАнхны тоо мөн эсэхийг шалгадаг функц хэрэгтэй болно.

Int ankh(int a);

Хэрэглэгчийн функц

Page 24: баяраа сургалт

#include<stdio.h>#include<conio.h>main(){ int a,b; //undsen programiin biy a=Function1(); b=Function2(); printf("%d%d",a,b); getch(); }int Function1(parametr baij bolno){..........return;}int Function2(parametr baij bolno){..........return;}void Proced(parametr baij bolno){ }

File, Directory-ийн нэршлийн асуудал

#include<stdio.h>#include<conio.h>int zereg(int a, int b){ int k,c; c=1; for(k=0; k<b; k++) c=c*a; printf("%d -toonii %d -zereg ni: %d",a,b,c); return c;}main(){ int i,m,n,z; printf("toog oruul ="); scanf("%d",&m); printf("Zergiig oruul ="); scanf("%d",&z); zereg(m,z); getch(); return 0;}

Page 25: баяраа сургалт

Асуудал:

Формал ба бодит параметруудХэрэглэгчийн функцийг зарлахдаа мөн тодорхойлохдоо нэрийнх нь ард хаалтанд дотор бичиж буй аргументуудыг формал(хуурмаг) параметр гэнэ.

БодлогоӨгөгдсөн тоон дотор ямар цифр хэдэн удаа давтагдаж орсон байна вэ?---------------------2231A=2B=2C=3D=1----------------------- 111111111111222222222222333333344444444555555555500000000546564513 Тэмдэгт мөр + массив ашиглаж бодно.1-8 удаа2-9 удаа3-3 удаа

Int digit[10];

Тэмдэгт мөрийн жижиг үсгүүдийг том, том үсгүүдийг жижиг үсгээр соль /ASCII KOD АШИГЛАНА/a-97 A-65z-122 Z-90

Page 26: баяраа сургалт

ФАЙЛЯагаад файлын тухай гэж?W:Бид програмын оролтын өгөгдлийг хаанаас оруулж байна юэ?q:гараас

Файлын оролт гаралтын тухай сайн мэдэх хэрэгтэй

Нөгөө талаас гадаад санах ой тухайлбал диск дээр орших файл бол байтуудын далаалал байдаг. Үүнтэй холбоотойгоор оролт гаралтын хэрэгсэл гэсэн ойлголт мөн файлыг хамруулж болох юм.

Файлтай ажиллах 2 хэлбэр- Доод түвшний хандалт /Low-level access/- Урсгалаар дамжуулан ажиллах /stream-level access/

Урсгал гэж юу вэ?Мэдээллийг үүсгэж буй эсвэл мэдээллийг хүлээн авч буй бодит хэрэгслийн төлөөлсөн логик хэрэгсэл юм.

Гар ба дэлгэцийг төлөөлсөн урсгалуудыг стандарт урсгалууд гэдэг.

- Урсгал үүсгэх- Урсгалыг нээж файлтай холбох- Дээр оролт гаралтын үйлдэл хийх- Урсгалыг хаах

Си хэлэнд урсгалыг урсгалын заагч хэмээх ойлголтооор илэрхийлдэг.Урсгалын заагч нь FILE гэсэн өгөгдлийн төрөлд хамаардаг

FILE * урсгалын_нэр;

Дараагийн алхам бол үүсгэсэн урсгалаа нээж, физик файлтай холбох явдал. ҮҮний тулд

Урсгалын нэр=Fopen(файлын_бүтэц_нэр,_урсгалыг_нээх_горим)- Fopen - Урсгалыг нээж, файлтай холбох стандарт функц- Файлын_нэр - холбох файлын нэр

Жишээ нь:Урсгалыг нээж файлтай холбохдоо эдгээрийн аль нэгийг ашиглана-“W” - Нэр бүхий файл, зөвхөн бичихийн тулд шинээр горим үүсгэх-“r”- уншихийн тулд нээх горим-“a”- Төгсгөлд нь нэмж бичихийн тулд нээх шинээр үүсгэх горим

Page 27: баяраа сургалт

#include<stdio.h>#include<conio.h>main () { FILE *fp; //failiin ursgaliig vvsgej baina fp = fopen ("int.dat","r"); //ursgaliig ajillah failtai holboj ugch bna unsigned int i,k; for(i=1; i<=5; i++) { fscanf(fp,"%u",&k); //ursgalaar damjuulan file-aas buhel toonuudiig ol printf("%u",k); } fclose (fp); getch();}

Файл руу бичих, файлаас унших

Fputc()Fgetc()Fputs()Fgets()

Функц –Сэргээн санахFactoria-ФакториалFact *=n;Fact=fact*n;Return fact;

#include<stdio.h>#include<conio.h>int factRec(int n){ if(n==0 || n==1) return 1; return n*factRec(n-1);}int main() { int i; printf("Utgaa oruul: "); scanf("%d", &i); printf("%d -iin fatctorial: %d",i,factRec(i)); scanf("%d", &i);}

Page 28: баяраа сургалт

Өгөгдсөн натурал тоонуудын цифрүүдийн нийлбэрийг ол

#include<stdio.h>#include<conio.h>int main() { int i,k,l; printf("oruul: "); scanf("%d", &i); k=i; l=0; while(k!=0) { l+=k%10; k/=10; } printf("\n%d -ogodson tsifrvvdiin niilber: %d",i,l); getch(); return 0;}