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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.06.2009, 17:12   #1
Nogard
 
Регистрация: 18.06.2009
Сообщений: 4
Печаль

Пожалуйста обьясните мне как решать задачу вывода такой картинки:
1111111111111111 (16 раз)
222222222222 (12 раз)
33333333 (8 раз)
4444 (4 раза)
4444 (4 раза)
33333333 (8 раз)
222222222222 (12 раз)
1111111111111111 (16 раз) Решить методом рекурсии и если возможно обьяснить мне ! это по книжкам не могу понять как рекурсия работает !!!



Вот написал программу но она немного другое выдаёт, помогите исправить:
Код:
program recyrsia;
uses crt;
var k:integer;
function kartinka(i:integer):integer;
 var j,n:integer;
 begin
   n:=16;
   if i=1 then begin
     for j:=1 to n do write(i);
     exit;
   end
   else kartinka:=kartinka(i-1);
   n:=n-4;
   for j:=1 to n do write(i);
   writeln;
 end;
begin
  kartinka(4);
end.

Последний раз редактировалось Stilet; 22.06.2009 в 12:53.
Nogard вне форума Ответить с цитированием
Старый 22.06.2009, 12:08   #2
Anatole
Форумчанин
 
Аватар для Anatole
 
Регистрация: 07.04.2009
Сообщений: 245
По умолчанию

Для того, чтобы правильно написать прокрамму такого типа, необходимо в первую очередь установить закономерности<> которіе присущи данной задаче. Тогда пишется просто в течении 10 минут. Например вот так:
Код:
Program Kartinka;
 
 Procedure DrawString(n:byte);
var i :byte;
Begin
 If n = 0 then exit;
 For i := 1 to 4*n do Write((5-n):1);
 WriteLn;
 DrawString(n-1);
 For i := 1 to 4*n do Write((5-n):1) ;
 WriteLn;
End;
BEGIN
DrawString(4);
END.
Всякое безобразие должно быть единообразным. Тогда это называется порядком.

Последний раз редактировалось Anatole; 23.06.2009 в 10:08.
Anatole вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ссылки и Рекурсии AleksD Паскаль, Turbo Pascal, PascalABC.NET 0 14.06.2009 20:27
Паскаль. Рекурсии Nush@ Паскаль, Turbo Pascal, PascalABC.NET 13 03.12.2008 21:27
Pascal: Вычисление корна с помощью рекурсии. MaGWaY_minsk Помощь студентам 2 11.11.2008 22:20
выход из рекурсии L_M Помощь студентам 9 03.10.2008 18:03
Рекурсии Logan Паскаль, Turbo Pascal, PascalABC.NET 1 13.05.2008 08:52