Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2014, 20:28   #1
hars1
Пользователь
 
Регистрация: 18.03.2014
Сообщений: 11
Восклицание массив

Здравствуйте. Нужна ваша помощь в решении очень сложной задачи(как для меня). Есть вот такая задача,ее нада переделать под процедуры. Помогите,програмисты добрые
Код:
program z1;
const n=10;
var a: array [1..n] of integer;
    buf,i,P:integer;
    f:byte;
begin
writeln('Введіть елементи масиву');
for i:=1 to n do
    begin
    write('a[',i,']=');
    readln(a[i]);
    end;
write('Введіть P: ');
readln(P);
f:=1;
for i:=1 to n do
    if f=1
       then
       if i mod 2 =0
          then if (a[i]>0) and (a[i]<P)
                  then f:=1
                  else f:=0
          else
       else break;
if f=1
   then begin
        buf:=a[1];
        a[1]:=a[n];
        a[n]:=buf;
        end
   else for i:=1 to n do
        a[i]:=-abs(a[i]);
for i:=1 to n do
    writeln(a[i]);
end.
hars1 вне форума Ответить с цитированием
Старый 14.05.2014, 20:39   #2
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Три основных блока: ввод, обработка, вывод.
Сами найдете эти блоки?
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 14.05.2014, 20:53   #3
hars1
Пользователь
 
Регистрация: 18.03.2014
Сообщений: 11
По умолчанию

Цитата:
Сообщение от ZX Spectrum-128 Посмотреть сообщение
Три основных блока: ввод, обработка, вывод.
Сами найдете эти блоки?
Пожалуйсто,если можете,то объясните мне что и где,как и почему
hars1 вне форума Ответить с цитированием
Старый 14.05.2014, 21:07   #4
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Ну вот например вывод:
...
Код:
...
Procedure Output;
Begin
for i:=1 to n do
  Writeln(a[i]);
End;
...
Begin
  ...
  Output;
End.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 14.05.2014, 21:12   #5
hars1
Пользователь
 
Регистрация: 18.03.2014
Сообщений: 11
По умолчанию

Цитата:
Сообщение от ZX Spectrum-128 Посмотреть сообщение
Ну вот например вывод:
...
Код:
...
Procedure Output;
Begin
for i:=1 to n do
  Writeln(a[i]);
End;

...
Begin
  ...
  Output;
End.
Извините конечно за мою тупость,но я в паскале ничего не понимаю,могли бы вы показать где у меня в программе ввод,решения,вывод,и как его оформить?
hars1 вне форума Ответить с цитированием
Старый 14.05.2014, 22:10   #6
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Код:
Procedure Input;
begin
writeln('Введіть елементи масиву');
for i:=1 to n do
    begin
    write('a[',i,']=');
    readln(a[i]);
    end;
write('Введіть P: ');
readln(P);
End;
Это ввод, остальное обработка
ZX Spectrum-128 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дан одномерный массив, сформировать новый массив по заданному правилу {Delphi} Nickolai47 Помощь студентам 5 16.12.2012 14:51
С# задан массив 5х5. сформировать массивы А и В. в массив А поместить элементы с четными индексами, в массив В с нечетны Koksa Помощь студентам 0 10.10.2011 11:26
Запись координат в массив в реал тайм, Как записать координаты в массив Dark19 Visual C++ 2 21.06.2011 18:45
Из массив А получить массив В, удвоив все нечётные элементы удвоены ( на Pascal) KARTER Помощь студентам 1 18.06.2011 19:58