2d-array-func-min-avg-10-2-lab.pdf
- 2. Жишээ:
S[6][20]- массивын элементийн тоо
int i, j – массивын элементийн дугаарыг төлөөлөх хувьсагч
int k,m– ҮГД-ийн хамгийн бага утгыг агуулж буй элементийн дугаарыг төлөөлөх хувьсагч
int a, b, c – массивын элементийн тоог төлөөлөх хувьсагч ба тоолуур/S[6][20]-с цөөн утга
оруулахдаа ашиглана/
avg, sum– ҮГД-ийн дундаж утга ба нийлбэрийг хадгалах хувьсагч
min –ҮГД-ийн хамгийн бага утгыг хадгалах хувьсагч
Инженерийн ангид 20 оюутан хамтдаа 6 улирал суралцсан. Тус ангийн оюутнуудын хувьд дараахь
асуудлыг тодорхойлох шаардлага гарсан. Оюутнуудыг 1-с 20 хүртэл дугаарласан гэж үзнэ.
Асуудлууд:
Тус ангийн оюутнуудын 6 улирлын ҮГД-ийн дундаж утгыг олох;
Хамгийн бага ҮГД авсан оюутан хэддүгээр улиралд хэддэх оюутан болохыг тодорхойлох;
Ангийн дундажаас доош ҮГД-тэй суралцсан ямар дугаартай оюутнууд аль улиралд ийм дүнтэй суралцсан болохыг
тодорхойлох;
- 3. 1. Хувьсагч зарлах, өгөгдөл оруулах хэсэг
1. #include <stdio.h>
2. #include<stdlib.h>
3. int main()
4. {
5. int a,b,i,j,k,m,c=0;
6. float min,sum,avg,S[6][20];
7. printf("Heden ulirliin GPA oruulah ve? :");
8. scanf("%d", &a);
9. printf("Heden oyutnii GPA oruulah ve? ");
10. scanf("%d", &b);
11. printf("nGPA utguudaa neg negeer ni
oruulaad Enter tovch darna uu:");
12.for (i = 0; i<a; i++)
13. { for (j=0; j<b ;j++)
14. {
15. printf("n S[%d][%d]= ",i , j);
16. scanf("%f",&S[i][j]);
17. }
18. }
19. system("pause");
- 4. 2. Массивын элементийн дундаж утга ба МИН утгыг байрлалын хамт хэвлэх хэсэг
21. sum=0;
22. min=S[0][0];k=0; m=0;
23. for (i = 0; i < a; i++)
24. {
25. for (j = 0; j <b; j++)
26. { sum=sum+S[i][j];
27. c++;
28. if (min>S[i][j])
29. {
30. min=S[i][j];
31. k=i;
32. m=j;
33. }
34. }
35. }
36. printf("Min GPA avsan oyutan S[%d][%d]=:",k , m);
37. printf("%f",min);
38. printf("n");
39. avg=(sum/c);
40. printf("Average of GPA =:%.4fn",avg);
41. printf("n");
Нөхцөл шалгах үйлдэл давталтын
оператор дотор үүрлэсэн оршиж байна.
Харин давталтын оператор дотор
давхар орсон давталтын оператор мөн
адил үүрлэсэн оператор болж бна.
- 5. 42.for (i = 0; i <a; ++i)
43. {
44. for (j=0;j<b;j++)
45. {
46. if(avg>S[i][j])
47. {
48. printf("Average GPA -s doosh duntei oyutan S[%d][%d]=:",i , j);
49. printf("%f",S[i][j]);
50. printf("n");
51. }
52. }
53. }
54. printf("n");
55. system("pause");
56. return 0;
57.}
2. Массивын элементийн дундажаас доош утгатай элементийг байрлалын хамт хэвлэх хэсэг
- 7. 1. Програмын кодыг өөрийн
компьютерт шивээд Семинарийн
хичээлээр заасан “Зүгшрүүлэлт”
хийх аргыг ашиглаж үзээд
прорамын зүгшрүүлэлт хийсэн
алхам бүрт гарсан үр дүнг харж
ойлгож авна.
2. Мөн Заагчийн талаар
тайлбарласан видео хичээлийг
судлаад Заагч нь өмнө үзсэн
төрлүүдээс ямар ялгаатай
болохыг лекцийн хичээлийн
жишээ бодлогыг шивж
ажиллуулан мэдэж авна.
- 9. Даалгавар:
Инженерийн ангид 20 оюутан хамтдаа 6 улирал суралцсан. Тус ангийн оюутнуудын хувьд
дараахь асуудлыг тодорхойлох шаардлага гарсан. Оюутнуудыг 1-с 20 хүртэл дугаарласан
гэж үзнэ.
Асуудлууд:
Хамгийн өндөр ҮГД авсан оюутан хэддүгээр улиралд хэддэх оюутан болохыг тодорхойлох;
Ангийн дундажаас дээш ҮГД-тэй хэдэн байгааг тодорхойлох;
Даалгаварт өгөгдсөн бодлогыг бодож 10-р лабораторийн ажил илгээх холбоосоор илгээнэ
үү.