C++ programlama ile Matrix animasyonu nasıl yapılır ?

C++ dili hakkında bilgiler, kaynaklar, dokümanlar ve örneklerin bulunduğu bölümümüz.
Cevapla
Kullanıcı avatarı
admin
Sistem Geliştiricisi
Sistem Geliştiricisi
Mesajlar: 802
Kayıt: 28 Ağu 2022 04:38
Konum: Database
Meslek: Teknisyen
Teşekkür etti: 434 kez
Teşekkür edildi: 296 kez
İletişim:

Merhaba , evet başlıkta doğru gördünüz. Matrix filminde bilgisayar ekranlarında bolca gördüğümüz animasyon sahnesinin bir benzerini , C++ ile nasıl oluştururuz derseniz kodumuz aşağıda.

Resim

Kaynak kodu :

Kod: Tümünü seç

#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(){
//Color Code
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;
// Output a random row of characters
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)] = ' ';
// Delay
Sleep(10);
}
return 0;
}
Ekran çıktısı :

Resim

Tam ekran yapınca tadından yenmiyor :)
Daha zeki olmanın tek yolu, daha zeki bir rakiple oynamaktır.
Cevapla

“C++ Programlama” sayfasına dön