الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

برنامج يطبع نفسه !

بدأه زائر في 11 نوفمبر 2009 · 5 رد · 1,345 مشاهدة · في هندسة البرمجيات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

قاعد افكر بطريقه تجعلني قادر على طباعة السورس كود ..

يعني برنامج المخرجات حقته هي السورس كود للبرنامج نفسه !

اية افكار ؟ :wub:

#2

لا أعتقد أن هناك أي مشكلة في الموضوع. السورس بالنسبة للبرنامج هو ملف نصي مثله مثل أي ملف نصي آخر.

#3

Quine

اقتباس
In computing, a quine is a computer program which produces a copy of its own source code as its only output.

وقد تحدثنا عنه من قبل في صفحات المنتدى

http://www.google.com/cse?cx=0037809632380...mp;sa=%C8%CD%CB

انظر هذه الصفحة:

http://www.nyx.net/~gthompso/quine.htm

تم تعديل هذه المشاركة بواسطة Xacker في 11 نوفمبر 2009 في 11:20

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#4

اوه معذرة Xacker

مابحثت في المنتدى .. متأسف جداً

حقيقة قريت عن Quine ..

لكن غرضي الاساسي هو اثبات ان CFG Context Free Grammer ل Turing Machine M

انها تقبل السترنق<<M,<m> بمعنى انها تقبل السترنق نفسها

ساعاود القرائه .. شكراً

تم تعديل هذه المشاركة بواسطة Eisa Ayed في 11 نوفمبر 2009 في 12:35

#5

ما الغرض من هذا الشيء؟

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#6
Eisa Ayed كتب:

السلام عليكم

قاعد افكر بطريقه تجعلني قادر على طباعة السورس كود ..

يعني برنامج المخرجات حقته هي السورس كود للبرنامج نفسه !

اية افكار ؟ :wub:

جرب هذا الكود وشوف علي ما اعتقد قد يخدمك

 using System;
    class P {
        static void Main() {
            string[] S = {
                // the program core, represented as a string array 
            };
            // 1. Print the program header
            Console.WriteLine("using System;");
            Console.WriteLine("class P {");
            Console.WriteLine("    static void Main() {");

            // 2. Print S, formatted as the definition of S
            Console.WriteLine("        string[] S = {");
            foreach (string line in S)
            {
                string escapedLine = line.Replace(@"\", @"\\").Replace("\"", "\\\"");
                Console.WriteLine("\"{0}\",", escapedLine);
            }
            Console.WriteLine("        };");

            // 3. Print S, formatted as source code
            foreach (string line in S) Console.WriteLine(line);

            // 4. Print the program footer
            Console.WriteLine("    }");
            Console.WriteLine("}");
        }
    }

مواضيع مشابهة