Вывод символов по диагоналям

Вывести какой-либо символ по диагоналям воображаемого квадрата.

В каждой строке выводить по пробелы за исключением тех случаев, когда

  • номер строки совпадает с номером столбца,
  • номер строки равен разности количества столбцов и номера столбца. Если нумерация столбцов начиналась с 1, а не нуля, то надо прибавить 1.

Например, если строка пятая, тогда непробельный символ будет выведен в 5-м столбце от начала строки и 5-м от конца (если столбцов 20, то в 16-м).

Pascal



var i,j: byte;
begin
for i:=0 to 19 do begin
for j:=0 to 19 do
if (i=j) or (i=19-j) then
write('#')
else
write(' ');
writeln;
end;
end.



# #
# #
# #
# #
# #
# #
# #
# #
# #
##
##
# #
# #
# #
# #
# #
# #
# #
# #
# #

Язык Си


#include

main() {
int i,j;
for (i=0; i<20; i++) {
for (j=0; j<20; j++)
if (i==j || i==19-j)
printf("-");
else
printf(" ");
printf("\n");
}
}

Python


вывести диагональ Python (питон)

for i in range(20):
for j in range(20):
if i==j or i == 19-j:
print('^',end='')
else:
print(' ',end='')
print()

КуМир


алг символы по диагонали
нач
цел а,б
нц для а от 0 до 19
нц для б от 0 до 19
если а=б или а=19-б то
вывод "0"
иначе
вывод " "
все
кц
вывод нс
кц
кон

Basic-256


for i=1 to 20
for j=1 to 20
if i = j or i = 20-j+1 then
print "v";
else
print " ";
endif
next j
print ""
next i

Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
Pascal


var i,j: byte;
begin
for i:=0 to 19 do begin
for j:=0 to 19 do
if (i=j) or (i=19-j) then
write('#')
else
write(' ');
writeln;
end;
end.



# #
# #
# #
# #
# #
# #
# #
# #
# #
##
##
# #
# #
# #
# #
# #
# #
# #
# #
# #
Язык Си

#include

main() {
int i,j;
for (i=0; i
Python

вывести диагональ Python (питон)

for i in range(20):
for j in range(20):
if i==j or i == 19-j:
print('^',end='')
else:
print(' ',end='')
print()
КуМир

алг символы по диагонали
нач
цел а,б
нц для а от 0 до 19
нц для б от 0 до 19
если а=б или а=19-б то
вывод "0"
иначе
вывод " "
все
кц
вывод нс
кц
кон
Basic-256

for i=1 to 20
for j=1 to 20
if i = j or i = 20-j+1 then
print "v";
else
print " ";
endif
next j
print ""
next i