• Уменьшение отступа

    Обратная связь

    (info@ru-sfera.pw)

Исходник эффекта матрицы - C (СИ)


BeAsi9000

Пользователь
Первый уровень
Регистрация
11.08.2017
Сообщения
5
Репутация
4
Код:
#include <stdio.h>     //
#include <stdlib.h>    // Подключаем
#include <time.h>      // нужные библиотеки
#include <windows.h>   //

void main(void) {
    SetConsoleTitle("");                              // Устанавливаем заголовок для текущего окна консоли
    HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE); // Получаем дескриптор устройства стандартного вывода
    SetConsoleTextAttribute(hStdOut, (WORD)(0 | 10)); // Устанавливаем цвет
    srand((unsigned)time(NULL));                      // Инициализируем rand
    for(;;) printf("%d\t", rand());                   // Выводим в бесконечном цикле функцию rand
    return;                                           // Возвращаем управление консоли
}


1png_9120905_27174919.png


Цвета:


0 = Чёрный 8 = Серый
1 = Синий 9 = Светло-синий
2 = Зелёный 10 = Светло-зелёный
3 = Голубой 11 = Светло-голубой
4 = Красный 12 = Светло-красный
5 = Лиловый 13 = Светло-лиловый
6 = Жёлтый 14 = Светло-жёлтый
7 = Белый 15 = Ярко-белый
 

Вложения

  • matrix.rar
    16.1 КБ · Просмотры: 56

BeAsi9000

Пользователь
Первый уровень
Регистрация
11.08.2017
Сообщения
5
Репутация
4
Вот ещё:

a968c938804f.jpg


Код:
#include <iostream>
#include <windows.h>
 
int Modulus(int iN, int iMod) {
int iQ = (iN/iMod);
return iN - (iQ*iMod);
}
 
char GetChar(int iGenerator, char cBase, int iRange) {
return (cBase + Modulus(iGenerator, iRange));
}
 
int main() {
// reng kodu
HANDLE  hConsole;
hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hConsole, 2);
 
char caRow[80];
int j = 7;
int k = 2;
int l = 5;
int m = 1;
while (true) {
int i = 0;
 
while (i < 80) {
if (caRow[i] != ' ') {
caRow[i] = GetChar(j + i*i, 33, 30);
if (((i*i + k) % 71) == 0) {
SetConsoleTextAttribute(hConsole,  7);
} else {
SetConsoleTextAttribute(hConsole,  2);
}
}
std::cout << caRow[i];
++i;
SetConsoleTextAttribute(hConsole,  2);
}
j = (j + 31);
k = (k + 17);
l = (l + 47);
m = (m + 67);
caRow[Modulus(j, 80)] = '-';
caRow[Modulus(k, 80)] = ' ';
caRow[Modulus(l, 80)] = '-';
caRow[Modulus(m, 80)] = ' ';
 
Sleep(10);
}
    return 0;
}
Автор: ResH
 

X-Shar

:)
Администрация
Регистрация
03.06.2012
Сообщения
6 068
Репутация
8 175
Раз-уж пошла такая пьянка, то сделаем кроссплатформенным:
Код:
#include <stdio.h>  
#include <stdlib.h>
#include <time.h>  

#define RESET   "\033[0m"
#define YELLOW  "\033[1;32m"


void main(void) {                          
    srand((unsigned)time(NULL));                  
    for(;;) printf("%s%d%s\t", YELLOW, rand(), RESET);                
    return;                                      
}

Цвета:

********* СВОЙСТВА **********
Название стиля | Код
------------------------|----
Сбросить все свойства | 0
Повышенная яркость | 1
Пониженная яркость | 2
Подчеркнутый | 4
Нормальная яркость | 5
Инвертированный | 7
Скрытый | 8
********** ЦВЕТА ***********
Название цвета |Текст |Фон
----------------|-------|---
Черный | 30 | 40
Красный | 31 | 41
Зеленый | 32 | 42
Желтый | 33 | 43
Синий | 34 | 44
Маджента | 35 | 45
Циановый | 36 | 46
Белый | 37 | 47
----------------------------



Компилить можно в любой оси, пример в линухе:

gcc matrix.c
./a.out запуск.

В винде можно откомпилить в любой студии, которая поддерживает си, ну и по тому-же принципу можно переделать второй исходник, мне просто лень. Можно сделать что-то оригинальное своё ! :)
 
Верх Низ