Нарисовать домик через write - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Пользователь вводит число (сторону квадрата или сторону домика), необходимо нарисовать домик с крышей Собственно не знаю как нарисовать крышу. Также необходимо сделать окошко у домика (просто квадрат тоже). Вот так рисует тело дома:

Решение задачи: «Нарисовать домик через write»

textual
Листинг программы
var i,n,j,o,m:integer;
begin
writeln('Введите сторону дома');
readln(n);
if odd(n) then begin writeln('*':n div 2+1);
                     for i:=1 to n div 2 do
                      writeln('*':n div 2-i+1,'*':i*2);
               end
          else begin writeln('**':n div 2+1);
                     for i:=2 to n div 2 do
                      writeln('*':n div 2-i+1,'*':i*2-1);
               end;
o:=n div 3; if o<2 then o:=2;
for i:=1 to n do write('*');writeln;
for i:=2 to n-1 do
 begin
 if (i>o)and(i<=n-o)
   then begin
         write('*');
         for j:=2 to n-1 do if (j<o+1)or(j>n-o) then write(' ')
                                                else write('*') ;
        writeln('*');
        end
   else begin write('*');for m:=2 to n-1 do write(' ');writeln('*') end
 end;
for i:=1 to n do write('*');writeln;
end.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.857 из 5