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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2009, 15:22   #1
Fylhtq
Пользователь
 
Регистрация: 11.11.2008
Сообщений: 32
Злость ошибка!!!

условие
Ввести последовательность неповторяющихся чисел. Сформировать вектор из чисел, стоящих до Max, и вектор из чисел, стоящих после Min


Program MaxMin;
Const
Dim=10;
var x,y,z:array[1..Dim] of integer;
min,max,imin,imax,i,n,k,kz,ky,o:int eger;
begin
writeln('Введите количество<= ',Dim,': ');
readln(n);
writeln ('Введите неповторяющиеся целые числа* ');
readln;
for i:=1 to n do
read(x[i]);
readln;
min:=x[1];
imin:=1;
max:=x[1];
imax:=1;
for i:=2 to n do
begin
if x[i]>max
then
begin
max:=x[i];
imax:=i;
end
else
if x[i]<min
then
begin
min:=x[i];
imin:=i;
end;
end;
{****} отсюда начинается ошибка , т.е прога неправильна дальше помогите плиззз

ky:=0;
for i:=imax to n do
begin

3y[ky]:=x[i];
end;
kz:=0;
for i:=imin to n do
begin
z[kz]:=x[i];
end;
{***}

writeln('----------------');
writeln('Вектор из чисел стоящих до максимума:');
if ky<=n
then
begin
for i:=1 to ky do
write ( y[i]:6);
writeln;
end
else
writeln ('Вектор не сформирован**');
readln;
writeln('----------------');
writeln('Вектор из чисел стоящих после минимума:');
if kz>=n
then
begin
for i:=1 to kz do
write ( z[i]:6);
writeln;
end
else
writeln ('Вектор не сформирован**');
writeln('----------------');
readln;
end.
AndreiKA_PC
Fylhtq вне форума Ответить с цитированием
Старый 01.06.2009, 15:47   #2
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Код:
Program MaxMin;
uses crt;
Const
Dim=10;
var x,y,z:array[1..Dim] of integer;
min,max,i,n:integer;
begin
clrscr;
writeln('Введите количество<= ',Dim,': ');
readln(n);
writeln ('Введите неповторяющиеся целые числа');
for i:=1 to n do
read(x[i]);
max:=1;
min:=1;
for i:=2 to n do
 if x[i]>x[max] then max:=i
    else if x[i]<x[min] then min:=i;
writeln('Max-------------');
for i:=1 to max-1 do
 begin
 y[i]:=x[i];
 write(y[i],' ');
 end;
writeln;
writeln('Min-------------');
for i:=min+1 to n do
 begin
 z[i-min]:=x[i];
 write(z[i-min],' ');
 end;
end.
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 01.06.2009, 15:57   #3
Fylhtq
Пользователь
 
Регистрация: 11.11.2008
Сообщений: 32
По умолчанию

а если вектора не сформированы , что писать?
AndreiKA_PC
Fylhtq вне форума Ответить с цитированием
Старый 01.06.2009, 16:04   #4
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Векторы будут не сформированы если минимальный элемент - последний в последовательности а максимальный первый
Код:
if max=1 then ...... else
 for i:=1 to max-1 do
 begin
 y[i]:=x[i];
 write(y[i],' ');
 end;
Код:
if min=n then ....
 else
for i:=min+1 to n do
 begin
 z[i-min]:=x[i];
 write(z[i-min],' ');
 end;
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Nero - ошибка драйвера DMA. ошибка CRC NecRoMat Софт 5 09.05.2012 01:29
Ошибка в Аfor i:=1 to SI do. Пишит что ошибка в SI Алексей_xXx Помощь студентам 2 29.05.2009 00:09
...Ошибка 101 (net::ERR_CONNECTION_RESET): Неизвестная ошибка... infrared Помощь студентам 0 16.04.2009 17:44
Ошибка Devourer12345 Microsoft Office Access 2 10.08.2008 20:24