0 / 0 / 0
Регистрация: 26.04.2011
Сообщений: 18
1

Оформление модуля в виде процедур или функций

10.05.2011, 20:34. Показов 1350. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет! У меня такое задание: нужно было решить задачи, а затем оформить их в виде процедур или функций, и затем оформить модуль для всех задач. Не могли бы вы помочь с процедурами и с модулем самим. Буду очень благодарен. Вот задачи:

Задача №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
{Из элементов столбца с номером к массива А (mxn) вычесть минимальный элемент этого столбца}
Program M2;
uses crt;
const nmax=20;{максимальный размер матрицы}
var a:array[1..nmax,1..nmax] of integer;
    m,n,i,j,k:integer;
begin
clrscr;
randomize;
repeat
write('кол-во строк до ',nmax,' m=');
readln(m);
until (m>0) and (m<=nmax);
repeat
write('кол-во столбцов до ',nmax,' n=');
readln(n);
until (n>0) and (n<=nmax);
writeln('Исходная матрица:');
for i:=1 to m do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=random(20);
    write(a[i,j]:3);
   end;
  writeln;
 end;
writeln;
repeat
write('введите номер строки от 1 до ',m,' k=');
readln(k);
until (k>0) and (k<=m);
if k=m then m:=m-1{если последняя строка. то просто обрезаем}
else{иначе сдвигаем строки от к+ до m на 1 вверх и обрезаем}
 begin
  for i:=k to m-1 do
  for j:=1 to n do
  a[i,j]:=a[i+1,j];
  m:=m-1;
 end;
writeln('удаление строки');
for i:=1 to m do
 begin
  for j:=1 to n do
  write(a[i,j]:3);
  writeln;
 end;
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
{Для матрицы А (mxn) найти произведение положительных элементов побочной диагонали}
Program abc;
uses crt;
type mass =array[1..100, 1..100] of integer;
var
a:mass;
i, j, n, m, k:byte;
min:integer;
begin
Clrscr;
writeln('vvedite razmernost matricu: ');
write('m = ');
readln(m);
write('n = ');
readln(n);
writeln('vvedite matricu');
for i:=1 to m do
for j:=1 to n do
begin
write('a[', i, ']', '[', j,'] = ');
readln(a[i,j]);
end;
write('vvedite nomer stolbca k = ');
readln(k);
min:=a[1,k];
for i:=2 to m do
if (a[i,k]<min) then min:=a[i,k];
for i:=1 to m do
a[i,k]:=a[i,k]-min;
for i:=1 to m do
begin
for j:=1 to n-1 do
begin
write(a[i,j]);
write('       ');
end;
writeln( a[i,n]);
end;
readkey;
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
{Написать программу табулирования сложной функции}
Program M4;
uses crt;
function F(x:real):real;
var p,s,y:real;
    n:byte;
begin
if x>0 then
 begin
  p:=1;y:=1;
   for n:=1 to 8 do
begin
    y:=y*x;
    p:=p*(1+y/n);
end;
 F:=x*p/(x+1);
  end;
   begin
    s:=0;y:=1;
     for n:=0 to 7 do
      begin
     if n>0 then y:=y*x;
    s:=s+x/(n+1);
   end;
  F:=s;
 end;
end;
var x:real;
begin
clrscr;
x:=-0.5;
while x<=0.5 do
 begin
  writeln('x=',x:4:1,'  y=',F(x):6:2);
  x:=x+0.1;
 end;
readkey;
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.05.2011, 20:34
Ответы с готовыми решениями:

Нужны коды процедур и функций модуля crt
Люди кто-нибудь знает коды процедур и функций модуля crt, такие как readkey и ClrScr. или напишите...

При помощи процедур и функций модуля Graph нарисовать градусник
Разработать алгоритм и программу решения задач:необходимо при помощи процедур и функций модуля...

При помощи процедур и функций модуля Graph нарисовать градусник
Разработать алгоритм и программу решения задач:необходимо при помощи процедур и функций модуля...

Составить любую программу с использованием не менее 5 процедур и функций модуля DOS
Составить программу с использованием не менее 5 процедур и функций модуля DOS.

1
Почетный модератор
64299 / 47594 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.05.2011, 11:24 2
Задача 1.
Цитата Сообщение от REDANGER Посмотреть сообщение
{Из элементов столбца с номером к массива А (mxn) вычесть минимальный элемент этого столбца}
А делаем
Цитата Сообщение от REDANGER Посмотреть сообщение
writeln('удаление строки');
Ну и где правильно?

