Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 1
Регистрация: 30.11.2015
Сообщений: 31
1

Переделать программу с функций на процедуры

06.12.2015, 22:33. Показов 974. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
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
Type 
myArray = array[1..10] of integer;
var
a: myarray;
b: myarray;
i:integer;
result:real;
Function sMax(a,b:myArray):integer;
Var
i:integer;
Begin
Result:=a[1]+b[1];
for i:=2 to 10 do
if a[i]+b[i]>Result then Result:=a[i]+b[i];
end;
Function smin(a,b:myArray):integer;
Var
i:integer;
Begin
Result:=a[1]+b[1];
for i:=2 to 10 do
if a[i]+b[i]<Result then Result:=a[i]+b[i];
end;
Function Max(b:myArray):integer;
Var
i:integer;
Begin
Result:=b[1];
for i:=2 to 10 do
if b[i]>Result then Result:=b[i];
end;
Function Min(a:myArray):integer;
Var
i:integer;
Begin
Result:=a[1];
for i:=2 to 10 do
if a[i]<Result then Result:=a[i];
end;
begin
for i:=2 to 10 do
     a[i] := random(10);
   b[i] := random(10);
    for i:=2 to 10 do
        begin
            result:=(smax(a,b)+smin(a,b))/(min(a)+max(b));
            end;
            writeln('result=',result:5:3);
end.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.12.2015, 22:33
Ответы с готовыми решениями:

Переделать из функций в процедуры
Оооооочень очень срочно!Помогите!Горю! program funct; function zero(x: integer): boolean;...

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

Переделать программу,используя процедуры.
вот есть задача: https://www.cyberforum.ru/attachment.php?attachmentid=108804&amp;d=1322123275 ...

Переделать программу из процедуры в функцию
program v7; uses crt; var a1,b1,c1,a2,b2,c2,S1,S2:real; procedure pl( a,b,c:real; var S:real);...

5
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
07.12.2015, 10:02 2
Лучший ответ Сообщение было отмечено vasya0501 как решение

Решение

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
const n=10;
type myArray = array[1..n] of integer;
procedure massiv(var a:myArray;c:char);
var i:integer;
begin
writeln('Массив ',c);
for i:=1 to n do
 begin
  a[i] := random(n);
  write(a[i]:3);
 end;
writeln;
end;
 
procedure smax(a,b:myArray;var mx:integer);
var i:integer;
begin
mx:=a[1]+b[1];
for i:=2 to n do
if a[i]+b[i]>mx then mx:=a[i]+b[i];
end;
procedure smin(a,b:myArray;var mn:integer);
var i:integer;
Begin
mn:=a[1]+b[1];
for i:=2 to n do
if a[i]+b[i]<mn then mn:=a[i]+b[i];
end;
procedure max(a:myArray;var mx:integer);
var i:integer;
begin
mx:=a[1];
for i:=2 to n do
if a[i]>mx then mx:=a[i];
end;
procedure min(a:myArray;var mn:integer);
var i:integer;
begin
mn:=a[1];
for i:=2 to n do
if a[i]<mn then mn:=a[i];
end;
var a: myarray;
    b: myarray;
    mx1,mn1,mx2,mn2:integer;
    result:real;
begin
randomize;
massiv(a,'A');
min(a,mn1);
writeln('Минимальный=',mn1);
massiv(b,'B');
max(b,mx1);
writeln('Максимальный=',mx1);
smax(a,b,mx2);
writeln('Максимальный из сумм=',mx2);
smin(a,b,mn2);
writeln('Минимальный из сумм=',mn2);
result:=(mx2+mn2)/(mn1+mx1);
writeln('result=',result:0:3);
end.
1
0 / 0 / 1
Регистрация: 30.11.2015
Сообщений: 31
07.12.2015, 16:17  [ТС] 3
Спасибо!
А вот что если бы вместо етих mn,mx было result как и в моей программе?
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
07.12.2015, 16:23 4
Да какие хочешь переменные, такие не делай, просто result это стандартная переменная функций.
0
0 / 0 / 1
Регистрация: 30.11.2015
Сообщений: 31
07.12.2015, 16:44  [ТС] 5
и вот так процедуру нельзя использовать?
Pascal
1
result:=(smax(a,b)+smin(a,b))/(min(a)+max(b));
надо так, или вы просто так сделали для удобства?
Pascal
1
2
3
4
5
6
7
8
9
10
11
massiv(a,'A');
min(a,mn1);
writeln('Минимальный=',mn1);
massiv(b,'B');
max(b,mx1);
writeln('Максимальный=',mx1);
smax(a,b,mx2);
writeln('Максимальный из сумм=',mx2);
smin(a,b,mn2);
writeln('Минимальный из сумм=',mn2);
result:=(mx2+mn2)/(mn1+mx1);
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
07.12.2015, 16:48 6
Конечно нельзя, так используют только функции. Неужели так трудно что-то почитать про подпрограммы чтобы не писать глупости...
0
07.12.2015, 16:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.12.2015, 16:48
Помогаю со студенческими работами здесь

Переделать программу с использованием процедуры
Помогите...нужно в этом коде использовать где-нибудь &quot;процедуру&quot;! var A : array of byte; M,...

Переделать программу через процедуры. Записи
uses crt; type doc=record nom:integer; name:string; ...

Переделать программу под процедуры по массивам!
Вставить в массив два заданных числа: первое после любого из максимальных элементов, второе – перед...

Переделать программу с использованием функций
Помогите пожалуйста переделать в функции, #include &lt;iostream&gt; using namespace std; int...

Переделать программу с помощью функций
#include &lt;iostream&gt; #include&lt;fstream&gt; using namespace std; int main() { ifstream f1;...

Переделать программу с использованием функций
Помогите переделать задачку. Нужно реализовать в виде функций. #include &quot;stdafx.h&quot; using...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru