Şimdi Ara

C# Console Matrix Kayan Yazılar (kaynak kod)

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
12
Cevap
0
Favori
9.327
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
1 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Kodu buradan indirebilirsiniz

    ekran görünümü:
     C# Console Matrix Kayan Yazılar (kaynak kod)


    indirmek istemeyenler için kaynak kodu :
     
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace Matrix
    {
    class Program
    {
    static void Main(string[] args)
    {
    Console.Title = "Matrix";
    Console.ForegroundColor = ConsoleColor.DarkGreen;
    Console.WindowLeft = Console.WindowTop = 0;
    Console.WindowHeight = Console.BufferHeight = Console.LargestWindowHeight;
    Console.WindowWidth = Console.BufferWidth = Console.LargestWindowWidth;
    Console.CursorVisible = false;
    int width, height;
    int[] y;
    int[] l;
    Initialize(out width, out height, out y, out l);
    int ms;
    while (true)
    {
    DateTime t1 = DateTime.Now;
    MatrixStep(width, height, y, l);
    ms = 10 - (int)((TimeSpan)(DateTime.Now - t1)).TotalMilliseconds;
    if (ms > 0)
    System.Threading.Thread.Sleep(ms);
    if (Console.KeyAvailable)
    if (Console.ReadKey().Key == ConsoleKey.F5)
    Initialize(out width, out height, out y, out l);
    }
    }

    static bool thistime = false;

    private static void MatrixStep(int width, int height, int[] y, int[] l)
    {
    int x;
    thistime = !thistime;
    for (x = 0; x < width; ++x)
    {
    if (x % 11 == 10)
    {
    if (!thistime)
    continue;
    Console.ForegroundColor = ConsoleColor.White;
    }
    else
    {
    Console.ForegroundColor = ConsoleColor.DarkGreen;
    Console.SetCursorPosition(x, inBoxY(y[x] - 2 - (l[x] / 40 * 2), height));
    Console.Write(R);
    Console.ForegroundColor = ConsoleColor.Green;
    }
    Console.SetCursorPosition(x, y[x]);
    Console.Write(R);
    y[x] = inBoxY(y[x] + 1, height);
    Console.SetCursorPosition(x, inBoxY(y[x] - l[x], height));
    Console.Write(' ');
    }
    }

    private static void Initialize(out int width, out int height, out int[] y, out int[] l)
    {
    int h1;
    int h2 = (h1 = (height = Console.WindowHeight) / 2) / 2;
    width = Console.WindowWidth - 1;
    y = new int[width];
    l = new int[width];
    int x;
    Console.Clear();
    for (x = 0; x < width; ++x)
    {
    y[x] = r.Next(height);
    l[x] = r.Next(h2 * ((x % 11 != 10) ? 2 : 1), h1 * ((x % 11 != 10) ? 2 : 1));
    }
    }

    static Random r = new Random();
    static char R
    {
    get
    {
    int t = r.Next(10);
    if (t <= 2)
    return (char)('0' + r.Next(10));
    else if (t <= 4)
    return (char)('a' + r.Next(27));
    else if (t <= 6)
    return (char)('A' + r.Next(27));
    else
    return (char)(r.Next(32, 255));
    }
    }

    public static int inBoxY(int n, int height)
    {
    n = n % height;
    if (n < 0)
    return n + height;
    else
    return n;
    }
    }
    }


    düzeltme: kodu ben yazmadım, internette gördüm, paylaşmak istedim



    < Bu mesaj bu kişi tarafından değiştirildi keftar -- 17 Ağustos 2012; 15:33:33 >







  • Yapay Zekanın Yanıtı

    C# Console Matrix Kayan Yazılar

    Konsol uygulamalarında, metinleri ekranda sola veya sağa kaydırarak görsel efektler yaratmak isteyebilirsin. C# dilinde Console sınıfı, bu işlemi kolaylaştıran Write() ve WriteLine() metotlarını sunar.

    Console.Write() metodu, sağa kayan metinler oluşturmak için kullanılır. Metni kaydırmak için Console.CursorLeft özelliğini metnin uzunluğu kadar sola ayarlaman gerekir. Örneğin:

    ```csharp using System; using System.Threading;

    public class Matrix { public static void Main() { string metin = "Kayan Metin"; int uzunluk = metin.Length;

        while (true)
        {
            Console.CursorLeft = 0;
            for (int i = 0; i < uzunluk; i++)
            {
                Console.Write(" ");
            }
    
            Console.CursorLeft = Console.WindowWidth - uzunluk;
            Console.Write(metin);
            Thread.Sleep(100);
        }
    }
    

    } ```

    Sağa Kayan Metinler

    Yukarıdaki kod, "Kayan Metin" ifadesini sağa doğru kaydıracaktır. Metnin uzunluğu kadar boşluk yazdırılarak metin sola kaydırılır ve ardından metnin tamamı konsolun sağ ucuna yazdırılır. İşlem, belirli bir gecikmeyle sürekli tekrarlanır.

    Console.WriteLine() metodu, sola kayan metinler oluşturmak için kullanılır. Metni kaydırmak için Console.CursorLeft özelliğini metnin uzunluğu kadar sağa ayarlaman gerekir. Örneğin:

    ```csharp using System; using System.Threading;

    public class Matrix { public static void Main() { string metin = "Kayan Metin"; int uzunluk = metin.Length;

        while (true)
        {
            Console.CursorLeft = Console.WindowWidth - uzunluk;
            for (int i = 0; i < uzunluk; i++)
            {
                Console.Write(" ");
            }
    
            Console.CursorLeft = 0;
            Console.WriteLine(metin);
            Thread.Sleep(100);
        }
    }
    

    } ```

    Sola Kayan Metinler

    Yukarıdaki kod, "Kayan Metin" ifadesini sola doğru kaydıracaktır. Metnin uzunluğu kadar boşluk yazdırılarak metin sağa kaydırılır ve ardından metnin tamamı konsolun sol ucuna yazdırılır. İşlem, belirli bir gecikmeyle sürekli tekrarlanır.

    Yapay Zekanın Yanıtını Genişlet
  • güzelmiş teşekkürler
  • arkadaşlar merhaba.Bu verilen kodda bir değişiklik yaparak sadece istediğim harflerin ya da bir kelimenin kod halinde ekranda akmasını istiyorum.Bu değişikliği nasıl yapabilirim.Yardımcı olursanız sevinirim.teşekkürler.
  • bak sen şu işe :D

    programı denedim ve dedim ki tamda benim laptop ekranına göre ayarlamışlar çzünürlüğü(1366x768)

    ve programın kodlarına bir baktım ne göreyim... :D
     
    Console.WindowHeight = Console.BufferHeight = Console.LargestWindowHeight;
    Console.WindowWidth = Console.BufferWidth = Console.LargestWindowWidth;

    zaten bunu yazan adam çözünürlüğü otomatik yapmış yani ekranı otomatik kaplıyor.



    < Bu mesaj bu kişi tarafından değiştirildi Fatih_abi_81 -- 29 Kasım 2013; 16:13:22 >
  • iyimiş
  • sa. dışardan girilen bir mesajın içimndeki a b ve c karakterlerini x y z ile değiştiren bir fonksiyon yazın ve fonksiyonun çağrısını yapın bu sorunun cevabını alabilirmiyim?
  • ctn nrgz C kullanıcısına yanıt
    http://forum.donanimhaber.com/m_63801883/tm.htm
  • Eheh çok güzel bu, teşekkürler bizle paylaştığın için :)
  • quote:

    Orijinalden alıntı: EKaya03

    Eheh çok güzel bu, teşekkürler bizle paylaştığın için :)

  • Merhaba kardeşim rica etsem nasıl kodu ekleyerek ekranda yazıları kaydırabilirim yardımcı olurmusun acemi anlatımı yaparmısın lütfen :)

  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.