Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 20.06.2019
Сообщений: 4

Задачи с использованием подпрограмм

20.06.2019, 20:49. Показов 2830. Ответов 1

Студворк — интернет-сервис помощи студентам
1. Дан произвольный одномерный массив A(N). Значения элементов массива сформировать случайным образом в диапазоне от -50 до +50. Определить номер элемента, который имеет наибольшее значение.
2. Дан произвольный двумерный массив B(N,M). Формирование элементов происходит вводом их с клавиатуры. Вычислить сумму нечетных элементов массива.
3. Дан произвольный двумерный массив A(N,N). Значения элементов массива сформировать случайным образом в диапазоне -25 до +40. Все диагональные элементы заменить суммой положительных элементов соответствующих строк.

Во всех задачах формирование массивов оформить отдельными процедурами. В заданиях 1-2 для обработки использовать функции. В 3 задаче - процедуру.

Заранее спасибо)
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.06.2019, 20:49
Ответы с готовыми решениями:

Составить схему алгоритма и программу решения задачи вычисления величин z и w с использованием подпрограмм пользователя
ЗАДАНИЕ 2 Составить схему алгоритма и программу решения задачи вычисления величин z и w с использованием подпрограмм пользователя . ...

Составить схему алгоритма и программу решения задачи с использованием подпрограмм. Результаты вывести в виде таблицы
Задание 3 Составить схему алгоритма и программу решения задачи с использованием подпрограмм. Результаты вывести в виде таблицы , в...

Обработка массивов с использованием подпрограмм
Друзья, ниже текст задачи и мой вариант решения, но без вывода массива X(3); можно, конечно, просто присвоить каждому X нужное значение,...

1
2374 / 776 / 561
Регистрация: 15.01.2019
Сообщений: 2,394
21.06.2019, 04:58
Лучший ответ Сообщение было отмечено Murist как решение

Решение

Задание 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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
program Project1;
const
  maxelem = 25;
type
  TArr = array [1..maxelem] of integer;
 
procedure RandomInfInArray (var arr: TArr; narr,leftval,rightval: integer);
// Процедура для заполнения одномерного массива случайными числами.
var
   i: integer;
begin
for i:= 1 to narr do
  arr[i]:= leftval + random(rightval - leftval + 1) ;
 
end;
 
procedure InfOutMatrix (arr: TArr; narr: integer);
// Процедура для вывода элементов массива на экран.
var
   i: integer;
begin
  for i:= 1 to narr do
    begin
      Write(arr[i]:4);
      if i mod 10 = 0 then
        Writeln;
    end;
end;
 
function IndexMaxElementArray (arr: TArr; narr: integer): integer;
// Функция для нахождения индекса элемента с максимальным значением.
var
   i: integer;
   max: integer;
   ind: integer;
begin
  max:= - 2147483648;
  for i:= 1 to narr do
    if arr[i] > max then
      begin
        max:= arr[i];
        ind:= i;
    end;
  IndexMaxElementArray:= ind;
end;
 
 
var
  a:TArr;  // Переменная для хранения массива.
  n: integer;  // Переменные для хранения значения количества строк и столбцов.
begin
  Randomize;
  Write('Введите значение размерности матрицы: ');
  Readln(n);
  RandomInfInArray(a,n,-50,50);
  Writeln('Исходная матрица: ');
  InfOutMatrix(a,n);
  Writeln('Индекс элемента с максимальным значением: ',IndexMaxElementArray(a,n));
  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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
program Project1;
const
  maxelem = 25;
type
  TArr = array [1..maxelem,1..maxelem] of integer;
 
procedure InfInMatrix (var arr: TArr; narr,marr: integer);
// Процедура для ручного ввода значений элементов массива.
var
   i,j: integer;
begin
for i:= 1 to narr do
    for j:= 1 to marr do
      begin
        Write('Введите элемент ',i,' строки ',j,' столбца: ');
        Readln(arr[i,j]);
      end;
