Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
распечатать.docx
Скачиваний:
15
Добавлен:
28.03.2015
Размер:
5.24 Mб
Скачать

Содержание

Задание 5 21

Список используемой литературы 44

Задание 1

Разработать алгоритм и написать программу на языке Turbo Pascal.

Задана матрица (двумерный массив) A размером N x М , состоящая из действительных элементов. Числа M и N вводятся с клавиатуры. Для задания исходной матрицы предусмотреть ввод с клавиатуры или ввод с помощью датчика случайных чисел. Где это необходимо ввести квадратную матрицу. Во всех вариантах вывести исходную матрицу в общепринятом виде и необходимые результаты работы программы.

Вариант: Разработать алгоритм и написать программу на языке Turbo Pascal. Получить новую матрицу путем вычитания всех элементов данной матрицы из ее наибольшего по модулю элемента. Преобразовать исходную матрицу в одномерный массив. Вывести на экран полученную матрицу и вектор.

program zadanie_1;

uses crt;

var

j,i,n,m,k:integer;

max:real;

variant:char;

D:array[1..100,1..100] of real;

O:array[1..100] of real;

begin

clrscr;

randomize;

k:=1; //индекс для одномерного массива

writeln('Введите число строк m --> ');

readln(m);

writeln('Введите число столбцов n --> ');

readln(n);

writeln('Исходный массив:');

writeln('Нажмите 1,если хотите заполнить матрицу случайно, нажмите любую клавишу, если хотите заполнить матрицу в ручную');

readln(variant);

If (variant='1') then

begin

for i:=1 to m do

begin

for j:=1 to n do

begin

D[i,j]:=random*100-20;

write(D[i,j]:2:0, ' ');

end;

writeln;

end;

end

else

begin

for i:=1 to m do

begin

for j:=1 to n do

begin

writeln('Элемент массива: ');

readln(D[i,j]);

end;

end;

for i:=1 to m do

begin

for j:=1 to n do

write(D[i,j],' ');

writeln;

end;

end;

max:=D[1,1];

for i:=1 to m do

for j:=1 to n do

if (abs(D[i,j]) > abs(max)) then

max:= D[i,j];

writeln;

writeln('Максимальное число = ', max:2:0);

writeln;

writeln('Новый массив:');

for i:=1 to m do

begin

for j:=1 to n do

begin

D[i,j]:=max-D[i,j];

O[k]:=D[i,j];

k:=k+1;

write(D[i,j]:2:0, ' ');

end;

writeln;

end;

writeln;

writeln('Вектор:');

for i:=1 to k-1 do

write(O[i]:2:0, ' ');

readln;

end.

Блок-схема

Результат работы программы

Задание 2

Построение электронных таблиц.

Внесите в таблицу 10-15 записей и выполните необходимые расчеты.

Правила формирования столбцов:

  • Столбцы с заголовками № секции, Товар, Единица измерения, количество, Дата выпуска, Срок годности, Цена, Продано заполняются студентом произвольно

  • Также произвольно заполняется ячейка с текущей датой.

  • В следующей ячейке записывается процент уценки равный № варианта+10.

  • Премиальные составляют 1, 2 или 3% (выбрать самостоятельно)

Расчёт ячеек:

  • При выполнении расчетов использовать относительные и абсолютные ссылки.

  • В графе Дата годности значения равны сумме ячеек из столбцов Дата производства и Срок годности

  • Столбцы Потенциальная выручка и Выручка рассчитываются как произведение Количества товара на его цену и данных столбца Продано на данные столбца Новая цена.

  • Столбец Уценка заполняется с использованием функции Если. Если Текущая дата больше Даты годности менее чем на 3 дня пишется уценка, если Текущая дата больше Даты годности пишется ликвидация.

  • В столбце Новая цена значение зависит от Цены и Уценки. Если в соответствующем столбце стоит слово уценка новая цена меньше исходной на процент указанный в ячейке с процентом уценки, в случае ликвидации цена равна 0, иначе цена не изменяется.

  • В столбце Заказ пишется слово заказ если количество проданного товара совпадает со значением в столбце Количество.

  • Премия начисляется, если выручка совпадает с потенциальной выручкой и ее величина больше 20000. При этом величина премии составляет процент от выручки, указанный в ячейке премиальные.

  • В строке Итого в столбцах Потенциальная выручка, Выручка, Премия значения равны сумме вышестоящих ячеек. В Столбце Уценка вычисляется количество наименований товара подлежащих уценке, в ячейке ниже количество наименований подлежащих ликвидации. В столбце Заказ количество наименований подлежащих заказу. В остальных столбцах эта строка не заполняется.

Вариант: Построить таблицу и внести 10-15 записей. Вывести на печать с использованием фильтра товары, которые необходимо заказать. Используя имеющиеся или специально созданные таблицы, построить линейную диаграмму, отражающую количество проданного товара

Таблица с данными

Таблица в формульном виде

Продолжение в формульном виде

Применение фильтра для вывода товаров, подлежащих заказу

Результат фильтра

Гистограмма