Енгізу/Шығару операторлары

Programming Solutions /
Жалғасы.Алдыңғы сабақ
Шығару операторымен өткен сабақтарда танысқанбыз. Оның қызметі біз көрсеткен нәрсені нәтижеге шығару.
System.out.println(«Hello world!») және System.out.print(«Hello world!»)
Екеуінің айырмашылығы мынада: println — мәліметті нәтижеге шығарғаннан кейін курсорды жаңа жолға көшіреді, сонда келесі мәлімет жаңа жолдан шығады. Ал, print қанша мәлімет берсең де бір жолға шығарады.
Енгізу операторы
Пернетақтадан енгізген мәліметімізді кодта қолдана алу үшін енгізу операторлары қолданылады. Төменде Scanner класын қолдану арқылы енгізуді тамашалайық.
Мысал. а бүтін санын енгізіп, мәнін нәтижеге шығарамыз:
package esep1;
import java.util.Scanner;
public class Esep1 {
    public static void main(String[] args)  {
        Scanner sc=new Scanner(System.in); 
        int a=sc.nextInt();//а айнымалысын меншіктеу
        System.out.print(a);
    }
}

Мұндағы,
import java.util.Scanner; — Scanner класы орналасқан пакетті проектке қосу. Машинамен араңызда өзара түсініспеушілік болмас үшін осылай жасай салғаныңыз абзал.
Scanner sc=new Scanner(System.in); — Scanner класының обьектісін құрып жатырмыз. Класс — ол жай кесектің қалыбы секілді, одан дайын өнім жасамайынша пайдасы шамалы. Мәшиненің қағаздағы схемасымен Астананы аралап келмейсіз ғой? Сол секілді, класс бізге тек обьекттің құрылымын, барлық мүмкіндіктерін көрсетеді. Обьектісін құру арқылы ғана мүмкіндіктеріне қол жеткізе аламыз. Scanner класының обьектісі sc-ны құрдық.
nextIn() — sc обьектісінің тәсілі. Ол пернетақтадан бүтін сан енгізгеніңізді күтіп тұрады. Енгізіп болып, enter-ді басқан соң, енгізгеніңіз сан болмаса, машина қателік шығарады.
Алдыңғы сабақтағы мысалдардағы айнымалылардың мәнін пернетақтадан есептеп қараймыз.
Мысал. Екі санның қосындысын табу
package esep1;
import java.util.Scanner;
public class Esep1 {
    public static void main(String[] args)  {
        Scanner sc=new Scanner(System.in); 
        int a=sc.nextInt();//а айнымалысын меншіктеу
        int b = sc.nextInt();//b айнымалысын меншіктеу
        int sum = a+b;
        System.out.println("sum"+sum);
    }
}

Мысал. Үшбұрыштың қабырғалары берілген. Периметр p — ?
Коды:
package esep1;
import java.util.Scanner;
public class Esep1 {
    public static void main(String[] args)  {
        Scanner sc = new Scanner(System.in);
        System.out.println("Үшбұрыштың қабырғаларын енгізіңіз:");
        System.out.print("a=");
        int a = sc.nextInt();
        System.out.print("b=");
        int b = sc.nextInt();
        System.out.print("c=");
        int c = sc.nextInt();
        int p = a+b+c;
        System.out.println("Үшбұрыштың периметрі p="+p);
    }
}

Мысал. Тіктөртбұрыштың ұзындығы мен ені берілген. Ауданы-?
package esep1;
import java.util.Scanner;
public class Esep1 {
    public static void main(String[] args)  {
        Scanner sc = new Scanner(System.in);
        System.out.print("Ені: ");
        float a = sc.nextFloat();
        System.out.print("Ұзындығы: ");
        float b = sc.nextFloat();
        float s = a*b;
        System.out.println("Ауданы: s="+s);
    }
}

23 пікір

User
блә брат дым түсінбей жатырм да.Аттак Профессиональный пост.+1 ді аталмайды екенмін.Рейтингім төмен екен.Плюстап жіберіңдерш
ereke_enu
Дым түсінбей жатсаң, профессиональный болмағаны да))
User
жоға, түсінбегенім өз қатем.Ал сенің постың намбауан
qwenchi
Түсінбегендер үндемей кете берсеңдерш, «Түсінбей жатырм» деп айта беру мәре ма
zhurttyn_balasy
автор мысалдарыңның бәрі қате шығарып тұр, нетбесттің қате жөндеу функциясы былай жеп жөндегеннен кейін барып программа жүрді.
package esep;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Esep {
    public static void main(String[] args) throws IOException {
        String str;
        BufferedReader in;//
                in = new BufferedReader(new InputStreamReader(System.in));
                str//<editor-fold defaultstate="collapsed" desc="comment">
                        =
                        //</editor-fold>sd
        in.readLine();
        System.out.println("text="+str);
    }
}
ereke_enu
аха, рахмет. Дұрыс байқадың.
Кодыңа қажетсіз жолдар қосылып кеткен екен, төмендегідей ықшамдай салдым.
package esep;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class Esep {
     public static void main(String[] args) throws IOException {
        BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
        String str=in.readLine();
        System.out.println("text="+str);
    }
}
zhurttyn_balasy

аздаап түсініңкіремей бастадым, бірақ жалпы көз алдыма елестете аламын. Тым Class-ный екен. .readLine() мынаның орнына .nextInt() мынаны қолдана берсем де бола ма? кешке жақсылап қайталаймын тағы да. рахмет
ereke_enu
readLine() тәсілі BuferredReader, nextInt() Scanner класында қолданылады ғой. Сондықтан, қателік шығып қалуы мүмкін. Негізі нақты біреуімен үйреніп алған дұрыс секілді. Келесі мысалдарда тек BuferredReader-мен көрсететін болармын
zhurttyn_balasy
Scanner жазылуы қысқа емес па ярый мазохист © Scanner қолданайық давай (:
ereke_enu
www.java2s.com — мынадай керемет сайт бар екен
zhurttyn_balasy
автор қай кезде қай кітапқананы, қай қосымшаны қосып отыру керек екенін анықтап жаза қтесің ба өтініш?
ereke_enu
Scanner-ді қолдану үшін: import java.util.Scanner; Ал, Buferred-ті кейін көре жатармыз, сабақтан мүлдем алып тастадым. Scanner расында жеңілірек екен.
qwenchi
Өзің дұрыс түсінбесең не үшін жазып отырсың?
ereke_enu
жауапты мына беттен табарсың
qwenchi
түсіндім, ренжіме. Жалғастыра бер, оқимыз
ereke_enu
жоқ, өкпем қара қазандай, теріс қарап, домаланып жатырм)))
qwenchi
Ертеректе осы сайтта php, css деген блогтар бар ед, қайда қазір?
ereke_enu
Ол жағын білмедім, Админдар блогтарды реттеп шыққан секілді
qwenchi
Питоннан сабақ жазам дебед біреу, қайда сабақ?
AshTrollToqTrollmenOinamaide
Ереке, менде txt файлда мынадай үлгіде логиндер мен парольдар бар:

Login1 password1
Login2 password2
Login3 password3

Осы файлдан логин мен парольдарды қалай оқысам болады? Бір программаға авторизация жасау керек боп тұр.
AshTrollToqTrollmenOinamaide
Ух шықты:)
korwinin_kyzy
қойш болды қумай теп тегіс жерді журваллп
Тек тіркелген қолданушылар ғана пікір қалдыра алады.