SlideShare a Scribd company logo
1 of 28
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- Шинэ мөрнөөс эхлэх
Жишээ бодлого: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 HHn 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/
Утга олгох нь: Юуг хааш нь:/Тогтмолыг, Хувьсагчийг, арифметик үйлдлийг/
Div - / % - mod үлдэгдэл + ,-,
Жишээ:
Үйлдлийн хураангуй хэлбэр
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
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 – символьная/ мөр/
Бүхэл тоо гаргах
Эсвэл "%i" эсвэл /9 тэмдэгтийн байрлалд хэвлэнэ шүү/
Бодит тоо гаргах
/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();
}
Үр дүн
10
10
10+10=20
Бодлого №14
#include <stdio.h>
#include <conio.h>
main()
{
int a, b, c,sa,se,so;
printf("3 toogoo oruulna uu?n");
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=%dn", a, b, c,sa);
printf("%d*%d*%d=%dn", a, b, c,se);
printf("%d/%d/%d=%dn", 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 uun");
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 uun");
scanf("%d%d%d%d%d", &a, &b, &c, &d, &e, &max);
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 uun");
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 нөхцөл зэрэг биелэж байна уу гэдгийг олно
#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 эсвэл
!-үгүйсгэл
== тэнцүү, = утга оноох, != тэнцүү биш
Үйлдлийн дараалал ямар байх вэ?
#include<stdio.h>
#include<conio.h>
main()
{
int x;
printf("Nasaa oruulna uu?n");
scanf("%d", &x);
Үйлийн төрөл нь INT
төрөлтэйгөөр явагдана
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 %4dn", i, i2, i3);
}
getch();
}
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 %4dn", i, i2, i3);
}
getch();
}
For (<анхны утга>; <Нөхцөл>;<Утгыг
өөрчлөх хэсэг>)
#include<stdio.h>
#include<conio.h>
main()
{
int i, ib, ir;
ib=1;
printf("%5d %5d %5dn",1,1,1);
for (i=2; i<=10; i++)
{
ir=ib+(i-1);
printf("%6d %6d %6dn",ir,ir*ir,ir*ir*ir);
ib=ir;
}
getch();
}
Нөхцөлт давталт
Бүхэл тоог тодорхойл
N!=0 – 0-с ялгаатай
While operator ashiglana
Ардаа нөхцөлтэй давталт
Нөхцөл шалгах үйлдэл нь давталтын төгсгөлд хийгдэж байгаа үед хэлнэээээ.
Нийт сар хэд хоногтой вэ?
#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;}
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("Mondayn"); break;}
case 2: {yes=1;printf("Tuesdayn"); break;}
case 3:{yes=1;printf("Wednesdayn"); break;}
case 4:{yes=1;printf("Thursdayn"); break;}
case 5:{yes=1;printf("Fridayn"); break;}
case 6:{yes=1;printf("Saturdayn"); break;}
case 7:{yes=1;printf("Sundayn"); break;}
default: yes=0; }
}
while (yes==0); /Давталтын нөхцөл шалгах/
getch();
}
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 ашиглана.
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]=%dn",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]);
max=-100;
for(i=0; i<=7; i++)
if (a[i]>max) max=a[i];
printf("nn 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("nn max element ni: %d", max);
getch();
}
Санамсаргүй тооны үүсгүүрийг ашиглан оруулах
Санамсаргүй тоог бэлэн функц ашиглаж үүсгэнэ
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("nn 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();
}
#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]=%dn",i,j,a[i][j]);
}
getch();
}
#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("nn niilber element ni: %d", s);
getch();
}
Фунц
Дэд програмыг
Фунц – Function –Утга буцаана
Процедур – procedure – Утга буцаахгүй
- Стандарт
Printf()
- Хэрэглэгчийн
Өдрийн дугаарыг оруулахад нэрийг нь буцаадаг функц
String weekday(int a)
N хүртэлх тоонууд дотроос анхны тоонуудыг ол
N хүртэлх тоонуудаас палиндром анхны тоонууд байна уу
Анхны тоо мөн эсэхийг шалгадаг функц хэрэгтэй болно.
Int ankh(int a);
Хэрэглэгчийн функц
#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;
}
Асуудал:
Формал ба бодит параметрууд
Хэрэглэгчийн функцийг зарлахдаа мөн тодорхойлохдоо нэрийнх нь ард хаалтанд
дотор бичиж буй аргументуудыг формал(хуурмаг) параметр гэнэ.
Бодлого
Өгөгдсөн тоон дотор ямар цифр хэдэн удаа давтагдаж орсон байна вэ?
---------------------
2231
A=2
B=2
C=3
D=1
-----------------------
111111111111222222222222333333344444444555555555500000000546564513
Тэмдэгт мөр + массив ашиглаж бодно.
1-8 удаа
2-9 удаа
3-3 удаа
Int digit[10];
Тэмдэгт мөрийн жижиг үсгүүдийг том, том үсгүүдийг жижиг үсгээр соль /ASCII KOD
АШИГЛАНА/
a-97 A-65
z-122 Z-90
ФАЙЛЯагаад файлын тухай гэж?
W:Бид програмын оролтын өгөгдлийг хаанаас оруулж байна юэ?
q:гараас
Файлын оролт гаралтын тухай сайн мэдэх хэрэгтэй
Нөгөө талаас гадаад санах ой тухайлбал диск дээр орших файл бол байтуудын
далаалал байдаг. Үүнтэй холбоотойгоор оролт гаралтын хэрэгсэл гэсэн ойлголт мөн
файлыг хамруулж болох юм.
Файлтай ажиллах 2 хэлбэр
- Доод түвшний хандалт /Low-level access/
- Урсгалаар дамжуулан ажиллах /stream-level access/
Урсгал гэж юу вэ?
Мэдээллийг үүсгэж буй эсвэл мэдээллийг хүлээн авч буй бодит хэрэгслийн төлөөлсөн
логик хэрэгсэл юм.
Гар ба дэлгэцийг төлөөлсөн урсгалуудыг стандарт урсгалууд гэдэг.
- Урсгал үүсгэх
- Урсгалыг нээж файлтай холбох
- Дээр оролт гаралтын үйлдэл хийх
- Урсгалыг хаах
Си хэлэнд урсгалыг урсгалын заагч хэмээх ойлголтооор илэрхийлдэг.Урсгалын
заагч нь FILE гэсэн өгөгдлийн төрөлд хамаардаг
FILE * урсгалын_нэр;
Дараагийн алхам бол үүсгэсэн урсгалаа нээж, физик файлтай холбох явдал. ҮҮний
тулд
Урсгалын нэр=Fopen(файлын_бүтэц_нэр,_урсгалыг_нээх_горим)
- Fopen - Урсгалыг нээж, файлтай холбох стандарт функц
- Файлын_нэр - холбох файлын нэр
Жишээ нь:Урсгалыг нээж файлтай холбохдоо эдгээрийн аль нэгийг ашиглана
-“W” - Нэр бүхий файл, зөвхөн бичихийн тулд шинээр горим үүсгэх
-“r”- уншихийн тулд нээх горим
-“a”- Төгсгөлд нь нэмж бичихийн тулд нээх шинээр үүсгэх горим
#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);
}
Өгөгдсөн натурал тоонуудын цифрүүдийн нийлбэрийг ол
#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;
}