end;
 
procedure InfOutMatrix (arr: TArr; narr,marr: integer);
// Процедура для вывода элементов массива на экран.
var
   i,j: integer;
begin
  for i:= 1 to narr do
    begin
    for j:= 1 to marr do
      Write(arr[i,j]:4);
      Writeln;
    end;
end;
 
function SumOddElementMatrix (arr: TArr; narr,marr: integer): integer;
// Функция для вычисления суммы нечетных элементов массиа.
var
   i,j: integer;
   sum: integer;
begin
  sum:= 0;
  for i:= 1 to narr do
    for j:= 1 to marr do
      if odd(arr[i,j]) then
        sum:= sum + arr[i,j];
  SumOddElementMatrix:= sum;
end;
 
 
var
  a:TArr;  // Переменная для хранения массива.
  n,m: integer;  // Переменные для хранения значения количества строк и столбцов.
begin
  Write('Введите значение количества строк: ');
  Readln(n);
  Write('Введите значение количества столбцов: ');
  Readln(m);
  InfInMatrix(a,n,m);
  InfOutMatrix(a,n,m);
  Writeln('Сумма нечетных элементов массива: ', SumOddElementMatrix(a,n,m));
  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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
program Project1;
const
  maxelem = 25;
type
  TArr = array [1..maxelem,1..maxelem] of integer;
 
procedure RandomInfInMatrix (var arr: TArr; narr,marr,leftval,rightval: integer);
// Процедура для заполнения двумерного массива случайными числами.
var
   i,j: integer;
begin
for i:= 1 to narr do
    for j:= 1 to marr do
      arr[i,j]:= leftval + random(rightval - leftval + 1) ;
 
end;
 
procedure InfOutMatrix (arr: TArr; narr,marr: integer);
// Процедура для вывода элементов массива на экран.
var
   i,j: integer;
begin
  for i:= 1 to narr do
    begin
    for j:= 1 to marr do
      Write(arr[i,j]:4);
      Writeln;
    end;
end;
 
procedure SumToDiagonalElementMatrix (var arr: TArr; narr,marr: integer);
// Процедура для замены диагональных элементов суммами положительных элементов соответствующих строчек.
var
   i,j: integer;
   sum: integer;
begin
  for i:= 1 to narr do
    begin
      sum:= 0;
      for j:= 1 to marr do
        if arr[i,j] > 0 then
          sum:= sum + arr[i,j];
      arr[i,i]:= sum;
    end;
end;
 
 
var
  a:TArr;  // Переменная для хранения массива.
  n: integer;  // Переменные для хранения значения количества строк и столбцов.
begin
  Randomize;
  Write('Введите значение размерности матрицы: ');
  Readln(n);
  RandomInfInMatrix(a,n,n,-25,40);
  Writeln('Исходная матрица: ');
  InfOutMatrix(a,n,n);
  SumToDiagonalElementMatrix(a,n,n);
  Writeln('Измененная матрица: ');
  InfOutMatrix(a,n,n);
  Readln;
end.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.06.2019, 04:58
Помогаю со студенческими работами здесь

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

Организовать поиск по вакансиям с использованием подпрограмм
Программа, организующая ввод и сохранение в бинарном типизированном файле данных о свободных вакансиях на предприятии. Организовать поиск...

Поиск корней сложной функции с использованием подпрограмм
Объясните пожалуйста, как это можно совместить все вместе. Поиск корней сложной функции с использованием подпрограмм ...

Написать программу с использованием подпрограмм по готовому коду
Напишите пожалуйста ту же самую программу, только с использованием подпрограмм: Задача: Найти сумму целых чисел из промежутка от 1 до...

Составить программу вычисления выражения с использованием подпрограмм
Подпрограммы Даны действительные числа s,t. Составить программу вычисления выражения f(t, -2s, 1.17) + f(2.2, t, s-t), где f(a,b,c) = (2a...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru