Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Массив структур

Читайте также:
  1. II. Структурные элементы письменных работ и требования к их содержанию
  2. II. Требования к структуре образовательной программы дошкольного образования и ее объему
  3. III. Органы и структуры эмбриона
  4. III. Структура процесса мышления.
  5. III. Структура Студенческого совета
  6. III. Требования к структуре основной образовательной программы основного общего образования
  7. IV Структура действия

 

Для хранения информации естественно задействовать массив структур, каждый элемент которого является структурой с одинаковым набором полей, содержащих соответствующее значение.

Пример 1. Успеваемость группы по шести предметам представлена в табл. 1.

Табл. 2. К примеру 1.

Фамилия Имя   Оценки по предметам
           
  Алексеев Иван              
  Васильев Сергей              

 

Листинг программы, заполняющей массива структур с помощью оператора присваивания.

 

% Заполнение первой структуры массива

GR201(1).Family = 'Алексеев';

GR201(1).Name = 'Иван';

GR201(1).Year = 1980;

GR201(1).Marks = [5 4 4 5 5 4];

% Заполнение второй структуры массива

GR201(2).Family = 'Васильев';

GR201(2).Name = 'Сергей';

GR201(2).Year = 1981;

GR201(2).Marks = [3 4 4 3 5 4];

% Заполнение третьей структуры массива

GR201(3).Family = 'Кашин';

GR201(3).Name = 'Павел';

GR201(3).Year = 1979;

GR201(3).Marks = [4 3 4 4 5 4];

% Заполнение четвертой структуры массива

GR201(4).Family = 'Серова';

GR201(4).Name = 'Наталья';

GR201(4).Year = 1981;

GR201(4).Marks = [4 3 3 5 4 5];

% Заполнение пятой структуры массива

GR201(5).Family = 'Терехова';

GR201(5).Name = 'Ольга';

GR201(5).Year = 1980;

GR201(5).Marks = [5 5 5 5 4 5];

 

Задание 2. Добавьте в массив структур студента Иванова Ивана 1980 года рождения, имеющего следующие оценки: 3, 3, 4, 5, 3, 3.

 

Создание файл-функции, отображающей среднюю успеваемость группы студентов по каждому курсу и представляющей результат в виде столбцевой диаграммы, число столбцов которой равно числу курсов.

 

function meanmarks = groupprog(GROUP);

% функция вычисляет средний балл студентов по каждому предмету

% и выводит результат в виде столбцевой диаграммы.

% Возвращает массив, каждый элемент которого равен

% среднему баллу по предмету с соответствующим номером

% использование meanmark = groupprog(GROUP)

% GROUP — массив структур с полями

% Family (строка), Name (строка), Year (число),

% Marks (вектор-строка с отметками)

 

% нахождение числа студентов в группе

N = length(GROUP);

% Определение количества курсов по информации для

% первого студента

Courses = length(GROUP(1).Marks);

% Инициализация массива meanmarks и заполнение его нулями

meanmarks = zeros(1, Courses);

% Перебор курсов и вычисление средней успеваемости

for course = 1:Courses

% Суммирование баллов, полученных каждым из студентов по

% курсу с номером course

for student = 1:N

meanmarks(course) = meanmarks(course) +...

GROUP(student).Marks(course);

end

% Нахождение среднего арифметического

meanmarks(course) = meanmarks(course) / N;

end

% Построение столбцевой диаграммы

bar(meanmarks);

 

Задание 3. Исправьте файл-функцию groupprog, таким образом, чтобы получить максимальную и минимальную оценку по каждому курсу.

Для студента с номером NN mod 5+1 определите максимальную, минимальную и среднюю оценку.


Дата добавления: 2015-07-15; просмотров: 85 | Нарушение авторских прав


Читайте в этой же книге: Пример 2. | Запись данных массивов структур в текстовый файл | Считывание информации из текстового файла |
<== предыдущая страница | следующая страница ==>
Структуры| Запись строк

mybiblioteka.su - 2015-2024 год. (0.006 сек.)