Добро пожаловать, гость
:: алгоритмы  и методы :: :: олимпиадные задачи :: :: связь :: :: о сайте :: :: форум ::

Форум работает в режиме архива, только для чтения и поиска.
Архив 2004 Архив 2007 Архив 2013

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 26.12.2009, 12:27
Новичок

Отправить личное сообщение для Anastasiya_1692 Посмотреть профиль Найти все сообщения от Anastasiya_1692
 
Регистрация: 25.12.2009
Сообщений: 2

Реккурсия (Pascal)
Доброго времени суток!!!

Помогите пожалуйста!!!

Дан массив x, состоящий из 10 вещественных чисел и целочисленная переменная k, необходимо элементы массива x циклически сдвинуть на k позиций влево.

Составить программу используя рекурсивную функцию.

Могу написать прогу без реккурсии:

uses crt;
var k,i,y:integer;
A: array [1..10] of real;
Procedure SDVIG( m : integer);
Var P : real;
begin
for i := 1 to m do
begin P := A [ 1 ] ;
for y := 1 to 9 do A[ y ] := A [ y+1] ;
A [10] := P ;
end ;
end;

begin
clrscr;
writeln ('Vvedite massiv iz 10 chisel:');
for i:=1 to 10 do read (a [i]);
write ('Veddite chislo pozicij sdviga: ');
readln (k);
Sdvig(k);
for i:=1 to 10 do write (a[i],' ');
end.

А как эту процедуру (или переделать в ф-цию) сделать реккурсивной?!!
  #2  
Старый 26.12.2009, 16:51
MBo MBo вне форума
Местный

Отправить личное сообщение для MBo Посмотреть профиль Найти все сообщения от MBo
 
Регистрация: 21.09.2006
Адрес: Новосибирск
Сообщений: 1,374

передавать еще один параметр - на сколько еще нужно сдвигать. Если ноль - выходить
 


Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачка по Pascal nokman Сортировка и поиск 7 23.12.2009 11:46
программа Pascal Вера Хлебные места 5 21.09.2009 14:12
Нужны таблицы по Pascal. Артём Реализация, исходники, языки 4 24.09.2008 14:46
Pascal гость Математические алгоритмы (другое) 3 15.11.2007 23:26