Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 27.11.2016, 08:13   #1 (permalink)
Anastasia12
Member
 
Регистрация: 12.11.2016
Сообщений: 19
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помогите исправить ошибки. Паскаль

Program infa;
Const n = 10;
Var i, j, t, v_min, v_max, i_max, max, i_min, min : Integer;
vector : Array [1..n] Of Integer;

Begin

Randomize;

Write('v_min=');
ReadLn(v_min);
Write('v_max=');
ReadLn(v_max);

For i:=1 To n Do
vector[i]:=Random(v_max-v_min + 1) + v_min;

WriteLn;
For i:=1 To n Do
Write(vector[i]:5);
WriteLn;

max:= vector[1];
i_max:= 1;
min:= vector[1];
i_min:= 1;

For i:=2 To n Do
Begin

If (vector[i] > max) Then
Begin
max := vector[i];
i_max := i;
End;

If (vector[i] < min) Then
Begin
min := vector[i];
i_min := i;
End;

End;

WriteLn;
WriteLn('max=', max, ' i_max=', i_max);
WriteLn('min=', min, ' i_min=', i_min);

i := i_min;
j := i_max;

while i<j do begin
t := vector[i];
vector[i]:=vector[n-i+1];
vector[n-i+1]:=vector[j];
vector[j] := t;
end;


WriteLn;
WriteLn('Полученный вектор:');
For i:=1 To n Do
Write(vector[i]:5);
WriteLn;

End.

eao.png
Anastasia12 вне форума   Ответить с цитированием

Старый 27.11.2016, 08:13
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Пожалуйста, обратите внимание - это похожие на вашу темы

Помогите исправить ошибку в программе. Паскаль
Помогите пожалуйста исправить задачу на строки, Паскаль

Старый 27.11.2016, 09:43   #2 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Anastasia12 Посмотреть сообщение
Помогите исправить ошибки (Паскаль)
Извольте:
Код:
Const
 n = 10;

Var
 i,t,v_min,v_max,i_max,max,i_min,min,i1,i2: Integer;
 vector : Array [1..n] Of Integer;

Begin

 Randomize;

 Writeln('Input data:');
 Writeln('n= ',n);
 Write('v_min= ');
 ReadLn(v_min);
 Write('v_max= ');
 ReadLn(v_max);

 Writeln('Initial vector:');
 for i:=1 to n do
  begin
   vector[i]:=Random(v_max-v_min + 1) + v_min;
   Write(vector[i]:5);
  end;
 WriteLn;

 max:= vector[1];
 i_max:= 1;
 min:= vector[1];
 i_min:= 1;

 for i:=2 to n do
  begin

   if (vector[i]>max) then
    begin
     max := vector[i];
     i_max := i;
    end;

   if (vector[i] < min) then
    begin
     min := vector[i];
     i_min := i;
    end;

  end;

 if min=max then
  Writeln('All elements are equal!')
 else
  begin
   WriteLn;
   Writeln('Output data:');
   WriteLn('max= ', max, ' i_max= ', i_max);
   WriteLn('min= ', min, ' i_min= ', i_min);

   if i_min<i_max then
    begin
     i1:=i_min+1;
     i2:=i_max-1;
    end
   else
    begin
     i1:=i_max+1;
     i2:=i_min-1;
    end;

   for i:=i1 to ((i1+i2) div 2) do
    begin
     t:=vector[i];
     vector[i]:=vector[i2-(i-i1)];
     vector[i2-(i-i1)]:=t;
    end;

   WriteLn('Output vector:');
   for i:=1 to n do
    Write(vector[i]:5);
  end;

 ReadLn

End.
Vladimir_S вне форума   Ответить с цитированием
Старый 27.11.2016, 10:30   #3 (permalink)
Anastasia12
Member
 
Регистрация: 12.11.2016
Сообщений: 19
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

спасибо большое
Anastasia12 вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 22:44.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.