Добавлено через 1 час 1 минуту
Задача 2.
Цитата Сообщение от REDANGER Посмотреть сообщение
{Для матрицы А (mxn) найти произведение положительных элементов побочной диагонали}
А делаем то что написано в первой. Короче все ты напутал. Вот, держи как в в коде.
Текст модуля.
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
unit modul;
interface
uses crt;
const nmax=20;{максимальный размер матрицы}
type matr=array[1..nmax,1..nmax] of integer;
procedure Vvod(var a:matr;var m,n:byte);
procedure Del(var a:matr;var m:byte;n:byte);
procedure Min(var a:matr;m,n:byte);
procedure Tab;
implementation
procedure Vvod(var a:matr;var m,n:byte);
var i,j:byte;
begin
repeat
write('кол-во строк до ',nmax,' m=');
readln(m);
until (m>0) and (m<=nmax);
repeat
write('кол-во столбцов до ',nmax,' n=');
readln(n);
until (n>0) and (n<=nmax);
writeln('Исходная матрица:');
for i:=1 to m do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=random(20)-8;
    write(a[i,j]:4);
   end;
  writeln;
 end;
writeln;
end;
procedure Del(var a:matr;var m:byte;n:byte);
var i,j,k:integer;
begin
repeat
write('введите номер строки от 1 до ',m,' k=');
readln(k);
until (k>0) and (k<=m);
if k=m then m:=m-1{если последняя строка. то просто обрезаем}
else{иначе сдвигаем строки от к+ до m на 1 вверх и обрезаем}
 begin
  for i:=k to m-1 do
  for j:=1 to n do
  a[i,j]:=a[i+1,j];
  m:=m-1;
 end;
writeln('удаление строки');
for i:=1 to m do
 begin
  for j:=1 to n do
  write(a[i,j]:3);
  writeln;
 end;
readkey
end;
procedure Min(var a:matr;m,n:byte);
var i,j,k:byte;
    mn:integer;
begin
repeat
write('Введите номер столбца от 1 до ',n,' k=');
readln(k);
until k in [1..n];
mn:=a[1,k];
for i:=2 to m do
if (a[i,k]<mn) then mn:=a[i,k];
writeln('Минимальный в столбце ',k,'=',mn);
for i:=1 to m do
a[i,k]:=a[i,k]-mn;
writeln('Вычитание минимального в столбце ',k);
for i:=1 to m do
 begin
  for j:=1 to n do
  write(a[i,j]:4);
  writeln;
 end;
readkey
end;
procedure Tab;
function F(x:real):real;
var p,s,y:real;
    n:byte;
begin
if x>0 then
 begin
  p:=1;y:=1;
   for n:=1 to 8 do
begin
    y:=y*x;
    p:=p*(1+y/n);
end;
 F:=x*p/(x+1);
  end;
   begin
    s:=0;y:=1;
     for n:=0 to 7 do
      begin
     if n>0 then y:=y*x;
    s:=s+x/(n+1);
   end;
  F:=s;
 end;
end;
var x:real;
begin
x:=-0.5;
while x<=0.5 do
 begin
  writeln('x=',x:4:1,'  y=',F(x):6:2);
  x:=x+0.1;
 end;
readkey;
end;
end.
Текст программы.
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
uses crt,modul;
var a:matr;
    m,n,k:byte;
begin
clrscr;
randomize;
repeat
clrscr;
writeln('‚лЎҐаЁвҐ ¤Ґ©бвўЁҐ:');
writeln('1-г¤*«Ґ*ЁҐ бва®ЄЁ ¬*ваЁжл');
writeln('2-ўлзЁв**ЁҐ ¬Ё*Ё¬*«м*®Ј® ў бв®«ЎжҐ');
writeln('3-в*Ўг«Ёа®ў**ЁҐ дг*ЄжЁЁ');
writeln('4-ўл室');
repeat
readln(k);
until k in [1..4];
case k of
1:begin
  Vvod(a,m,n);
  Del(a,m,n);
  end;
2:begin
  Vvod(a,m,n);
  Min(a,m,n);
  end;
3:Tab;
4:exit;
end;
until k=4;
end.
1
11.05.2011, 11:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.05.2011, 11:24
Помогаю со студенческими работами здесь

Оформить в виде процедур и функций
Есть задача: 1) Упорядочить строки целочисленной прямоугольной матрицы по возрастанию количества...

Оформите задачу в виде процедур и функций
uses crt; var a,b,p:real; c:integer; begin repeat write('введи длину диагонали а :');...

Составить любую программу с использованием не менее 5 процедур и функций модуля DOS
Составить программу на языке Pascal с использованием не менее 5 процедур и функций модуля DOS

Составить любую программу с использованием не менее 5 процедур и функций модуля DOS
Составить программу на языке Pascal с использованием не менее 5 процедур и функций модуля DOS....


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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