Бағдарламалу технологиясы



жүктеу 1,63 Mb.
бет52/73
Дата03.02.2022
өлшемі1,63 Mb.
#35497
түріОқулық
1   ...   48   49   50   51   52   53   54   55   ...   73
Ба?дарламалу технологиясы

10.2 Құрылым массивін қолдану


Компьютер жадысында ақпаратты көрсетудің жиі қолданылатын формаларының бірі - жазбалар массиві түрінде деректерді ұйымдастыру. 10.1 есебін мысалға ала отырып деректерді өңдейтін, жазбалар массиві түрінде көрсетілген кейбір алгоритмдерді қарастырайық.

10.1-есеп. Студенттер туралы кездейсоқ 20 жазбалар массивін құру. Әрбір жазба студенттің тегі (алты кездейсоқ әріп, біріншісі бас әріп) мен "Физика. Тарих. Матем. Бағдарл. Информ." пәндерінің бес кездейсоқ бағаларынан тұрады.

Құрылған жазбалар массивін шығару. Әрбір студент бойынша бағалар қосындысын есептейтін және шығаратын өңдеу жұмысын орындау керек.

Емтиханнан ең үлкен және ең кіші бағалар алған студенттерді монитор экранына шығару керек.

Кодтар кестесінде бас әріптер (кириллица) 1040 – 1071 нөмерлерінде, ал кіші әріптер 1072 – 1102 аралығында орналасады. Сондықтан студент тегін жазғанда бірінші әріп бірінші диапазоннан, ал қалған бес әріп екінші диапазоннан алынады.

Бағдарлама коды:

using System;

namespace ConsoleApplication1

{

class Program



{

public struct stydent

{

public string fio;



public int[] ocen;

};

public static stydent[] styd = new stydent[20];



public static void sozd()

{

char c;



string s;

int k, j = 0;

char[] buka = new char[6];
Random rd = new Random();

for (int i = 0; i < 20; i++)

{

styd[i].ocen = new int[6];



j = rd.Next(32) + 1040;

buka[0] = (char)(j);

s = buka[0].ToString();

for (int m = 1; m < 6; m++)

{

j = rd.Next(32) + 1072;



buka[m] = (char)(j);

s = s + buka[m].ToString();

k = rd.Next(4) + 2;

styd[i].ocen[m - 1] = k;

}

styd[i].fio = s;



}

Console.WriteLine("Studentter tizimi kyrildi");

}

public static void printz()



{

Console.Write("Nomer \t");

Console.Write("Ati-zhoni \t");

Console.Write("Fizika \t");

Console.Write("Tarih. \t");

Console.Write("Matem. \t");

Console.Write("Bagdarl. \t");

Console.Write("Informat. \t");

Console.WriteLine();

for (int i = 0; i < 20; i++)

{

Console.Write("{0}\t{1}\t", i + 1, styd[i].fio);



for (int m = 0; m < 5; m++)

Console.Write("{0}\t", styd[i].ocen[m]);

Console.WriteLine();

}

Console.WriteLine();



}

public static void stat()

{

int k, j;



Console.Write("ФИО \t");

Console.WriteLine("Ball kosindisi");

for (int i = 0; i < 20; i++)

{

k = 0;



for (j = 0; j < 5; j++)

k = k + styd[i].ocen[j];

Console.WriteLine("{0} {1}", styd[i].fio, k);

styd[i].ocen[5] = k;

}

Console.WriteLine();



}
public static void maxmin()

{

int k = 0, j = 0;



int maxi = -100;

int mini = 150;

for (int i = 0; i < 20; i++)

{

if (maxi < styd[i].ocen[5])



{ maxi = styd[i].ocen[5]; j = i; }

if (mini > styd[i].ocen[5])

{ mini = styd[i].ocen[5]; k = i; }

}

Console.WriteLine();



Console.WriteLine("{0} - Maksimal baldi {1} aldi", maxi, styd[j].fio);

Console.WriteLine("{0} - Manimal baldi {1} aldi", mini, styd[k].fio);

}

static void Main(string[] args)



{ sozd();

printz();

stat();

maxmin();

Console.ReadLine();

}

}



}

Бағдарлама жұмысы:

Studentter tizimi kyrildi

Nomer Ati-zhoni Fizika Tarih. Matem. Bagdarl. Informat.


1 Юаьоюю 2 2 4 2 4

2 Тфютьз 3 3 3 2 3

3 Прилюс 5 5 3 4 4

4 Ьлшвйъ 3 4 4 4 5

5 Алъпам 5 3 4 3 5

6 Фсбфтз 4 5 2 2 2

7 Яшфылф 2 4 3 4 3

8 Чппюов 3 5 5 4 2

9 Ьчзждц 5 4 5 2 4

10 Алъщчх 2 5 4 2 3

11 Дътфцс 2 3 2 4 5

12 Щыыжоу 3 3 2 4 5

13 Жондщю 2 2 2 5 4

14 Стеъюа 5 2 3 3 5

15 Гтслхг 2 5 3 4 4

16 Лфппфу 4 5 2 5 5

17 Йкэджк 4 3 2 4 5

18 Злзжмй 4 4 4 3 3

19 Щзтььд 3 4 5 4 3

20 Дйъвпр 5 2 3 3 3


ФИО Ball kosindisi

Юаьоюю 14

Тфютьз 14

Прилюс 21

Ьлшвйъ 20

Алъпам 20

Фсбфтз 15

Яшфылф 16

Чппюов 19

Ьчзждц 20

Алъщчх 16

Дътфцс 16

Щыыжоу 17

Жондщю 15

Стеъюа 18

Гтслхг 18

Лфппфу 21

Йкэджк 18

Злзжмй 18

Щзтььд 19

Дйъвпр 16
21 - Maksimal baldi Прилюс aldi

14 - Manimal baldi Юаьоюю aldi


Бағдарламада әрбір студент бағасының қосындысын сақтау үшін массивте қосымша бағана қолданылған.


жүктеу 1,63 Mb.

Достарыңызбен бөлісу:
1   ...   48   49   50   51   52   53   54   55   ...   73




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау