В первой части создать окно и вывести все символы от 0 до 255 с указанием номеров - Turbo Pascal

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

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

Разделить экран по горизонтали на две части. В первой части создать окно и вывести все символы от 0 до 255 с указанием номеров, во втором окне в двух строчках вывести два символа, бегающих в противоположные стороны.
Листинг программы
  1. uses crt;
  2. var
  3. i,j,dec:integer;
  4. begin
  5. {create window}
  6. clrscr;
  7. window(1,1,80,34);
  8. {output 255 chars to window}
  9. textcolor(15);
  10. for i:=0 to 32 do
  11. begin
  12. dec:=i;
  13. for j:=1 to 8 do
  14. begin
  15. if (dec<7) or (dec>=14) then
  16. write(dec:4,'-',' ',chr(dec):1)
  17. else
  18. write(dec:4,'- ');
  19. dec:=dec+32;
  20. end;
  21. writeln
  22. end;
  23. {divide screen}
  24. for i:=1 to 80 do
  25. begin
  26. gotoXY(i,34);
  27. write(chr(177));
  28. end;
  29. window(1,35,80,36);
  30. repeat
  31. for i:=1 to 80 do
  32. begin
  33. clrscr;
  34. textcolor(15);
  35. gotoXY(i,1);
  36. write(chr(1));
  37. gotoXY(81-i,2);
  38. write(chr(2));
  39. delay(5000);
  40. end;
  41. until keypressed;
  42. end.

Решение задачи: «В первой части создать окно и вывести все символы от 0 до 255 с указанием номеров»

textual
Листинг программы
  1. uses Crt;
  2. var
  3.   i,j,k,dx:integer;
  4. begin
  5.   clrscr;
  6.   window(1,1,80,25);
  7.   textbackground(LightBlue);
  8.   clrscr;
  9.   window(1,1,80,23);
  10.   k:=-1;j:=0;
  11.   repeat
  12.       k:=k+1;j:=j+1;
  13.       textcolor(LightGreen);
  14.       write(k:3,':',chr(k),' ');
  15.       if j mod 13=0 then writeln;
  16.   until k=255;
  17.   window(1,24,80,25);
  18.   textbackground(Green);
  19.   clrscr;
  20.   i:=40;j:=40;dx:=1;
  21.   repeat
  22.     gotoxy(i,1);textcolor(Yellow);write('*');
  23.     gotoxy(j,2);textcolor(White);write('+');
  24.     textcolor(Green);
  25.     delay(100);
  26.     gotoxy(i,1);textcolor(Yellow);write(' ');
  27.     gotoxy(j,2);textcolor(White);write(' ');
  28.     i:=i+dx;j:=j-dx;
  29.     if i=1 then dx:=1 else if i=79 then dx:=-1;
  30.   until keypressed;
  31. end.

Объяснение кода листинга программы

  1. Создается окно размером 80x25.
  2. Выбирается фоновый цвет текста - светло-синий.
  3. Очищается экран.
  4. Создается окно размером 80x23.
  5. Устанавливается цвет текста - светло-зеленый.
  6. Выводится число k (от 0 до 255) с номером k.
  7. Если номер j (также от 0 до 13) делится на 13 без остатка, выводится строка.
  8. Цикл повторяется, пока k не станет равным 255.
  9. Очищается экран.
  10. Устанавливается цвет фона - зеленый.
  11. Устанавливается координаты i и j для следующего цикла.
  12. Запускается цикл, в котором:
    • выводится символ * с номером i;
    • выводится символ + с номером j;
    • цвет текста меняется на зеленый;
    • задержка в 100 мс;
    • выводится символ с номером i;
    • выводится символ с номером j;
    • координаты i и j сдвигаются так, чтобы i стал на единицу больше, а j на единицу меньше;
    • если i стал равным 1, dx устанавливается в 1, иначе если i стал равным 79, dx устанавливается в -1.
  13. Пока не будет нажата клавиша, цикл продолжается.

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


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

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

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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы