Hirdetés

Új hozzászólás Aktív témák

  • nickwearby

    tag

    válasz bbazsy #2213 üzenetére

    Igen, 8 éve, ez most egy kiegészítő lesz a felvételihez.Gyakorlatilag felvételi, csak fizethettem érte, mint a katonatiszt :DDD

    Igen, úgy terveztem, hogy vizsga után nekiülök a matek ismétlésnek.

    Ööö, hogyhogy a-b szakirány? A kar weboldalán úgy láttam, hogy 5 szakirány van, ebből 2 tanári. Ha nem tolakodás, hányadéves vagy?

    -----------------------------------------

    És akkor egy lényegi kérdés:

    -------

    Miért van az, hogy ha egy string változót beolvasok readln() paranccsal,
    és ha ugyanazt megpróbálom read() paranccsal,
    másképp viselkedik a program /TP7.0/?

    Konkrétan:

    program readln() -al:

    Beírom ezt:

    program akarmi
    var s:string;
    begin
    write('Írj be egy mondatot:');
    readln(s);
    writeln('Ezt írtad be:',s);
    readln;
    end.

    Ez szabályosan viselkedik: kiírja a kérést, aztán beolvassa és kiírja a beolvasott mondatot.
    És utána enter lenyomására lép ki.

    Program read() -el:

    program akarmi
    var s:string;
    begin
    write('Írj be egy mondatot:');
    read(s); <------ itt megváltoztattam
    writeln('Ezt írtad be:',s);
    readln;
    end.

    Ez viszont azt csinálja, hogy miután beolvasta a változót azaz nyomtam utána egy entert ,
    kilép.....

    Viszont ha beillesztem a crt unitot így:

    program akarmi
    uses crt;
    var s:string;
    begin
    write('Írj be egy mondatot:');
    read(s);
    writeln('Ezt írtad be:',s);
    readkey;
    end.

    Na ezen már nyitva marad az ablak (nyilván), és
    meg tudom nézni, hogy a prog ugyanazt csinálja, mint az első variáció :F

    ********
    Valaki meg tudná magyarázni, hogy miért ez a különbség
    a read() és a readln()
    között?
    Miért igényli a read() a crt unitot, hogy nyitva maradjon az ablak?

Új hozzászólás Aktív témák