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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.06.2015, 21:47   #1
lonis
Новичок
Джуниор
 
Регистрация: 15.06.2015
Сообщений: 2
По умолчанию Pascal ABC . Циклические перестановки в одномерных массивах

Ввести одномерный целочисленный массив A , вывести его. В массиве трижды произвести циклический сдвиг вправо всех элементов следующих за минимальным из чётных. Заранее спасибо
lonis вне форума Ответить с цитированием
Старый 18.07.2015, 17:30   #2
ARudik
Пользователь
 
Аватар для ARudik
 
Регистрация: 16.06.2012
Сообщений: 18
По умолчанию

Можно так.
Код:
var count,i,idmin:integer;
	mas:array[0..512] of integer;
	min:integer;
begin
	write('Input count of elements: ');
	readln(count);
	for i:=0 to count-1 do read(mas[i]);
	i:=0;
	while (mas[i] mod 2)<>0 do i:=i+1;
	min := mas[i];
	idmin:=i;
	for i:=idmin to count-1 do 
		if (mas[i] mod 2)=0 then 
			if mas[i]<mas[idmin] then idmin:=i;		
	i:=count-1;
	while i>idmin do
		begin
			mas[i+3]:=mas[i];
			i:=i-1;
		end; 
	mas[idmin+1]:=mas[count];
	mas[idmin+2]:=mas[count+1];
	mas[idmin+3]:=mas[count+2];
	for i:=0 to count-1 do write(mas[i],' ');
end.
ARudik вне форума Ответить с цитированием
Старый 18.07.2015, 17:47   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ух... Ядреное решение...
Мой хъод:
Код:
var a:array[1..10] of integer; min:integer;
 procedure ror(imin:integer); var k,i:integer; begin  inc(imin);
  k:=a[imin]; for i:=imin+1 to 10 do a[i-1]:=a[i]; a[10]:=k;
 end;

begin
 for i:=1 to 10 do begin
  Readln(a[i]); if (i=1) or (a[i]<a[min]) then min:=i;
 end;
 for i:=1 to 10 do write(a[i]:5);writeln;
 for i:=1 to 3 do ror(min);
 for i:=1 to 10 do write(a[i]:5);
 readln;
end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Pascal] Нахождение одинаковых элементов в 2-х одномерных числовых массивах just4smth Помощь студентам 11 25.11.2012 19:21
обработка одномерных массивов (вставка, удаление и перестановка элементов) Pascal ABC Кеворк Помощь студентам 0 27.12.2011 18:16
немного о одномерных массивах Алекс К. Помощь студентам 2 10.03.2009 19:38