Меню
Категории
Консольная матрица на C++
18 апреля, 2008 Задачки

matrix.thumbnail - Консольная матрица на C++Консольная матрица на C++. На 1 курсе после первых лекций по программированию я заболел программированием. Сейчас эта болезнь прошла, но плоды издевательств остались и сейчас. В примерах ниже я пишу консольную матрицу. А фактически полоски зеленых символов ползущих сверху вниз по экрану :)

Первые версии матрицы просто выводили случайные зеленые символы, следующие были посовременнее и имели задержку, направление движения и т.п.

Версия №1.

#include <iostream.h>
#include <conio.h>
#include <stdlib.h>


int i,a,b,c;

void blue();
void red();
void green();

int main(int argc, char* argv[])
{
int ax;
randomize();
for(int s=0;s<5;i++)
{

for(i=0;i<10000;i++)
{
textcolor(RED);

a = random(80);
b = random(25);
c = random(2);
gotoxy(a,b);
cout<<c;
}
clrscr();

for(i=0;i<10000;i++)
{
textcolor(GREEN);

a = random(80);
b = random(25);
c = random(2);
gotoxy(a,b);
cout<<c;
}
clrscr();

for(i=0;i<10000;i++)
{
textcolor(BLUE);

a = random(80);
b = random(25);
c = random(2);
gotoxy(a,b);
cout<<c;
}
clrscr();
for(i=0;i<10000;i++)
{
textcolor(GREEN);

a = random(80);
b = random(25);
c = random(2);
gotoxy(a,b);
cout<<c;
}
clrscr();
for(i=0;i<10000;i++)
{
textcolor(MAGENTA);

a = random(80);
b = random(25);
c = random(2);
gotoxy(a,b);
cout<<c;
}
clrscr();
for(i=0;i<10000;i++)
{
textcolor(YELLOW);

a = random(80);
b = random(25);
c = random(2);
gotoxy(a,b);
cout<<c;
}
clrscr();
for(i=0;i<10000;i++)
{
textcolor(BROWN);

a = random(80);
b = random(25);
c = random(2);
gotoxy(a,b);
cout<<c;
}
clrscr();
}
clrscr();
}

С тех пор утекло много воды, и версия матрицы было около 20 штук. В аттаче внизу они все приложены.

matrix - Консольная матрица на C++

Последняя выглидят примерно так. Кода значительно меньше, а аффекты круче ;)

#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
int i,n,a;

int main(int argc, char* argv[])
{
char q;

randomize();
int *x,*y,*l;
cout<<“Введи количество дорожек :”;
cin>>n;
clrscr();
x = new int [n];
y = new int [n];
l = new int [n];
textmode(C4350);
textattr(2<<0);
do
{
for(i=0;i<n;i++)
{
x[i] = random(80);
if((x[i]%2)==1) x[i]++;
y[i] = random(25);
l[i] = random(40);
if ((y[i]+l[i])>52) l[i] = random(30);
}
for(int s=0;s<25;s++)
{
for(int i=0;i<n;i++)
{
q = random(256);
if (q==7) continue;
gotoxy(x[i],y[i]);
cprintf(
%c,q);
gotoxy(x[i],y[i]+1);
cprintf(
\r);
Sleep(10);
y[i]++;
}
}
}while(1);
}

matrix.zip

matrix_6_b2.exe

5 комментариев
  1. Я пробовал в visual studio, он не может найти библиотеку
    В чём проблемма?

  2. Ответ напиши те сдесь пожалуйста

  3. Мой компилятор не может найти библиотеку

    З.Ы. Прошу прощения за флуд

  4. У меня единственное ругался на “Sleep(10);”, я его закомил и все заработало

  5. кавычки замените на нормальные

Добавить комментарий




*