More Related Content

What's hot (12)

Dynamic web 7
Dynamic web 7Dynamic web 7
Dynamic web 7
 
Лекц №16
Лекц №16Лекц №16
Лекц №16
 
Лекц №11
Лекц №11Лекц №11
Лекц №11
 
Лекц №14
Лекц №14Лекц №14
Лекц №14
 
Mzui
MzuiMzui
Mzui
 
Лекц №12
Лекц №12Лекц №12
Лекц №12
 
Лекц №8
Лекц №8Лекц №8
Лекц №8
 
Dynamic web 3-4
Dynamic web 3-4Dynamic web 3-4
Dynamic web 3-4
 
Лекц №7
Лекц №7Лекц №7
Лекц №7
 
Лекц №9
Лекц №9Лекц №9
Лекц №9
 
Лекц №10
Лекц №10Лекц №10
Лекц №10
 
Lekts 5
Lekts  5Lekts  5
Lekts 5
 

Viewers also liked

Viewers also liked (9)

алгоритмын ангилал
алгоритмын ангилалалгоритмын ангилал
алгоритмын ангилал
 
массив
массивмассив
массив
 
Dev c++ program ajilluulax
Dev c++ program ajilluulaxDev c++ program ajilluulax
Dev c++ program ajilluulax
 
Bodlogo
BodlogoBodlogo
Bodlogo
 
бие даалт № 1 borland c++
бие даалт № 1 borland c++бие даалт № 1 borland c++
бие даалт № 1 borland c++
 
Excel function
Excel functionExcel function
Excel function
 
C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1
 
Davaa123
Davaa123Davaa123
Davaa123
 
бодлого C++
бодлого C++бодлого C++
бодлого C++
 

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

Similar to баяраа сургалт (20)

Hylbar shugaman programmuud хичээл 4
Hylbar shugaman programmuud хичээл 4Hylbar shugaman programmuud хичээл 4
Hylbar shugaman programmuud хичээл 4
 
си хэл 10
си хэл 10си хэл 10
си хэл 10
 
Давталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогуудДавталттай алгоритмын бодлогууд
Давталттай алгоритмын бодлогууд
 
For ci
For ciFor ci
For ci
 
U.cs101 лаборатори 1
U.cs101 лаборатори 1U.cs101 лаборатори 1
U.cs101 лаборатори 1
 
Lab1 hylbar program
Lab1 hylbar programLab1 hylbar program
Lab1 hylbar program
 
Лабораторийн ажил № 2
Лабораторийн ажил № 2Лабораторийн ажил № 2
Лабораторийн ажил № 2
 
Лекц 3 (Давталт)
Лекц 3 (Давталт)Лекц 3 (Давталт)
Лекц 3 (Давталт)
 
Unshih hewleh uildel хичээл 3
Unshih hewleh uildel хичээл 3Unshih hewleh uildel хичээл 3
Unshih hewleh uildel хичээл 3
 
Do..while presentation
Do..while presentationDo..while presentation
Do..while presentation
 
Лаборатор-3
Лаборатор-3Лаборатор-3
Лаборатор-3
 
Програмчлалын хэл
Програмчлалын хэлПрограмчлалын хэл
Програмчлалын хэл
 
Ci hel
Ci helCi hel
Ci hel
 
If presentation
If presentationIf presentation
If presentation
 
C lects (1)
C lects (1)C lects (1)
C lects (1)
 
C lects (5)
C lects (5)C lects (5)
C lects (5)
 
C lects (2)
C lects (2)C lects (2)
C lects (2)
 
001cclass 120926194905-phpapp02
001cclass 120926194905-phpapp02001cclass 120926194905-phpapp02
001cclass 120926194905-phpapp02
 
For presentation
For presentationFor presentation
For presentation
 
