База ответов ИНТУИТ

Основы информатики и программирования

<<- Назад к вопросам

Данная программа:
import java.io.*;public class ABCDSeq {    public static void main(String[] args) {            DataInputStream in = new DataInputStream(System.in);        int f = 0, n = 0;        try {            while (true) {                char x = (char)in.readByte();                if (x=='\n') continue;                if (x=='d' && n==3) {                    f += 1;                     n  = 0;                } else if (x=='c' && n==2) {                    n = 3;                } else if (x=='b' && n==1) {                    n = 2;                } else if (x=='a') {                    n = 1;                } else{                    n = 0;                }            }        } catch(Exception e) {            Xterm.println("f = " + f);        }    }}
определяет:

(Отметьте один правильный вариант ответа.)

Варианты ответа
количество вхождений образца abcd в последовательность символов(Верный ответ)
количество вхождений образца abc в последовательность символов
количество вхождений образца bcd в последовательность символов
количество вхождений образца abd в последовательность символов
Похожие вопросы
В данной программе:
import java.io.*;public class ABCDSeq {    public static void main(String[] args) {            DataInputStream in = new DataInputStream(System.in);        int f = 0, n = 0;        try {            while (true) {                char x = (char)in.readByte();                if (x=='\n') continue;                if (x=='d' && n==3) {                    f += 1;                     n  = 0;                } else if (x=='c' && n==2) {                    n = 3;                } else if (x=='b' && n==1) {                    n = 2;                } else if (x=='a') {                    n = 1;                } else{                    n = 0;                }            }        } catch(Exception e) {            Xterm.println("f = " + f);        }    }}
используется метод:
Как в данной программе:
import java.io.*;public class ABCDSeq {    public static void main(String[] args) {            DataInputStream in = new DataInputStream(System.in);        int f = 0, n = 0;        try {            while (true) {                char x = (char)in.readByte();                if (x=='\n') continue;                if (x=='d' && n==3) {                    f += 1;                     n  = 0;                } else if (x=='c' && n==2) {                    n = 3;                } else if (x=='b' && n==1) {                    n = 2;                } else if (x=='a') {                    n = 1;                } else{                    n = 0;                }            }        } catch(Exception e) {            Xterm.println("f = " + f);        }    }}
игнорируется символ '\n':
В данной программе:
import java.io.*;public class ABCDSeq {    public static void main(String[] args) {            DataInputStream in = new DataInputStream(System.in);        int f = 0, n = 0;        try {            while (true) {                char x = (char)in.readByte();                if (x=='\n') continue;                if (x=='d' && n==3) {                    f += 1;                     n  = 0;                } else if (x=='c' && n==2) {                    n = 3;                } else if (x=='b' && n==1) {                    n = 2;                } else if (x=='a') {                    n = 1;                } else{                    n = 0;                }            }        } catch(Exception e) {            Xterm.println("f = " + f);        }    }}
символ '\n' оказывается введенным после того, как пользователь нажимает клавишу:
Данная программа:
public class First1{    public static void main(String[] args) throws Exception {        int x0 = Xterm.inputInt("x0 ->");        int y1 = 0, y2 = 0;        try {            while (true) {                int x = Xterm.inputInt("x -> ");                y2 += 1;                if ( (y1 == 0) && (x == x0) )                    y1 = y2;            }        } catch (Exception e) {            Xterm.println("\nn = " + y1);        }	        }}
по достижению конца вводимой последовательности:
Данная программа:
public class NumMaxSeq2 {    public static void main(String[] args) {            int y1 = 0, y2 = Integer.MIN_VALUE;        try {            while (true) {                int x = Xterm.inputInt("x -> ");                if (x == y2) {                    y1 += 1;                } else if(x > y2) {                    y1 = 1;                    y2 = x;                }             }        } catch (Exception e) {            Xterm.println("\nn = " + y1);        }	        }}
вводит последовательность целых чисел, и печатает:
Данная программа:
public class AverSeq{    public static void main(String[] args) {            double y1 = 0., y2 = 0.;        try {            while (true) {                double x = Xterm.inputDouble("x -> ");                y1  = (y1*y2 + x) / (y2 + 1.);                y2 += 1;            }        } catch(Exception e) {            Xterm.println("\nf = " + y1);        }	        }}
вводит последовательность вещественных чисел, и печатает:
Данная программа:
public class AverSeq{    public static void main(String[] args) {            double y1 = 0., y2 = 0.;        try {            while (true) {                double x = Xterm.inputDouble("x -> ");                y1  = (y1*y2 + x) / (y2 + 1.);                y2 += 1;            }        } catch(Exception e) {            Xterm.println("\nf = " + y1);        }	        }}
вводит последовательность вещественных чисел, и печатает среднее арифметическое ее элементов для:
Данная программа:
public class First1{    public static void main(String[] args) throws Exception {        int x0 = Xterm.inputInt("x0 ->");        int y1 = 0, y2 = 0;        try {            while (true) {                int x = Xterm.inputInt("x -> ");                y2 += 1;                if ( (y1 == 0) && (x == x0) )                    y1 = y2;            }        } catch (Exception e) {            Xterm.println("\nn = " + y1);        }	        }}
определяющую номер f первого элемента, равного Xo, в последовательности:
Данная программа:
public class Assert {    public static void main(String[] args) throws Exception {            int n = Xterm.inputInt("Введите n -> ");        if (n <= 0)             throw new Exception("n <= 0");        Xterm.println("n = " + n);    }}
содержит:
По достижению конца вводимой последовательности данной программой:
public class First1{    public static void main(String[] args) throws Exception {        int x0 = Xterm.inputInt("x0 ->");        int y1 = 0, y2 = 0;        try {            while (true) {                int x = Xterm.inputInt("x -> ");                y2 += 1;                if ( (y1 == 0) && (x == x0) )                    y1 = y2;            }        } catch (Exception e) {            Xterm.println("\nn = " + y1);        }	        }}
управление передается на: