Статистика
Всего в нашей базе более 4 327 663 вопросов и 6 445 978 ответов!

Сделайте пожалуйста формализацию к задаче:

10-11 класс

Группа учащихся из N человек сдавала по 4 предмета. Определить и напечатать фамилии учащихся у которых средний балл за экзамены больше среднего балла всей группы?

Лерусечка22 21 янв. 2017 г., 14:16:05 (7 лет назад)
Рейтинг
+ 0 -
0 Жалоба
+ 0 -
ERIKSPORT999
21 янв. 2017 г., 14:59:35 (7 лет назад)

1. Структура для хранения и обработки данных
Объект - Учащийся. Каждый учащийся характеризуется фамилией с инициалами и имеет набор из четырех отметок по результатам сдачи экзаменов - всего 5 параметров. Для простоты считаем, что фамилии с инициалами уникальны.
Объекты однородны, т.е. отличаются друг от друга только значениями параметров. Это позволяет объединить их в группу, осуществляя доступ к каждому объекту либо по его порядковому номеру в группе, либо по фамилии.
Поставленная задача не требует поиска конкретного учащегося по фамилии, поэтому достаточно предоставлять доступ к каждому учащемуся по порядковому номеру.
Объект "Учащийся" может быть представлен в виде записи (структуры) для случая реализации программы на алгоритмическом языке, либо в виде таблицы базы данных для случая реализации в среде СУБД. Не исключена также примитивная реализация в виде двух массивов, в одном из которых указываются фамилии с инициалами, а в другом отметки; связь учащегося с его оценками в этом случае поддерживается за счет использования одинакового номера строк в массиве.
Нам также понадобится где-то хранить средний балл учащегося, для того чтобы сделать необходимую по условию задачи выборку.

Запишем пример реализации для языка Паскаль.
а) Три массива.
var
   FIO: array[1..40] of string; { для фамилий и инициалов }
   ResBall: array[1..40,1..4] of byte; { для оценок }
   SrBall: array[1..40] of real; { для среднего балла }
В этом случае объект "Учащийся" отображается связкой FIO[i], ResBall[i,j], SrBall[i] где i- номер учащегося, j - номер отметки в наборе отметок.
б) Запись
type
    tUch=record
        FIO: string;
        ResBall:array[1..4] of byte;
        SrBall:real
    end;
var
    Uch:array[1..40] of tUch;
В этом случае доступ к объекту "Учащийся" реализуется в виде Uch[i].FIO, Uch[i].ResBall[j], Uch[i].SrBall
в) Таблица базы данных с именем Uch
FIO символьный(20)
Ball1 целый
Ball2 целый
Ball3 целый
Ball4 целый
SrBall числовой
В этом случае доступ к объекту "Учащийся" реализуется в виде Uch.FIO, Uch.Ball1..Uch.Ball4, Uch.SrBall

2. Алгоритм обработки
Запрашиваем N - количество учащихся в группе, и организуем ввод данных по N учащимся. Попутно со вводом для каждого учащегося вычисляем сумму всех четырех его оценок, а также средний балл, равный найденной сумме, деленной на 4. Сумму отметок по всей группе накапливаем в некоторой переменной S, а средний балл записываем в структуру хранения.
После накопления в S суммы всех оценок находим Sg=S/N - средний балл по группе.
Организуем проход по всех группе и выводим фамилию и средний балл тех учащихся, у которых средний балл превышает Sg.

Ответить

Другие вопросы из категории

47 задача

помагите решить

Задача E Обратная перестановка

Перестановкой
из N чисел называется —
последовательность чисел, где каждое число от 1 до N встречается ровно один раз. Перестановка b1, b2, ..., bN является обратной
перестановкой перестановки a1, a2, ..., aN , если b[ai] = i для каждого i от 1 до N. Для заданных двух перестановок
определите является ли вторая перестановка обратной первой.

Вот еще, если можно

Читайте также

Сделайте пожалуйста программу и блок-схему к задаче:

Даны два действительных положительных числа x и y.
Тригонометрические действия над числами пронумерованы (1 - sin, 2 - cos, 3 - tg,

Пожалуйста, помогите с задачей в паскале! Написать решение задачи для программы Паскаль. Спасибо)

Имеется
массив А из N произвольных чисел (А(N)), среди которых есть положительные, отрицательные и
равные нулю. Используя оператор цикла, составить программу, выполняющую задачу:

Сделайте пожалуйста данную задачу для программы Паскаль ABC:

Дано гипотенузу и катет прямоугольного треугольника. Найтдите второй катет и площадь вписанного круга.

Добрый день. Помогите пожалуйста решить две задачи... №1 Дан массив из 25 элементов,найти сумму 4-х наибольших и 4-х наименьших э

лементов. Результат распечатать в виде:

Сумма наибольших=

Сумма наименьших=

№2

Даны два массива по 30 элементов. Найти среднее арифмитическое для элементов 1-го массива,номера которых больше номера минимального элемента 2-го массива

Заранее спасибо



Вы находитесь на странице вопроса "Сделайте пожалуйста формализацию к задаче:", категории "информатика". Данный вопрос относится к разделу "10-11" классов. Здесь вы сможете получить ответ, а также обсудить вопрос с посетителями сайта. Автоматический умный поиск поможет найти похожие вопросы в категории "информатика". Если ваш вопрос отличается или ответы не подходят, вы можете задать новый вопрос, воспользовавшись кнопкой в верхней части сайта.