Студопедия

КАТЕГОРИИ:

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



I. Исходные данные, результаты и промежуточные величины

Читайте также:
  1. I - IV - угловые фризовые плитки; 1 - 6 - промежуточные маячные фризовые плитки; 7, 8 - промежуточные маячные рядовые плитки; 9 - реперный маяк у стены.
  2. А) Ряд, многоугольник и функция распределения случайной дискретной величины
  3. А) Ряд, многоугольник и функция распределения случайной дискретной величины
  4. А) Ряд, многоугольник и функция распределения случайной дискретной величины
  5. Абсолютные величины
  6. АБСОЛЮТНЫЕ ВЕЛИЧИНЫ В МЕДИЦИНЕ И ЗДРАВООХРАНЕНИИ
  7. Абсолютные величины, их виды и единицы измерения
  8. Абсолютные и относительные величины
  9. Абсолютные и относительные статистические величины

Исходные данные. База сотрудников находится в текстовом файле. Прежде всего надо решить, хранить ли в оперативной памяти одновременно всю информацию из файла или можно обойтись буфером на одну строку. Если бы сведения о со­труднике запрашивались однократно, можно было бы остановиться на втором ва­рианте, но поскольку поиск по базе будет выполняться более одного раза, всю ин­формацию желательно хранить в оперативной памяти, поскольку многократное чтение из файла крайне нерационально.

Максимальное количество строк файла по условию задачи ограничено, поэтому можно выделить для их хранения массив из 100 элементов. Каждый элемент мас­сива будет содержать сведения об одном сотруднике. Поскольку эти сведения раз­нородные, удобно организовать их в виде структуры.

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

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

Результаты. В результате работы программы требуется вывести на экран требу­емые элементы исходного массива. Поскольку эти результаты представляют со­бой выборку из исходных данных, дополнительная память для них не отводится. Кроме того, необходимо подсчитать средний оклад для найденных сотрудников. Для этого необходима переменная вещественного типа.

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

II. Алгоритм решения задачи очевиден:

1. Ввести из файла в массив сведения о сотрудниках.

2. Организовать Цикл вывода сведений о сотруднике:

- ввести с клавиатуры фамилию;

- выполнить поиск сотрудника в массиве;

- увеличить суммарный оклад и счетчик количества сотрудников;

- вывести сведения о сотруднике или сообщение об их отсутствии;

3. Вывести средний оклад.

Необходимо решить, каким образом будет производиться выход из цикла вывода сведений о сотрудниках. Для простоты условимся, что для выхода из цикла вмес­то фамилии следует ввести слово end.



III. Программа и тестовые примеры

 


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


<== предыдущая лекция | следующая лекция ==>
Ход работы. Основные сведения о структурах в языке С++.Структуры в C++ обладают практически теми же возможностями | Листинг 1.1
lektsii.com - Лекции.Ком - 2014-2019 год. (0.008 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты