середу, 6 травня 2009 р.

Программа из х/ф "Матрица"

Давно что-то я не писал в блоге разных наборов буржуйских букв, называемых исходными кодами программ. А программирую я последнее время довольно много, как для универа, так и для души. Чаще всего на С и JavaScript, но иногда и на PHP, C++, а недавно вообще разбирался в готовом коде программы на Java... Да и не зря же я поставил подсветку синтаксиса? Надо бы ею воспользоваться.

Если кто следит за твиттером, заметили этот пост, где я написал, что сделал прогу с символами, которые сыпятся, как в фильме "Матрица". Это было в перерыве между написанием отдельных функций для ОДЗ по теории алгоритмов. Как и большинство других моих программ, вышло скорей вредоносное приложение, чем полезное. И вредоносность Матрицы скорее не в том, что она очень глючная, а в том, что оторваться не возможно. :) Лично я запускаю временами и оставляю ее как заставку на экране. В принципе, желаемый эффект производит - я представляю себя офигенным хакером из Альфа-Центавра. Но стоит заметить, что сам фильм я ни разу так и не смотрел, поэтому любые сходства считать случайностью :)

В общем, вот код на Си под Borland С++.

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <dos.h>
void main()
{
clrscr();
randomize();
_setcursortype(1);
int x,y,x1,y1,x2,y2;
int i,j;
x1=1;y1=1;x2=24;y2=79;
window(x1,y1,x2,y2);
textbackground(0); textcolor(15); gotoxy(30,12);
cprintf("Enter secret code: "); cscanf("%s");
getch();
textcolor(0);
for(i=55;i>=30;i--)
{gotoxy(i,12);delay(20);cprintf("0");}
do
{
(random(2)==0)?textcolor(2):(random(2)==1)?textcolor(10):textcolor(7);
x=random(y2);
for(i=0;i<random(x2-1)+(x2/2);i++)
for(j=0;j<random(5);j++)
{
gotoxy(x+1,i+1);
putch(random(500));
gotoxy(x+1,i+1);
delay(100);
}
}
while (!kbhit());
getch();
clrscr();
textcolor(2); gotoxy(20,12);
cprintf("Congratulations! This computer was hacked.");
getch();
}



Скриншот программы MATRIX
Скриншот программы MATRIX



Вначале просит "секретный код" - ввести любой набор символов. Я предпочитаю вводить 4-5 звездочек ;) Нажимаем Enter. Видим случайные символы, наслаждаемся. В любой момент нажимаем any key и получаем сообщение, что компьютер типа взломан :)

Не забываем на окне ввода секретного кода нажимать Alt+Enter, чтоб развернуть программу на весь экран!

Скачать скомпилированное приложение: Приложение, как в фильме “Матрица”

Немає коментарів: