Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
1 / 1 / 0
Регистрация: 09.10.2016
Сообщений: 4

Заполните треугольник высотой n строк цифрами от 0 до 9 (циклически) с последовательно меняющимися цветами

14.10.2016, 00:50. Показов 1795. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Заполните треугольник высотой n строк цифрами от 0 до 9 (циклически) с последовательно меняющимися цветами

сверху вниз по следующему шаблону
---------0-----------
--------321----------
-------87654---------

Добавлено через 14 минут
Почти разобрался только цифры в неправильном порядке выводит

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
uses crt;
var len: integer; {количество цифр в текущей строке}
i,j: integer; {счетчики цикла}
digit: integer; {цифра}
color: integer; {цвет}
pos: integer; {начальная позиция в строке}
n: integer; {размер}
  begin
clrscr;
writeln ('Рисование треугольника');
repeat
write ('Введите его высоту от 1 до 10: ');
readln (n);
if (n<1)or(n>10) then writeln ('Введена неправильная высота');
until (n>=1)and(n<=10);
clrscr;
len:=(n+1)-n;digit:=0;pos:=18;color:=1;
for i:=1 to n do
begin
for j:=pos to len+pos-1 do
begin
gotoxy (j,i);
textcolor(color);
write (digit);
color:=color+1;
if color>15 then color:=1;
digit:=digit+1;
if digit>9 then digit:=0;
end;
pos:=pos-1;
len:=len+2;
end;
readln
end.
Добавлено через 3 часа 5 минут
Помогите пожалуйста исправить код
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.10.2016, 00:50
Ответы с готовыми решениями:

Заполните треугольник следующего вида высотой n строк цифрами от 0 до 9 (циклически)
Заполните треугольник следующего вида высотой n строк цифрами от 0 до 9 (циклически) с последовательно меняющимися цветами снизу вверх по...

2 регулярки с меняющимися цифрами
onmouseover=&quot;javascript: ff45476(386292,event);&quot; меняются только цифры все буквы перед ними остаются такими же нужно спарсить только:...

Заполните случайным образом одномерный массив из n элементов и сдвиньте циклически на 1 позицию влево
заполните случайным образом одномерный массив из n элементов и сдвиньте циклически на 1 позицию влево. пример(для n=8) исходный...

7
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
14.10.2016, 13:42
Pascal
1
2
3
4
for i:=1 to n do
 begin
  for j:=len+pos-1 downto pos do
   begin
2
0 / 0 / 0
Регистрация: 14.10.2022
Сообщений: 3
14.10.2022, 21:49
Народ, кто подскажет, как инвертировать этот треугольник?
0
 Аватар для JuriiMW
5095 / 2661 / 2355
Регистрация: 10.12.2014
Сообщений: 10,059
15.10.2022, 06:06
grulb, вы читать умеете? Вот же https://www.cyberforum.ru/post9644672.html
0
 Аватар для mr-Crocodile
3053 / 1672 / 657
Регистрация: 19.03.2019
Сообщений: 5,380
18.10.2022, 08:45
JuriiMW, вангую, что под словами
Цитата Сообщение от grulb Посмотреть сообщение
инвертировать
grulb что-то своё имеет в виду (может быть, так:
Code
1
2
3
-------87654---------
--------321----------
---------0-----------
а может быть и по другому. что именно, пусть сам grulb и пояснит.
Видимо код Юрия Борисовича Пупорева (царство ему небесное) ему не зашёл.
0
0 / 0 / 0
Регистрация: 14.10.2022
Сообщений: 3
18.10.2022, 22:09
Проблема в том, что написание цифр в треугольнике идет справа на лево, есть варианты, как это исправить? Чтобы был треугольник такого вида
-----45678-----
------123-------
--------0--------
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7816 / 4635 / 2837
Регистрация: 22.11.2013
Сообщений: 13,158
Записей в блоге: 1
18.10.2022, 23:43
Всё намного намного проще:
Pascal
1
2
3
4
5
6
7
8
9
10
11
uses Crt;
var n, i, j, c: Integer;
begin
  Write('n: '); ReadLn(n); Dec(n); {c:=0;}
  for i:=n downto 0 do begin
    Write('':n-i);
    for j:=(i-1)*(i+1)+1 to i*(i+2) do begin
      TextColor(c mod 15+1); Inc(c); Write(j mod 10);
    end; WriteLn;
  end;
end.
Добавлено через 8 минут
А поскольку (i-1)(i+1)+1 = i2, то, соответственно:
Pascal
1
2
3
4
5
6
7
8
9
10
11
uses Crt;
var n, i, j, c: Integer;
begin
  Write('n: '); ReadLn(n); Dec(n); {c:=0;}
  for i:=n downto 0 do begin
    Write('':n-i);
    for j:=Sqr(i) to i*(i+2) do begin
      TextColor(c mod 15+1); Inc(c); Write(j mod 10);
    end; WriteLn;
  end;
end.
Если хочется каждую цифру выводить своим цветом, можно, например:
Pascal
1
2
3
4
5
6
7
8
9
10
11
uses Crt;
var n, i, j: Integer;
begin
  Write('n: '); ReadLn(n); Dec(n);
  for i:=n downto 0 do begin
    Write('':n-i);
    for j:=Sqr(i) to i*(i+2) do begin
      TextColor(j mod 10+6); Write(j mod 10);
    end; WriteLn;
  end;
end.
Добавлено через 2 минуты
Развернуть по вертикали:
Pascal
5
  for i:=0 to n do begin
Развернуть по горизонтали:
Pascal
7
    for j:=i*(i+2) downto Sqr(i) do begin
0
Модератор
10359 / 5645 / 3396
Регистрация: 17.08.2012
Сообщений: 17,232
19.10.2022, 00:46
Упрощённо, до четырёх слоёв включительно:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var
  i, j, n: integer;
begin
  write('Введите высоту [1..4]: ');
  readln(n);
  for i := n downto 1 do
    begin
      write('':n-i);
      for j := i * (i - 1) div 2 to i * (i + 1) div 2 - 1 do
        begin
          TextColor(j mod 10 + 4);
          write(j :2)
        end;
      writeln
    end;
  readln
end.
Выше четырёх слоёв, с выравниванием до чётного количества позиций печати:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
uses
  crt;
var
  d, i, j, n: integer;
begin
  write('Введите высоту: ');
  readln(n);
  if n > 1 then d := trunc(ln((n - 1) * n div 2) / ln(10)) + 2 else d := 2;
  if odd(d) then inc(d);
  for i := n downto 1 do
    begin
      write('' :(n - i) * d div 2);
      for j := i * (i - 1) div 2 + 1 to i * (i + 1) div 2 do
        begin
          TextColor(j mod 10 + 6);
          write(j - 1 :d)
        end;
      writeln
    end;
  readln
end.
По теме: Википедия - Треугольное число

Ой, нет, отбой, это не подойдёт, это я не для цифр, а для чисел написал. Неправильно понял задание.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.10.2022, 00:46
Помогаю со студенческими работами здесь

Судоку: Заполните клетки мишени цифрами от 1 до N
делаю курсовую по судоку мишень картинку вложил... меню сделал формы сделал а дальше проблема - я решил на уже решенные головоломки...

Заполните случайным образом одномерный массив из n элементов и сдвиньте элементы циклически на 1 позицию вправо
Заполните случайным образом одномерный массив из n элементов и сдвиньте элементы циклически на 1 позицию вправо. Выведите оба массива на...

Заполнение квадрата цифрами циклически
Заполните квадрат n на n по спирали в направлении часовой стрелки от наружной части квадрата к внутренней цифрами от 0 до 9 (циклически) с...

Построить светящийся разными цветами треугольник
построить,светящийся разными цветами треугольник

Построить треугольник с основанием a, высотой h и углом при вершине X (в градусах)
Напишите пожалуйста программу по данной задаче Построить треугольник с основанием a, высотой h и углом при вершине X (в градусах). ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru