М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
тося42
тося42
05.04.2021 10:07 •  Информатика

Составить программу на C++ для выполнения действий с массивами.
Массив X(20). Условие -1


Составить программу на C++ для выполнения действий с массивами. Массив X(20). Условие -1

👇
Открыть все ответы
Ответ:
Lizankanahovicyn
Lizankanahovicyn
05.04.2021
Const
  nm = 50;
  nn = 50;

type
  Mas=array[1..nm,1..nn] of integer;

procedure MatrixInit(var a:Mas;m,n,p,q:integer);
{ Заполнение массива размером m*n
  целыми случайными числами из интервала [p;q] }
var
  i,j,k:integer;
begin
  k:=q-p+1;
  for i:=1 to m do
    for j:=1 to n do a[i,j]:=Random(k)-p
end;

procedure MatrixOutput(var a:Mas;m,n,k:integer);
{ вывод элементов матрицы размера m*n в k позициях }
var
  i,j:integer;
begin
  for i:=1 to m do
  begin for j:=1 to n do Write(a[i,j]:k); Writeln end
end;

function IsFits(var a:Mas;m,col:integer):boolean;
{ функция возвращает true, если колонка col явдяется "подходящей" }
var
  i,max:integer;
  mv:real;
begin
  max:=a[1,col]; mv:=max;
  for i:=2 to m do
  begin
    mv:=mv+a[i,col];
    if max<a[i,col] then max:=a[i,col]
  end;
  mv:=mv/m;
  IsFits:=(max-mv>a[1,col])
end;

procedure ColumnReplace(var a:Mas;m,col:integer);
{ Замена элементов столбца col единицами }
var
  i:integer;
begin
  for i:=1 to m do a[i,col]:=1
end;

var
  P: Mas;
  a,b,m,n,j,k:integer;
  flag:boolean;
begin
  Randomize;
  Write('Введите количество строк и столбцов матрицы: ');
  Read(m,n);
  Write('Укажите минимальное и максимальной значение элементов: ');
  Read(a,b);
  Write('Укажите количество позиций для вывода значения элемента: ');
  Read(k);
  MatrixInit(P,m,n,a,b);
  Writeln('Исходный массив');
  MatrixOutput(P,m,n,k);
  j:=1;
  repeat
    flag:=IsFits(P,m,j);
    if flag then
    begin
      ColumnReplace(P,m,j);
      Writeln('Результирующий массив');
      MatrixOutput(P,m,n,k)
    end
    else Inc(j)
  until flag or (j>n);
  if not flag then
    Writeln('')
end.

Тестовое решение:
Введите количество строк и столбцов матрицы: 5 8
Укажите минимальное и максимальной значение элементов: 0 20
Укажите количество позиций для вывода значения элемента: 3
Исходный массив
 19  7  2 15  2 11  2 15
 12 16  8 14  6  8  1 17
 12 14 10  8  7 19  7  1
  0  9  0  7 18 10  2  5
 18  8  4  9 16 10 14 10
Результирующий массив
 19  7  1 15  2 11  2 15
 12 16  1 14  6  8  1 17
 12 14  1  8  7 19  7  1
  0  9  1  7 18 10  2  5
 18  8  1  9 16 10 14 10
4,5(92 оценок)
Ответ:
SofyaIlina
SofyaIlina
05.04.2021
Цель работы: изучить меню, команды, процедуры при использовании в процессе верстки графических изображений.
Для ознакомления с особенностями обработки графики при верстке в программе InDesign рассмотрим порядок выполнения следующих процедур, необходимых при изготовлении полос текста в соответствии с оригиналом, представленным на следующих страницах
пособия:
• приведение текста к виду, удобному для верстки;
• формирование двухколонного набора;
• образование фреймов произвольной формы с использованием
инструментов группы Реn;
• использование градиентного закрашивания (Gradient);
• размещение символов строки вдоль произвольной траектории;
• задание степени непрозрачности объекта (Opacity);
• задание размытости края изображения (Feather);
• создание контура обтравки (Clipping) непосредственно в программе InDesign;
• использование клавиатурных сокращений для точного масштабирования изображений:
—Ctrl, точка и Ctrl, запятая — соответственно увеличение
и уменьшение на 1%;
—Ctrl, Shift, точка и Ctrl, Shift, запятая — соответственно
увеличение и уменьшение на 5%;
• использование специальных механизмов для реализации технических требований к набору и верстке изданий.
Описание работы
Перечень изучаемых действий:
• создание нового файла с основными параметрами:
а) формат виртуального листа бумаги (блока после обрезки) —
200×287мм, выбранный в соответствии с ГОСТ 5773–90 для
журнальных изданий при размере листа бумаги 60×84/8;
б) число колонок (Columns\Number) = 2;
в) межколонное расстояние (Gutter) = 4,512 мм;
4,6(77 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