Помощь - Поиск - Пользователи - Календарь
Полная версия: Пирамида...
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
yar
Народ здрасьте, помогите решить задачку!
Нарисовать пирамиду, где размер случайный (в разумных пределах), цвет тоже, каждая след. ступенька уменьшается на рандомное число...

Заранее благодарен...
trminator
Лови решение (длинное, корявое :-[, зато работает)
==================================

PROGRAM piramida;
var s : string;
StartRazm, razm, decr : integer;

function MakeStr(razm,cur:integer): string;
var s:string;
i:integer;
begin s:='';
for i:=1 to razm do
if not(i in [((razm-cur)div 2 + 1) .. ((razm-cur)div 2 + cur)]) then
s:=s+' '
else s:=s+'=';
MakeStr:=s
end;

begin
randomize;
StartRazm:=(random(10)+1)*2; {Все размеры четные}
razm:=StartRazm;
decr:=(random(3)+1)*2;{На ск-ко уменьшаю}
while razm>0 do begin
s:=MakeStr(StartRazm,razm); {Генерю строку}
WriteLn(s);
razm:=razm-decr
end;
end.


===============================
Кстати, если именно нарисовать (в смысле, с графикой), то это не ко мне...
И начсет цвета: каждая ступенька - случ. или как? (здесь пока никак)


P.S. Я не опоздал?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.