Програмчлал I - Laboratory 1
Програмчлал I - Laboratory 1Програмчлал I - Laboratory 1
Програмчлал I - Laboratory 1
 

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

  • 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- Шинэ мөрнөөс эхлэх
  • 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 HHn 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/ Утга олгох нь: Юуг хааш нь:/Тогтмолыг, Хувьсагчийг, арифметик үйлдлийг/
  • 3. Div - / % - mod үлдэгдэл + ,-, Жишээ: Үйлдлийн хураангуй хэлбэр
  • 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
  • 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 – символьная/ мөр/
  • 6. Бүхэл тоо гаргах Эсвэл "%i" эсвэл /9 тэмдэгтийн байрлалд хэвлэнэ шүү/ Бодит тоо гаргах
  • 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(); } Үр дүн 10 10 10+10=20 Бодлого №14 #include <stdio.h> #include <conio.h> main() { int a, b, c,sa,se,so; printf("3 toogoo oruulna uu?n");
  • 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=%dn", a, b, c,sa); printf("%d*%d*%d=%dn", a, b, c,se); printf("%d/%d/%d=%dn", 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 uun"); 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 uun"); scanf("%d%d%d%d%d", &a, &b, &c, &d, &e, &max);
  • 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 uun"); 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 нөхцөл зэрэг биелэж байна уу гэдгийг олно
  • 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 эсвэл !-үгүйсгэл == тэнцүү, = утга оноох, != тэнцүү биш
  • 11. Үйлдлийн дараалал ямар байх вэ? #include<stdio.h> #include<conio.h> main() { int x; printf("Nasaa oruulna uu?n"); scanf("%d", &x); Үйлийн төрөл нь INT төрөлтэйгөөр явагдана
  • 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 %4dn", i, i2, i3); } getch(); }
  • 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 %4dn", i, i2, i3); } getch(); } For (<анхны утга>; <Нөхцөл>;<Утгыг өөрчлөх хэсэг>)
  • 14. #include<stdio.h> #include<conio.h> main() { int i, ib, ir; ib=1; printf("%5d %5d %5dn",1,1,1); for (i=2; i<=10; i++) { ir=ib+(i-1); printf("%6d %6d %6dn",ir,ir*ir,ir*ir*ir); ib=ir; } getch(); }
  • 15. Нөхцөлт давталт Бүхэл тоог тодорхойл N!=0 – 0-с ялгаатай While operator ashiglana Ардаа нөхцөлтэй давталт Нөхцөл шалгах үйлдэл нь давталтын төгсгөлд хийгдэж байгаа үед хэлнэээээ.
  • 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;}
  • 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("Mondayn"); break;} case 2: {yes=1;printf("Tuesdayn"); break;} case 3:{yes=1;printf("Wednesdayn"); break;} case 4:{yes=1;printf("Thursdayn"); break;} case 5:{yes=1;printf("Fridayn"); break;} case 6:{yes=1;printf("Saturdayn"); break;} case 7:{yes=1;printf("Sundayn"); break;} default: yes=0; } } while (yes==0); /Давталтын нөхцөл шалгах/ getch(); }
  • 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 ашиглана.
  • 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]=%dn",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]);
  • 20. max=-100; for(i=0; i<=7; i++) if (a[i]>max) max=a[i]; printf("nn 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("nn max element ni: %d", max); getch(); }
  • 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("nn 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(); }
  • 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]=%dn",i,j,a[i][j]); } getch(); }
  • 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("nn niilber element ni: %d", s); getch(); } Фунц Дэд програмыг Фунц – Function –Утга буцаана Процедур – procedure – Утга буцаахгүй - Стандарт Printf() - Хэрэглэгчийн Өдрийн дугаарыг оруулахад нэрийг нь буцаадаг функц String weekday(int a) N хүртэлх тоонууд дотроос анхны тоонуудыг ол N хүртэлх тоонуудаас палиндром анхны тоонууд байна уу Анхны тоо мөн эсэхийг шалгадаг функц хэрэгтэй болно. Int ankh(int a); Хэрэглэгчийн функц
  • 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; }
  • 25. Асуудал: Формал ба бодит параметрууд Хэрэглэгчийн функцийг зарлахдаа мөн тодорхойлохдоо нэрийнх нь ард хаалтанд дотор бичиж буй аргументуудыг формал(хуурмаг) параметр гэнэ. Бодлого Өгөгдсөн тоон дотор ямар цифр хэдэн удаа давтагдаж орсон байна вэ? --------------------- 2231 A=2 B=2 C=3 D=1 ----------------------- 111111111111222222222222333333344444444555555555500000000546564513 Тэмдэгт мөр + массив ашиглаж бодно. 1-8 удаа 2-9 удаа 3-3 удаа Int digit[10]; Тэмдэгт мөрийн жижиг үсгүүдийг том, том үсгүүдийг жижиг үсгээр соль /ASCII KOD АШИГЛАНА/ a-97 A-65 z-122 Z-90
  • 26. ФАЙЛЯагаад файлын тухай гэж? W:Бид програмын оролтын өгөгдлийг хаанаас оруулж байна юэ? q:гараас Файлын оролт гаралтын тухай сайн мэдэх хэрэгтэй Нөгөө талаас гадаад санах ой тухайлбал диск дээр орших файл бол байтуудын далаалал байдаг. Үүнтэй холбоотойгоор оролт гаралтын хэрэгсэл гэсэн ойлголт мөн файлыг хамруулж болох юм. Файлтай ажиллах 2 хэлбэр - Доод түвшний хандалт /Low-level access/ - Урсгалаар дамжуулан ажиллах /stream-level access/ Урсгал гэж юу вэ? Мэдээллийг үүсгэж буй эсвэл мэдээллийг хүлээн авч буй бодит хэрэгслийн төлөөлсөн логик хэрэгсэл юм. Гар ба дэлгэцийг төлөөлсөн урсгалуудыг стандарт урсгалууд гэдэг. - Урсгал үүсгэх - Урсгалыг нээж файлтай холбох - Дээр оролт гаралтын үйлдэл хийх - Урсгалыг хаах Си хэлэнд урсгалыг урсгалын заагч хэмээх ойлголтооор илэрхийлдэг.Урсгалын заагч нь FILE гэсэн өгөгдлийн төрөлд хамаардаг FILE * урсгалын_нэр; Дараагийн алхам бол үүсгэсэн урсгалаа нээж, физик файлтай холбох явдал. ҮҮний тулд Урсгалын нэр=Fopen(файлын_бүтэц_нэр,_урсгалыг_нээх_горим) - Fopen - Урсгалыг нээж, файлтай холбох стандарт функц - Файлын_нэр - холбох файлын нэр Жишээ нь:Урсгалыг нээж файлтай холбохдоо эдгээрийн аль нэгийг ашиглана -“W” - Нэр бүхий файл, зөвхөн бичихийн тулд шинээр горим үүсгэх -“r”- уншихийн тулд нээх горим -“a”- Төгсгөлд нь нэмж бичихийн тулд нээх шинээр үүсгэх горим
  • 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); }
  • 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; }