IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Векторы, В целочисленном векторе vectorn найти минимальный и максимальный эле
Владимир89
сообщение 15.12.2011 9:50
Сообщение #1





Группа: Пользователи
Сообщений: 6
Пол: Мужской
Реальное имя: Владимир

Репутация: -  0  +


В целочисленном векторе vector n найти минимальный и максимальный элементы. Перевернуть элементы вектора, расположенные между ними (выполнить “поплавок”).

Входные данные:
n=10
v_min=-5
v_max=10
Исходный вектор:
7 -5 1 3 -2 5 2 0 10 1

Выходные данные:
min=-5 n_min=2
max=10 n_max=9
Выходной вектор:
7 -5 0 2 5 -2 3 1 10 1
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
TarasBer
сообщение 15.12.2011 10:07
Сообщение #2


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


А есть есть несколько минимальных и максимальных?


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Владимир89
сообщение 15.12.2011 10:20
Сообщение #3





Группа: Пользователи
Сообщений: 6
Пол: Мужской
Реальное имя: Владимир

Репутация: -  0  +


есть пример на который нужно опираться

Program Variant_0;
Uses WinCrt;
Const n = 10; {задание размера вектора именованной константой}

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

Begin

Randomize; {запуск генератора случайных чисел}

WriteLn('Лабораторная работа №6_1');
WriteLn('Вариант №0');
WriteLn('ИС-11-1');
WriteLn('Пупкин Василий');
WriteLn;

WriteLn('Задайте диапазон случайных чисел');
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;
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);

vector[i_max]:=min; {меняем местами макс и мин элементы}
vector[i_min]:=max; {в векторе}


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

End.

Сообщение отредактировано: Владимир89 - 15.12.2011 10:31


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
TarasBer
сообщение 15.12.2011 10:24
Сообщение #4


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Блин вы запарили.
Во-первых, используй тег code=pas!
Во-вторых, какой в жопу bmp, вы про другие форматы знаете вообще, и про то, что сеть не резиновая?

Короче, исправляй, только потом, может быть, буду говорить, что делать.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
TarasBer
сообщение 16.12.2011 14:20
Сообщение #5


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


А, теперь jpg. Получше, но тоже отвратно.
Ну почему никто не знает про формат png, которыей и разводов не оставляет, и сжимает отлично?
Уже же у половины населения винда-семёрка стоит, у которой пеинт по умолчанию в ПНГ сохраняет, так откуда же, ОТКУДА до сих пор берутся бмпшники и жпгешники?


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Krjuger
сообщение 16.12.2011 22:14
Сообщение #6


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


Меню->Сохранить как-> blabla bla.bmp))))))
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
-TarasBer-
сообщение 17.12.2011 11:50
Сообщение #7


Гость






Цитата(Krjuger @ 16.12.2011 22:14) *

Меню->Сохранить как-> blabla bla.bmp))))))

Ну да, упорные дятлы всегда пробьются.
 К началу страницы 
+ Ответить 
Владимир89
сообщение 19.12.2011 3:36
Сообщение #8





Группа: Пользователи
Сообщений: 6
Пол: Мужской
Реальное имя: Владимир

Репутация: -  0  +


а сейчас как?


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
TarasBer
сообщение 19.12.2011 9:34
Сообщение #9


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Во, теперь нормально.
В общем, по-прежнему висит вопрос: что делать, если максимальных элементов несколько?
Код из собщения номер три я не читал, потому что он не отформатирован и вне тега code=pas.

Сообщение отредактировано: TarasBer - 19.12.2011 9:34


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Владимир89
сообщение 20.12.2011 4:10
Сообщение #10





Группа: Пользователи
Сообщений: 6
Пол: Мужской
Реальное имя: Владимир

Репутация: -  0  +


Program Variant_0; 
Uses WinCrt;
Const n = 10; {задание размера вектора именованной константой}
Var
i, v_min, v_max, i_max, max, i_min, min : Integer;
vector : Array [1..n] Of Integer;
Begin
Randomize; {запуск генератора случайных чисел}
WriteLn('Лабораторная работа №6_1');
WriteLn('Вариант №0');
WriteLn('ИС-11-1');
WriteLn('Пупкин Василий');
WriteLn;
WriteLn('Задайте диапазон случайных чисел');
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;
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);
vector[i_max]:=min; {меняем местами макс и мин элементы}
vector[i_min]:=max; {в векторе}
WriteLn;
WriteLn('Полученный вектор:');
For i:=1 To n Do {вывод на экран полученного вектора}
Write(vector[i]:5);
WriteLn;
End.

вот и компиляция задачи


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
TarasBer
сообщение 20.12.2011 9:23
Сообщение #11


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Ага, если максимальных и минимальных несколько, то надо брать первое вхождение.

Короче, тебе надо сделать то же самое, но вместо обмена двух значений местами вот как:


i := i_min;
j := i_max;
while i<j do begin
t := vector[i];
vector[i]:=vector[j];
vector[j] := t;
inc(i);
dec(j);
end;



--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Владимир89
сообщение 22.12.2011 9:30
Сообщение #12





Группа: Пользователи
Сообщений: 6
Пол: Мужской
Реальное имя: Владимир

Репутация: -  0  +


Спасибо большое очень помог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 2:32
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"