نمایش نتایج 1 تا 4 از 4

نام تاپیک: گرفتن ورودی از کاربر در یک برنامه کنسول

  1. #1
    کاربر دائمی آواتار ehsan_faal
    تاریخ عضویت
    خرداد 1392
    محل زندگی
    تهران
    پست
    325

    گرفتن ورودی از کاربر در یک برنامه کنسول

    سلام.
    من یه برنامه نوشتم که ssh کنه به روتر میکروتیک و آپتایم رو بخونه، حالا میخوام که تحت هر شرایطی که ssh موفقیت‌آمیز نبود از یوزر بپرسه که یه ورودی بده و دوباره اونکارو انجام بده.
    راهی سر راست از goto به ذهنم نرسید.
    و اینکه گرفت ورودی از کاربر هم معضلی شده برای من.
    این کدمه.
    ممنون میشم تجربه‌هاتون رو به اشتراک بذارین با بنده.
    Program Project1;

    {$APPTYPE CONSOLE}

    {$R *.res}

    Uses
    System.SysUtils,
    System.StrUtils;

    Var
    userInput: Char;
    str: String;

    Label
    again, getOut;

    Begin
    again:
    userInput := '0';
    Write('Please Choose:'#10#13'c|C Continue'#10#13'a|A Abort'#10#13's|S Shut The Alert Down'#10#13'You''r Choise: ');
    Read(userInput);
    Case UpCase(userInput) Of
    'C':
    Begin
    Writeln('You chosed:', userInput);
    Goto getOut;
    End;

    'A':
    Begin

    Writeln('You chosed:', userInput);
    Goto getOut;
    End;
    'S':
    Begin
    Writeln('You chosed:', userInput);
    Goto getOut;
    End
    Else
    Begin
    Writeln('Wrong Option: "', userInput, '"');
    Goto again;
    End;
    End;
    getOut:
    Writeln('outside');
    readln;
    Readln;
    End.


  2. #2

    نقل قول: گرفتن ورودی از کاربر در یک برنامه کنسول


    Begin
    repeat
    userInput := '0';
    Write('Please Choose:'#10#13'c|C Continue'#10#13'a|A Abort'#10#13's|S Shut The Alert Down'#10#13'You''r Choise: ');
    Read(userInput);
    Case UpCase(userInput) Of
    'C':
    Writeln('You chosed:', userInput);

    'A':
    Writeln('You chosed:', userInput);


    'S':
    Writeln('You chosed:', userInput);


    Else
    Writeln('Wrong Option: "', userInput, '"');
    End;
    until UpCase(userInput) in ['C', 'A', 'S'];




    Writeln('outside');
    readln;
    Readln;
    End.
    توابع تبدیل تاریخ با دقت 5000 سال
    پذیرش پروژه، کامپوننت، آموزش برنامه نویسی (دلفی، اس کیو ال، ..) -> 09123780840

    دوستای گلم حمایت کنید : https://cafebazaar.ir/app/com.nikanmehr.marmarxword/


    نرم افزار پخش مویرگی

  3. #3
    کاربر دائمی آواتار ehsan_faal
    تاریخ عضویت
    خرداد 1392
    محل زندگی
    تهران
    پست
    325

    نقل قول: گرفتن ورودی از کاربر در یک برنامه کنسول

    ممنون از پاسختون اما مشکل همچنان پابرجاست.
    خیلی دنبال راه حل گشتم اما نمیدونم چرا به مرحله دوم حلقه که میرسیم read قاطی میکنه.
    خروجی کنسول:

    Please Choose:
    c|C Continue
    a|A Abort
    s|S Shut The Alert Down
    You'r Choise: w
    Wrong Option: "w"
    Please Choose:
    c|C Continue
    a|A Abort
    s|S Shut The Alert Down
    "ou'r Choise: Wrong Option: "
    Please Choose:
    c|C Continue
    a|A Abort
    s|S Shut The Alert Down
    You'r Choise: Wrong Option: "
    "
    Please Choose:
    c|C Continue
    a|A Abort
    s|S Shut The Alert Down
    You'r Choise:

  4. #4
    کاربر دائمی آواتار Pascal
    تاریخ عضویت
    فروردین 1384
    محل زندگی
    گرگان
    پست
    322

    نقل قول: گرفتن ورودی از کاربر در یک برنامه کنسول

    program Project1;

    {$APPTYPE CONSOLE}

    {$R *.res}

    uses
    Windows,
    Messages,
    SysUtils;

    var
    userInput: Char;
    str,Str1: String;
    hStdOut: HWnd;
    ScreenBufInfo: TConsoleScreenBufferInfo;
    Coord1: TCoord;
    i: Integer;


    Procedure CLS;
    begin
    GetConsoleScreenBufferInfo(hStdOut, ScreenBufInfo);
    {the GetConsoleScreenBufferInfo API gets the size of
    the buffer I need}
    for i := 1 to ScreenBufInfo.dwSize.Y do
    WriteLn('');
    Coord1.X := 0;
    Coord1.Y := 0;
    SetConsoleCursorPosition(hStdOut, Coord1);
    {SetConsoleCursorPosition API sets your cursor
    to the Coord1, at 0, 0 the beginging}
    Readln(str1);
    end;



    procedure test;
    begin
    writeln('Please Choose:'#10#13'c|C Continue'#10#13'a|A Abort'#10#13's|S Shut The Alert Down'#10#13'You''r Choise: ');
    userInput := '0';

    read(userInput);


    Case UpCase(userInput) Of
    'C':
    Writeln('You chosed:', userInput);

    'A':
    Writeln('You chosed:', userInput);


    'S':
    Writeln('You chosed:', userInput);


    Else
    Writeln('Wrong Option: "', userInput, '"');
    End;

    end;

    begin

    while userInput<>'A' do
    begin
    cls;
    test;
    end;



    end.

تاپیک های مشابه

  1. پاسخ: 3
    آخرین پست: چهارشنبه 09 بهمن 1392, 18:38 عصر
  2. گفتگو: گرفتن ورودی از کاربر در messagebox
    نوشته شده توسط amirebm در بخش C#‎‎
    پاسخ: 6
    آخرین پست: سه شنبه 17 اسفند 1389, 14:02 عصر
  3. پاسخ: 6
    آخرین پست: پنج شنبه 29 مهر 1389, 00:24 صبح
  4. دریافت ورودی از کاربر توسط یک تابع api
    نوشته شده توسط zoncpp در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 6
    آخرین پست: یک شنبه 20 خرداد 1386, 12:52 عصر
  5. دریافت ورودی از کاربر توسط یک تابع api
    نوشته شده توسط zoncpp در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 0
    آخرین پست: پنج شنبه 17 خرداد 1386, 09:05 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •