Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
2 / 2 / 3
Регистрация: 25.04.2011
Сообщений: 122
1

Написать программу, где с верху и снизу экрана пробегают звездочки

28.11.2011, 14:04. Показов 1647. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Используя возможности CRT, написать программу, где с верху и снизу экрана пробегали звездочки (*), каждая следующая звезда случайным цветом.

Вот моя попытка. Проблемы:
1. Все звездочки случайным цветом.
2. Где надо вставить clrscr, чтобы предыдущие звездочки исчезали.
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
var
  x,y:integer;
  cl:0..15;
begin
   clrscr;
   x:=0;
   y:=0;
   for x:=1 to 80 do
   begin
       x:=x+1;
       if (x mod 2)=0 then 
          begin
              randomize;
              cl:=random(16);
              textcolor(cl);
              gotoxy(x,1);
              writeln('*');
              gotoxy(x,25);
              writeln('*');
          end
       else 
          begin
              textcolor(white);
              gotoxy(x,1);
              writeln('*');
              gotoxy(x,25);
              writeln('*');
              clrscr;
          end;
      readln;
   end
end.
Добавлено через 1 минуту
кстати, в задании было сказано использовать 2 цикла. Но я как то умудрился сделать через один..может из за этого и возникли проблемы...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.11.2011, 14:04
Ответы с готовыми решениями:

Написать игру. В верхней части экрана летят 3 «звездочки»(***). В нижнем правом углу экрана находиться буква «О»
Написать игру. В верхней части экрана летят 3 «звездочки»(***). В нижнем правом углу экрана...

Отступ с верху и снизу макета
Как добиться при вёрстке того чтобы были отступы от верхнего и нижнего края при этом подвал прибит...

Включаешь комп - пробегают циферки, потом винда и чёрный экран. Пишет неоптимальное разрешение экрана
проблема с разрешением экрана,включаеш комп пробегают циферки потом винда и чёрный экран,пишет не...

Написать программу, запрашивающую пароль у пользователя, чтобы при вводе пароля отображались звездочки
Здравствуйте. Я тут поискал в форуме и в гугл поискал. Но не нашел нужное. Может кто то знает как...

7
11 / 11 / 17
Регистрация: 14.09.2011
Сообщений: 62
28.11.2011, 14:59 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

2 цикла в задание было сказано скорей всего для обратного движения звезд
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
35
36
Uses crt;
var
  x:integer;
  cl:0..15;
begin
   clrscr;
   x:=0;
   repeat 
   for x:=1 to 80 do
   begin
   If keypressed=true then break;
              clrscr;
              randomize;
              cl:=random(16);
              textcolor(cl);
              gotoxy(x,2);
              writeln('*');
              gotoxy(x,25);
              writeln('*');
              delay(100);
              end;
   for x:=80 downto 1 do
   begin
   If keypressed=true then break;
              clrscr;
              randomize;
              cl:=random(16);
              textcolor(cl);
              gotoxy(x,2);
              writeln('*');
              gotoxy(x,25);
              writeln('*');
              delay(100); 
   end;
   until keypressed=true;
end.
1
2 / 2 / 3
Регистрация: 25.04.2011
Сообщений: 122
28.11.2011, 15:41  [ТС] 3
Спасибо. Но это не решило проблем с которыми я столкнулся. Почему то все звездочки окрашиваются случайным цветом. Хотя необходимо чтоб каждая вторая. Потом чтоб предыдущая звездочка исчезала..У меня при вставке clrscr..звездочки которые идут сверху исчезают вообще а вот снизу появляеться нормально, но опять же все в случайной окраске....
0
11 / 11 / 17
Регистрация: 14.09.2011
Сообщений: 62
28.11.2011, 15:52 4
ты не указал чтоб каждая 2 должна изменятся
0
2 / 2 / 3
Регистрация: 25.04.2011
Сообщений: 122
28.11.2011, 15:56  [ТС] 5
В самом первом сообщении... Каждая следующая.. А как на счет clrscr?
0
11 / 11 / 17
Регистрация: 14.09.2011
Сообщений: 62
28.11.2011, 15:58 6
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

до конца не понял задания, 2 варианта
1:
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
35
36
37
38
39
40
41
Uses crt;
var
  x:integer;
  cl:0..15;
begin
   clrscr;
   x:=0;
   repeat 
   for x:=1 to 80 do
   begin
   If keypressed=true then break;
             randomize; 
             if x mod 2=0 then 
                begin 
                cl:=random(16); 
                clrscr; 
                end;
              textcolor(cl);
              gotoxy(x,2);
              writeln('*');
              gotoxy(x,25);
              writeln('*');
              delay(100);
              end;
   for x:=80 downto 1 do
   begin
   If keypressed=true then break;
              randomize;
              if x mod 2=0  then begin 
              cl:=random(16);
              clrscr; 
              end;
              textcolor(cl);
              gotoxy(x,2);
              writeln('*');
              gotoxy(x,25);
              writeln('*');
              delay(100); 
   end;
   until keypressed=true;
end.
2:
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
35
36
37
38
Uses crt;
var
  x:integer;
  cl:0..15;
begin
   clrscr;
   x:=0;
   repeat 
   for x:=1 to 80 do
   begin
   If keypressed=true then break;
             randomize; 
                clrscr;             
             if x mod 2=0 then
                cl:=random(16); 
              textcolor(cl);
              gotoxy(x,2);
              writeln('*');
              gotoxy(x,25);
              writeln('*');
              delay(100);
              end;
   for x:=80 downto 1 do
   begin
   If keypressed=true then break;
              randomize;
              clrscr;
              if x mod 2=0  then 
                cl:=random(16); 
              textcolor(cl);
              gotoxy(x,2);
              writeln('*');
              gotoxy(x,25);
              writeln('*');
              delay(100); 
   end;
   until keypressed=true;
end.
0
2 / 2 / 3
Регистрация: 25.04.2011
Сообщений: 122
28.11.2011, 16:08  [ТС] 7
Ух ты).. Большое спс... А ты не мог бы посмотреть на мою прогу... Куда бы там вставить очистку экрана? и почему все звездочки рандом не каждая вторая?
0
11 / 11 / 17
Регистрация: 14.09.2011
Сообщений: 62
28.11.2011, 16:21 8
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

у тебя ошибка gotoxy(x,1); writeln('*'); надо писать write(x,1);
Pascal
1
2
3
   for x:=1 to 80 do 
   begin
       clrscr;{здесь надо вставить}
вот исправленная твоя прога
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
Uses Crt;
var
  x:integer;
  cl:0..15;
begin
   clrscr;
   for x:=1 to 80 do
   begin
       clrscr;
       if (x mod 2)=0 then 
          begin
              randomize;
              cl:=random(16);
              textcolor(cl);
              gotoxy(x,1);
              write('*');
              gotoxy(x,25);
              write('*');
          end
       else 
          begin
              textcolor(white);
              gotoxy(x,1);
              write('*');
              gotoxy(x,25);
              write('*');
              
          end;
      readln;
   end
end.
0
28.11.2011, 16:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.11.2011, 16:21
Помогаю со студенческими работами здесь

Написать программу вычисления ближайшего снизу числа степени 2
Надо написать программы на C# и если можно пояснить строки кода 1. Написать программу...

Привязка элемента к верху экрана
Здраствуйте, ув.форумчане! Как можно привязать например, хедер, кверху экрана при прокрутке, как...

Написать программу, которая вычерчивает на экране ракету, и перемещает фигуру снизу вверх
В общем есть такая задача: Написать программу, которая вычерчивает на экране ракету, и перемещает...

ASUS K50IJ пищит инвертор, затемнения в верху экрана
Доброго времени суток, походу инвертор моего ASUS K50IJ приказал долго жить, пищит, затемнения в...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru