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

Разбить программу на процедуры

05.06.2013, 09:30. Показов 691. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
uses crt;
var y,ym:array[1..30] of real;
    n,m,i,j:integer;
    x,s:real;
begin
writeln('Массив Y:');
n:=0;
x:=0;
while x<=6 do
 begin
  n:=n+1;
  y[n]:=sin(x)-cos(x*x);
  write(y[n]:8:2);
  x:=x+0.2;
 end;
writeln;
m:=0;
for i:=1 to n do
if y[i]<0 then
 begin
  m:=m+1;
  ym[m]:=y[i];
 end;
for i:=1 to m-1 do
for j:=i+1 to m do
if ym[i]<ym[j] then
 begin
  x:=ym[i];
  ym[i]:=ym[j];
  ym[j]:=x
 end;
writeln('Массив Ym');
s:=0;
for i:=1 to m do
 begin
  write(ym[i]:8:2);
  s:=s+ym[i];
  if i mod 4=0 then writeln
 end;
writeln;
write('Сумма=',s:0:2)
end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.06.2013, 09:30
Ответы с готовыми решениями:

написала программу, нужно разбить ее на процедуры
Написала программу, потом сказали что ее нужно разбивать на подпрограммы (процедуры). тут только одна большая процедура?? или надо делать...

Разбить программу на процедуры
const maxn=100; type mas=arrayof integer; var b,a:mas; n,i,j,k:integer; begin randomize; repeat write('Введите...

Разбить программу на процедуры
Пожалуйста, помогите разбить программу на процедуры. const n=7; type mas=array of integer; matr=array of mas; var a:matr; ...

4
SausageFlat
 Аватар для Striker
242 / 221 / 154
Регистрация: 19.08.2012
Сообщений: 499
Записей в блоге: 1
05.06.2013, 09:35
Самый примитивный способ:

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
uses
  crt;
 
var
  y, ym: array[1..30] of real;
  n, m, i, j: integer;
  x, s: real;
 
procedure massY;
begin
  writeln('Массив Y:');
  n := 0;
  x := 0;
  while x <= 6 do
  begin
    n := n + 1;
    y[n] := sin(x) - cos(x * x);
    write(y[n]:8:2);
    x := x + 0.2;
  end;
  writeln;
end;
 
procedure massYm;
var
  i, j: integer;
begin
  m := 0;
  for i := 1 to n do
    if y[i] < 0 then
    begin
      m := m + 1;
      ym[m] := y[i];
    end;
  for i := 1 to m - 1 do
    for j := i + 1 to m do
      if ym[i] < ym[j] then
      begin
        x := ym[i];
        ym[i] := ym[j];
        ym[j] := x
      end;
  writeln('Массив Ym');
  s := 0;
  for i := 1 to m do
  begin
    write(ym[i]:8:2);
    s := s + ym[i];
    if i mod 4 = 0 then writeln
  end;
  writeln;
  write('Сумма=', s:0:2)
end;
 
begin
  massY;
  massYm;
end.
1
1 / 1 / 0
Регистрация: 21.05.2013
Сообщений: 24
05.06.2013, 09:42  [ТС]
Извини пожалуйста, можешь еще от комментировать её?)
0
SausageFlat
 Аватар для Striker
242 / 221 / 154
Регистрация: 19.08.2012
Сообщений: 499
Записей в блоге: 1
05.06.2013, 09:50
Цитата Сообщение от Mr_Moore Посмотреть сообщение
Извини пожалуйста, можешь еще от комментировать её?)
Если Вашей душе угодно. А пошаговое выполнение программы Вам ни о чём не говорит?
С помощью него и логики можно самому додумать что делает программа.

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
var
  y, ym: array[1..30] of real;
  n, m, i, j: integer;
  x, s: real;
 
procedure massY;
begin
  writeln('Массив Y:');
  n := 0;
  x := 0;
  while x <= 6 do//Заполняем массив.
  begin
    n := n + 1;
    y[n] := sin(x) - cos(x * x);
    write(y[n]:8:2);
    x := x + 0.2;
  end;
  writeln;
end;
 
procedure massYm;
var
  i, j: integer;
begin
  m := 0;
  for i := 1 to n do//Сортируем отрицательные элементы в порядке убывания
    if y[i] < 0 then
    begin
      m := m + 1;
      ym[m] := y[i];
    end;
  for i := 1 to m - 1 do
    for j := i + 1 to m do
      if ym[i] < ym[j] then
      begin
        x := ym[i];
        ym[i] := ym[j];
        ym[j] := x
      end;
  writeln('Массив Ym');
  s := 0;
  for i := 1 to m do//Вывод массива.
  begin
    write(ym[i]:8:2);
    s := s + ym[i];
    if i mod 4 = 0 then writeln
  end;
  writeln;
  write('Сумма=', s:0:2)
end;
 
begin
  massY;
  massYm;
end.
2
1 / 1 / 0
Регистрация: 21.05.2013
Сообщений: 24
05.06.2013, 09:56  [ТС]
Спасибо большое.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.06.2013, 09:56
Помогаю со студенческими работами здесь

Разбить программу на процедуры
var a:array of integer; i,j,n,m,t,min,min1,f:integer; begin write('M='); readln(m); write('N='); readln(n); for i:=1 to m do ...

Разбить программу на процедуры
Разбить программу на процедуры и описать каждая из них делает. Сама задача: Программа: N, i, t1, t2, j, t:longint; str:string;...

Разбить программу на процедуры и вывести её в меню
заранее спасибо за помощь. есть программа. нужно разбить на процедуры и сделать вывод в меню. uses crt; var i,n:integer; s:real; ...

Разбить на процедуры
var a:arrayof char; n:integer; begin write('Введите размер матрицы n='); readln(n); setlength(a,n,n); randomize; for var...

Разбить на процедуры
var n,m,i,j : integer; a:array of double; s:array of integer; begin //считываем n и m writeln('Input n (0&lt;n&lt;100)'); ...


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

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

Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 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. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru