Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
1 / 1 / 0
Регистрация: 27.04.2020
Сообщений: 49

Создать программу нахождения макс. числа в подмассиве массива целых чисел

07.06.2020, 13:41. Показов 2015. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите с 3 заданиями, сам уже туплю) можно сделать всё одной прогой), просто всё задания это изменение старого задания.

1) Создать программу, которая с помощью внутренней подпрограммы позволяет находить максимальное число в любом заданном подмассиве массива случайных целых чисел. Программа включает главную программу и вспомогательную подпрограмму поиска максимального числа. Подпрограмма принимает два входных параметра – левую и правую границу подмассива, и возвращает один параметр – найденный максимальный элемент.
2) Изменить предыдущую программу так, чтобы вместе с максимальным числом в подмассиве возвращался еще и номер (индекс) этого элемента. Поскольку число выходных параметров больше 2, использовать функциональную форму подпрограммы не рекомендуется. Надо применить процедурную форму. Для возвращаемых значений в списке формальных параметров в заголовке процедуры надо использовать описание этих параметров с директивой Var.
3) Добавить в предыдущую программу обработку особых ситуаций. В данном случае это должна быть проверка правильности входных параметров: левая граница подмассива должна быть НЕ БОЛЬШЕ правой. Для этого в процедуру поиска надо ввести проверку значений входных параметров с возвратом в случае ошибки нулевых значений выходных параметров. Главная программа должна анализировать значения выходных параметров процедуры поиска и выводить соответствующее сообщение в случае появлении ошибки.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.06.2020, 13:41
Ответы с готовыми решениями:

Создать программу для нахождения суммы целых отрицательных чисел, кратных 5 и от -20 до 20
Помогите пожалуйста, создать программу для нахождения суммы целых отрицательных чисел, кратных 5 и от -20 до 20

Создать программу,которая находит минимальное из 3х чисел. Для нахождения минимального числа создать функцию
Создать функцию - double mini (double a, double b, double c), где a,b,c - задание числа. Спасибо за помощь!

Составить программу для нахождения наименьшего из положительных элементов массива из 20 целых чисел диапазона (-50;50)
составить программу для нахождения наименьшего из положительных элементов массива из 20 целых чисел диапазона (-50;50). помогите пожалуйста.

1
Модератор
10451 / 5746 / 3409
Регистрация: 17.08.2012
Сообщений: 17,478
14.06.2020, 02:37
Одной "прогой" Вам точно не нужно.

1)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function max_elem(const x: array of integer; n, k: integer): integer;
var
  i, mx: integer;
begin
  mx := x[n - 1];
  for i := n to k - 1 do if x[i] > mx then mx := x[i];
  max_elem := mx
end;
 
const
  m = 15;
var
  a: array[1..m] of integer;
  i, v, w: integer;
begin
  randomize;
  writeln('Исходный массив:');
  for i := 1 to m do
    begin
      a[i] := -99 + random(199);
      write(a[i]:4)
    end;
  writeln;
  writeln('Введите номера начального и конечного элементов подмассива.');
  write('Начальный элемент: ');
  readln(v);
  write('Конечный  элемент: ');
  readln(w);
  write('Максимум в подмасиве: ', max_elem(a, v, w));
  readln
end.
2)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
procedure max_elem(const x: array of integer; n, k: integer; var mx, imx: integer);
var
  i: integer;
begin
  imx := n - 1;
  for i := n to k - 1 do if x[i] > x[imx] then imx := i;
  mx := x[imx];
  inc(imx)
end;
 
const
  m = 15;
var
  a: array[1..m] of integer;
  i, v, w, max, imax: integer;
begin
  randomize;
  writeln('Исходный массив:');
  for i := 1 to m do
    begin
      a[i] := -99 + random(199);
      write(a[i]:4)
    end;
  writeln;
  writeln('Введите номера начального и конечного элементов подмассива.');
  write('Начальный элемент: ');
  readln(v);
  write('Конечный  элемент: ');
  readln(w);
  max_elem(a, v, w, max, imax);
  write('Максимум в подмасиве: ', max, ', его индекс: ', imax);
  readln
end.
3)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
procedure max_elem(const x: array of integer; n, k: integer; var mx, imx: integer);
var
  i: integer;
begin
  if n <= k then
    begin
      imx := n - 1;
      for i := n to k - 1 do if x[i] > x[imx] then imx := i;
      mx := x[imx];
      inc(imx)
    end
  else
    begin
      mx := 0;
      imx := 0
    end
end;
 
const
  m = 15;
var
  a: array[1..m] of integer;
  i, v, w, max, imax: integer;
begin
  randomize;
  writeln('Исходный массив:');
  for i := 1 to m do
    begin
      a[i] := -99 + random(199);
      write(a[i]:4)
    end;
  writeln;
  writeln('Введите номера начального и конечного элементов подмассива.');
  write('Начальный элемент: ');
  readln(v);
  write('Конечный  элемент: ');
  readln(w);
  max_elem(a, v, w, max, imax);
  if imax <> 0 then write('Максимум в подмасиве: ', max, ', его индекс: ', imax)
  else write('Ошибка: левая граница больше правой.');
  readln
end.
Если строго по заданию, то нужно анализировать оба выходных параметра:
Pascal
39
  if (imax <> 0) and (max <> 0) then write('Максимум в подмасиве: ', max, ', его индекс: ', imax)
но, так как в данном случае индексация массива начинается с 1, достаточно проверить только индекс.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.06.2020, 02:37
Помогаю со студенческими работами здесь

Разработать программу нахождения среднего значения ненулевых элементов введенного с клавиатуры массива целых чисел
Разработать программу нахождения среднего значения ненулевых элементов введенного с клавиатуры массива целых чисел

Дан массив из 100 целых чисел. Написать программу нахождения произведения отрицательных элементов массива
Помогите пожалуйста)

Создать программу, которая выводит минимальный элемент введённого с клавиатуры массива целых чисел.
Которая выводит минимальный элемент введённого с клавиатуры массива целых чисел. :)

Ввести последовательность целых чисел, пока не введете 0. Составить программу нахождения среднего арифметического чисел,
Задача : Ввести последовательность целых чисел, пока не введете 0. Составить программу нахождения среднего арифметического чисел, кратных...

Написать программу нахождения всех целых положительных чисел
Написать программу нахождения всех целых положительных чисел, не превосходящих N, которые имеют ровно М целых положительных делителей.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru