02-08-2019, 10:45 PM (آخر تعديل لهذه المشاركة: 03-08-2019, 12:43 AM بواسطة ELARAPY.)
السلام عليكم ورحمة الله وبركاته
لدينا جملة مطبوعه والمؤشر ينتظر ادخال قيمة من المستخدم لوضعها في متغير ما , فكيف يمكن نقل المؤشر اعلى جملة تم طباعتها ؟
PHP كود :
var n: string ; begin writeln('Enter Your Name : ') ; write('=========================') ; readln(n) ; Writeln('Hello ',n) ; readln ; end.
عندما يكون البرنامج بانتظار ادخال قيمة n فكيف يمكن ان يظهر المؤشر في شاشة الكونسول اعلى السطر المطبوع '=========================' ؟
الشكل الذي اريده - : Enter Your Name
=============
مؤشر الكتابة او الكارسول الذي لونه احمر اريده في نفس طباعة السطر الاول ينتظر ادخال قيمة المتغير ويكون السطر الثاني ايضا قد طبع .
يمكن حل المشكلة بان يتم طباعة السطر الاول فقط وبعد اسناد قيمة للمتغير من المستخدم يتم طباعة السطر الثاني ===== ثم يتم تكلمة البرنامج ,, لكن اريد الشكل المرفق .
03-08-2019, 09:45 AM (آخر تعديل لهذه المشاركة: 03-08-2019, 09:50 AM بواسطة merouane.)
حسب ما تستعمل للبرمجة (FreePascel, TurboPascal أو دلفي)
للانتقال بين سطور وأعمدة شاشة terminal (الكونسول) تستعمل الوحدة CRT (تحتاج لإضافتها في دلفي، عكس lazarus ( freePascal ) فإنها موجودة)
عبر الإجراء GotoXY.
Lazarus (أو FreePAscal)
PHP كود :
program project1;
uses Crt;
var n: string; begin writeln('Enter Your Name : '); writeln('========================='); GotoXY(20, 1); readln(n); GotoXY(1, 3); Writeln('Hello ', n); readln; end.
أما دلفي استعمل الوحدة Crt32.pas تجدها في الأنترنت (أرفقت واحدة) - لاحظ أن الوحدة Crt32.pas في نفس مجلد المشروع.
PHP كود :
program Project1;
{$APPTYPE CONSOLE} {$R *.res}
uses System.SysUtils, Crt32 in 'Crt32.pas';
var n: string;
begin try writeln('Enter Your Name : '); writeln('========================='); GotoXY(20, 1); readln(n); GotoXY(1, 3); writeln('Hello ', n); readln; except on E: Exception do writeln(E.ClassName, ': ', E.Message); end; end.
جرب هذا
PHP كود :
writeln('Enter Your Name : '); textColor(blue); writeln('========================='); GotoXY(20, 1); textColor(Red); readln(n); GotoXY(1, 3); textColor(white); write('Hello '); textColor(LightCyan); write(n); readln;
كل من 1 user says قال شكرا ل merouane على المشاركة المفيدة1 user says Thank You to merouane for this post • ELARAPY
var n: string ; begin write('Enter Your Name : ') ; readln(n) ; writeln('=========================') ; Writeln('Hello ',n) ; readln ; end.
لا يا اخي الحبيب ليس هذا ما قصدته, انا اقصد ان يتم طباعة سطرين ويكون المؤشر بجوار السطر الاول وليس الثاني وهذا قبل اسناد قيمة للمتغير .
(03-08-2019, 09:45 AM)merouane كتب : حسب ما تستعمل للبرمجة (FreePascel, TurboPascal أو دلفي)
للانتقال بين سطور وأعمدة شاشة terminal (الكونسول) تستعمل الوحدة CRT (تحتاج لإضافتها في دلفي، عكس lazarus ( freePascal ) فإنها موجودة)
عبر الإجراء GotoXY.
Lazarus (أو FreePAscal)
PHP كود :
program project1;
uses Crt;
var n: string; begin writeln('Enter Your Name : '); writeln('========================='); GotoXY(20, 1); readln(n); GotoXY(1, 3); Writeln('Hello ', n); readln; end.
أما دلفي استعمل الوحدة Crt32.pas تجدها في الأنترنت (أرفقت واحدة) - لاحظ أن الوحدة Crt32.pas في نفس مجلد المشروع.
PHP كود :
program Project1;
{$APPTYPE CONSOLE} {$R *.res}
uses System.SysUtils, Crt32 in 'Crt32.pas';
var n: string;
begin try writeln('Enter Your Name : '); writeln('========================='); GotoXY(20, 1); readln(n); GotoXY(1, 3); writeln('Hello ', n); readln; except on E: Exception do writeln(E.ClassName, ': ', E.Message); end; end.
جرب هذا
PHP كود :
writeln('Enter Your Name : '); textColor(blue); writeln('========================='); GotoXY(20, 1); textColor(Red); readln(n); GotoXY(1, 3); textColor(white); write('Hello '); textColor(LightCyan); write(n); readln;
بارك الله فيك اخي , والله كنت متخيل ان اجد تعليمة GOTO ولكن لم اتمكن من طريقة استخدامها ,
ان شاء الله ساجرب واوافيك الرد .
لي سؤال لو سمحت هل هذه المعلومة قديمة عندك ام انك بحثت ووجدتها ثم قمت بالرد ؟
(03-08-2019, 08:08 PM)ELARAPY كتب : لي سؤال لو سمحت هل هذه المعلومة قديمة عندك ام انك بحثت ووجدتها ثم قمت بالرد ؟
أنا من جيل تعلم البرمجة بلغة باسكال عبر TurboPascal ، ثم كان الانتقال إلى دلفي.
كنا لكي ننتج برنامج نحتاج لرسمه وتلوينه، ثم العودة إلى أماكن الإدخال، ثم نمسح كل شيء. ثم نفس العلمية من جديد.
الوحدة Crt32.pas (للدلفي) هي فقط ما بحث عنه.
كل من 1 user says قال شكرا ل merouane على المشاركة المفيدة1 user says Thank You to merouane for this post • ELARAPY