СДАМ ГИА: РЕШУ ЕГЭ
Образовательный портал для подготовки к экзаменам
Информатика
≡ информатика
сайты - меню - вход - новости


Каталог заданий.
Координатная плоскость. Окружность

Пройти тестирование по этим заданиям
Вернуться к каталогу заданий
Версия для печати и копирования в MS Word
1
Задание 24 № 2801

Тре­бо­ва­лось на­пи­сать про­грам­му, ко­то­рая вво­дит с кла­ви­а­ту­ры ко­ор­ди­на­ты точки на плос­ко­сти (, — дей­стви­тель­ные числа) и опре­де­ля­ет при­над­леж­ность точки за­штри­хо­ван­ной об­ла­сти, вклю­чая её гра­ни­цы. Про­грам­мист то­ро­пил­ся и на­пи­сал про­грам­му не­пра­виль­но.

 

Пас­кальБей­сик
var x,y: real;

begin

readln(x,y);

if x*x+y*y>=4 then

if x>= –2 then

if y<= –x then

write('при­над­ле­жит')

else

write('не при­над­ле­жит')

end.

INPUT x, y

IF x*x+y*y>=4 THEN

IF x>= –2 THEN

IF y<= –x THEN

PRINT "при­над­ле­жит"

ELSE

PRINT "не при­над­ле­жит"

ENDIF

ENDIF

ENDIF

END

Си++Ал­го­рит­ми­че­ский
int main()

{

float x,y;

cin >> x >> y;

if (x*x+y*y>=4)

if (x>= –2)

if (y<= –x)

cout << "при­над­ле­жит";

else

cout << "не при­над­ле­жит";

}

алг

нач

вещ x,y

ввод x,y

если x*x+y*y>=4 то

    если x>= –2 то

        если y<= –x то

            вывод 'при­над­ле­жит'

        иначе

            вывод 'не при­над­ле­жит'

        все

    все

все

кон

Python

x = float(input())

y = float(input())

if x*x+y*y >= 4:

    if x >= −2:

        if у <= -x:

            print("при­над­ле­жит")

        else:

            print("не при­над­ле­жит")

 

 

По­сле­до­ва­тель­но вы­пол­ни­те сле­ду­ю­щее.

1. Пе­ре­ри­суй­те и за­пол­ни­те таб­ли­цу, ко­то­рая по­ка­зы­ва­ет, как ра­бо­та­ет про­грам­ма при ар­гу­мен­тах, при­над­ле­жа­щих раз­лич­ным об­ла­стям (A, B, C, D, E, F, G и H).

Точки, ле­жа­щие на гра­ни­цах об­ла­стей, от­дель­но не рас­смат­ри­вать. В столб­цах усло­вий ука­жи­те "да", если усло­вие вы­пол­нит­ся, "нет", если усло­вие не вы­пол­нит­ся, "—" (про­черк), если усло­вие не будет про­ве­рять­ся, "не изв.", если про­грам­ма ведет себя по-раз­но­му для раз­ных зна­че­ний, при­над­ле­жа­щих дан­ной об­ла­сти. В столб­це "Про­грам­ма вы­ве­дет" ука­жи­те, что про­грам­ма вы­ве­дет на экран. Если про­грам­ма ни­че­го не вы­во­дит, на­пи­ши­те "—" (про­черк). Если для раз­ных зна­че­ний, при­над­ле­жа­щих об­ла­сти, будут вы­ве­де­ны раз­ные тек­сты, на­пи­ши­те "не изв". В по­след­нем столб­це ука­жи­те "да" или "нет".

 

2. Ука­жи­те, как нужно до­ра­бо­тать про­грам­му, чтобы не было слу­ча­ев ее не­пра­виль­ной ра­бо­ты. (Это можно сде­лать не­сколь­ки­ми спо­со­ба­ми, до­ста­точ­но ука­зать любой спо­соб до­ра­бот­ки ис­ход­ной про­грам­мы.)

 

Об­ластьУсло­вие 1

(x*x+y*y>=4)

Усло­вие 2

(x>= –2)

Усло­вие 3

(y<= –x)

Про­грам­ма вы­ве­детОб­ласть об­ра­ба­ты­ва­ет­ся верно
A
В
С
D
Е
F
G
Н

2
Задание 24 № 3597

Тре­бо­ва­лось на­пи­сать про­грам­му, ко­то­рая вво­дит с кла­ви­а­ту­ры ко­ор­ди­на­ты точки на плос­ко­сти (х, у — дей­стви­тель­ные числа) и опре­де­ля­ет при­над­леж­ность точки за­штри­хо­ван­ной об­ла­сти. Про­грам­мист то­ро­пил­ся и на­пи­сал про­грам­му не­пра­виль­но.

 

Пас­кальБей­сик

var х,у: real;

begin

readln(x,y);

if x*x+y*y >= 4 then

if у >= −2 then

if у <= x then

write('при­над­ле­жит')

else

write('не при­над­ле­жит')

end.

INPUT x, у

IF x*x+y*y >= 4 THEN

IF у >= −2 THEN

IF у <= x THEN

PRINT "при­над­ле­жит"

ELSE

PRINT "не при­над­ле­жит"

ENDIF

ENDIF

ENDIF

END

Си++Ал­го­рит­ми­че­ский язык
int main(void)

{ float x, у;

cin >> x >> y ;

if (x*x+y*y >= 4)

if (у >= −2)

if (у <= x)

cout << "при­над­ле­жит";

else

cout << "не при­над­ле­жит";

}

алг

нач

вещ х, у

ввод х, у

если x*x+y*y >= 4 то

если у >= −2 то

если у <= x то

вывод 1 при­над­ле­жит'

иначе

вывод 1 не при­над­ле­жит'

все

все

все

кон

Python

x = float(input())

y = float(input())

if x*x+y*y >= 4:

    if у >= −2:

        if у <= x:

            print("при­над­ле­жит")

        else:

            print("не при­над­ле­жит")

 

 По­сле­до­ва­тель­но вы­пол­ни­те сле­ду­ю­щее:

1. Пе­ре­ри­суй­те и за­пол­ни­те таб­ли­цу, ко­то­рая по­ка­зы­ва­ет, как ра­бо­та­ет про­грам­ма при ар­гу­мен­тах, при­над­ле­жа­щих раз­лич­ным об­ла­стям (A, B, C, D, E, F, G и H).

Точки, ле­жа­щие на гра­ни­цах об­ла­стей, от­дель­но не рас­смат­ри­вать. В столб­цах усло­вий ука­жи­те "да", если усло­вие вы­пол­нит­ся, "нет", если усло­вие не вы­пол­нит­ся, "—" (про­черк), если усло­вие не будет про­ве­рять­ся, "не изв.", если про­грам­ма ведет себя по-раз­но­му для раз­ных зна­че­ний, при­над­ле­жа­щих дан­ной об­ла­сти. В столб­це "Про­грам­ма вы­ве­дет" ука­жи­те, что про­грам­ма вы­ве­дет на экран. Если про­грам­ма ни­че­го не вы­во­дит, на­пи­ши­те "—" (про­черк). Если для раз­ных зна­че­ний, при­над­ле­жа­щих об­ла­сти, будут вы­ве­де­ны раз­ные тек­сты, на­пи­ши­те "не изв". В по­след­нем столб­це ука­жи­те "да" или "нет".

 

2. Ука­жи­те, как нужно до­ра­бо­тать про­грам­му, чтобы не было слу­ча­ев ее не­пра­виль­ной ра­бо­ты. (Это можно сде­лать не­сколь­ки­ми спо­со­ба­ми, до­ста­точ­но ука­зать любой спо­соб до­ра­бот­ки ис­ход­ной про­грам­мы.)

 

Об­ластьУсло­вие 1

(x*x+y*y >= 4)

Усло­вие 2

(у >= −2)

Усло­вие 3

(у <= x)

Про­грам­ма вы­ве­детОб­ласть об­ра­ба­ты­ва­ет­ся верно
A
В
С
D
Е
F
G
Н

3
Задание 24 № 3629

Требовалось написать программу, при выполнении которой с клавиатуры считываются координаты точки на плоскости (x, y – действительные числа) и определяется принадлежность этой точки заданной закрашенной области (включая границы). Программист торопился и написал программу неправильно.

 

ПаскальБейсик
var x,y: real; begin

readln(x,y);

if y<=x+2 then

if x<=0 then

if x*x+y*y<=25 then

write('принадлежит')

else

write('не принадлежит')

end.

INPUT x, y

IF y<=x+2 THEN

IF x<=0 THEN

IF x*x+y*y<=25 THEN

PRINT "принадлежит"

ELSE

PRINT "не принадлежит"

ENDIF

ENDIF

ENDIF

END

Си++Алгоритмический язык
#include <iostream>

using namespace std;

int main(){

float x,y;

cin >> x >> y;

if (y<=x+2)

if (x<=0)

if (x*x+y*y<=25)

cout << "принадлежит";

else

cout << "не принадлежит";

}

алг

нач

вещ x,y

ввод x,y

если y<=x+2 то

если x<=0 то

если x*x+y*y<=25 то

вывод 'принадлежит'

иначе

вывод 'не принадлежит'

все

все

все

кон

Python

x = float(input())

y = float(input())

if y<=x+2:

    if x<=0:

        if x*x+y*y<=25:

            print("принадлежит")

        else:

            print("не принадлежит")

 

Последовательно выполните следующее.

1. Перерисуйте и заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D, E, F, G и H).

Точки, лежащие на границах областей, отдельно не рассматривать. В столбцах условий укажите "да", если условие выполнится, "нет", если условие не выполнится, "—" (прочерк), если условие не будет проверяться, "не изв.", если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "—" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите "не изв". В последнем столбце укажите "да" или "нет".

 

2. Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.)

 

ОбластьУсловие 1 (y<=2+x)Условие 2 (x<=0)Условие 3 (x*x+y*y<=25)Программа выведетОбласть обрабатывается

верно

A
В
С
D
Е
F
G
Н
K
Решение · ·

4
Задание 24 № 3787

Тре­бо­ва­лось на­пи­сать про­грам­му, при вы­пол­не­нии ко­то­рой с кла­ви­а­ту­ры счи­ты­ва­ют­ся ко­ор­ди­на­ты точки на плос­ко­сти (х, у — дей­стви­тель­ные числа) и опре­де­ля­ет­ся при­над­леж­ность этой точки за­дан­ной за­кра­шен­ной об­ла­сти (вклю­чая гра­ни­цы). Про­грам­мист то­ро­пил­ся и на­пи­сал про­грам­му не­пра­виль­но.

 

Бей­сикПас­каль

INPUT х, у

IF x*x + у*у <= 49 THEN

IF x*x + у*у >= 16 THEN

PRINT "при­над­ле­жит"

ELSE

PRINT "не при­над­ле­жит"

ENDIF

END IF

END

var x, у: real;

begin

readln(x,y);

if x*x + y*y <= 49 then

if x*x + y*y >= 16 then

write('при­над­ле­жит')

else

write('не при­над­ле­жит')

end.

Си++Ал­го­рит­ми­че­ский

#include <iostream>

using namespace std;

int main (void) {

float x,y;

cin >> x >> y;

if (x*x + y*y <= 49)

if (x*x + y*y >= 16)

cout << "при­над­ле­жит";

else

cout << "не при­над­ле­жит";

}

алг

нач

вещ х,у

ввод х,у

если х*х + у*у <= 49 то

если х*х + у* у >= 16 то

вывод 'при­над­ле­жит'

иначе

вывод 'не при­над­ле­жит'

все

все

кон

Python

x = float(input())

y = float(input())

if x*x + у*у <= 49:

    if x*x + у*у >= 16:

        print("при­над­ле­жит")

    else:

        print("не при­над­ле­жит")

 

 

По­сле­до­ва­тель­но вы­пол­ни­те сле­ду­ю­щее.

1. Пе­ре­ри­суй­те и за­пол­ни­те таб­ли­цу, ко­то­рая по­ка­зы­ва­ет, как ра­бо­та­ет про­грам­ма при ар­гу­мен­тах, при­над­ле­жа­щих раз­лич­ным об­ла­стям (A, B, C, D). Точки, ле­жа­щие на гра­ни­цах об­ла­стей, от­дель­но не рас­смат­ри­вать. В столб­цах усло­вий ука­жи­те "да", если усло­вие вы­пол­нит­ся, "нет", если усло­вие не вы­пол­нит­ся, "—" (про­черк), если усло­вие не будет про­ве­рять­ся, "не изв.", если про­грам­ма ведет себя по-раз­но­му для раз­ных зна­че­ний, при­над­ле­жа­щих дан­ной об­ла­сти. В столб­це "Про­грам­ма вы­ве­дет" ука­жи­те, что про­грам­ма вы­ве­дет на экран. Если про­грам­ма ни­че­го не вы­во­дит, на­пи­ши­те "—" (про­черк). Если для раз­ных зна­че­ний, при­над­ле­жа­щих об­ла­сти, будут вы­ве­де­ны раз­ные тек­сты, на­пи­ши­те "не изв". В по­след­нем столб­це ука­жи­те "да" или "нет".

2. Ука­жи­те, как нужно до­ра­бо­тать про­грам­му, чтобы не было слу­ча­ев ее не­пра­виль­ной ра­бо­ты. (Это можно сде­лать не­сколь­ки­ми спо­со­ба­ми, до­ста­точ­но ука­зать любой спо­соб до­ра­бот­ки ис­ход­ной про­грам­мы.)

 

Об­ластьУсло­вие 1

(х*х+у*у <= 49)

Усло­вие 2

(х*х+у*у >= 16)

Про­грам­ма вы­ве­детОб­ласть

об­ра­ба­ты­ва­ет­ся верно

A
В
С
D

5
Задание 24 № 3788

Тре­бо­ва­лось на­пи­сать про­грам­му, при вы­пол­не­нии ко­то­рой с кла­ви­а­ту­ры счи­ты­ва­ют­ся ко­ор­ди­на­ты точки на плос­ко­сти (х, у - дей­стви­тель­ные числа) и опре­де­ля­ет­ся при­над­леж­ность этой точки за­дан­ной за­кра­шен­ной об­ла­сти (вклю­чая гра­ни­цы). Про­грам­мист то­ро­пил­ся и на­пи­сал про­грам­му не­пра­виль­но.

 

Бей­сикПас­каль

INPUT х, у

IF х*х + у*у >=1 THEN

IF x*x + у*у >= 49 THEN

PRINT "при­над­ле­жит"

ELSE

PRINT "не при­над­ле­жит"

ENDIF

END IF

END

var x, у: real;

begin

readln(x,y);

if x*x + y*y >= 1 then

if x*x + y*y >= 49 then

write('при­над­ле­жит')

else

write('не при­над­ле­жит')

end.

Си++Ал­го­рит­ми­че­ский язык

#include <iostream>

using namespace std;

int main (void) {

float x,y;

cin >> x >> y;

if (x*x + y*y >= 1 )

if (x*x + y*y >= 49)

cout << "при­над­ле­жит";

else

cout << "не при­над­ле­жит";

}

алг

нач

вещ х,у

ввод х,у

если х*х + у*у >= 1 то

если х*х + у* у >= 49 то

вывод 'при­над­ле­жит'

иначе

вывод 'не при­над­ле­жит'

все

все

кон

Python

x = float(input())

y = float(input())

if x*x + y*y >= 1 :

    if x*x + y*y >= 49:

        print("при­над­ле­жит")

    else:

        print("не при­над­ле­жит")

 

 

По­сле­до­ва­тель­но вы­пол­ни­те сле­ду­ю­щее.

1. Пе­ре­ри­суй­те и за­пол­ни­те таб­ли­цу, ко­то­рая по­ка­зы­ва­ет, как ра­бо­та­ет про­грам­ма при ар­гу­мен­тах, при­над­ле­жа­щих раз­лич­ным об­ла­стям (A, B, C, D).

Точки, ле­жа­щие на гра­ни­цах об­ла­стей, от­дель­но не рас­смат­ри­вать. В столб­цах усло­вий ука­жи­те "да", если усло­вие вы­пол­нит­ся, "нет", если усло­вие не вы­пол­нит­ся, "—" (про­черк), если усло­вие не будет про­ве­рять­ся, "не изв.", если про­грам­ма ведет себя по-раз­но­му для раз­ных зна­че­ний, при­над­ле­жа­щих дан­ной об­ла­сти. В столб­це "Про­грам­ма вы­ве­дет" ука­жи­те, что про­грам­ма вы­ве­дет на экран. Если про­грам­ма ни­че­го не вы­во­дит, на­пи­ши­те "—" (про­черк). Если для раз­ных зна­че­ний, при­над­ле­жа­щих об­ла­сти, будут вы­ве­де­ны раз­ные тек­сты, на­пи­ши­те "не изв". В по­след­нем столб­це ука­жи­те "да" или "нет".

2. Ука­жи­те, как нужно до­ра­бо­тать про­грам­му, чтобы не было слу­ча­ев ее не­пра­виль­ной ра­бо­ты. (Это можно сде­лать не­сколь­ки­ми спо­со­ба­ми, до­ста­точ­но ука­зать любой спо­соб до­ра­бот­ки ис­ход­ной про­грам­мы.)

 

Об­ластьУсло­вие 1

(х*х+у*у >= 1)

Усло­вие 2

(х*х+у*у >= 49)

Про­грам­ма вы­ве­детОб­ласть

об­ра­ба­ты­ва­ет­ся верно

A
В
С
D

6
Задание 24 № 4533

Тре­бо­ва­лось на­пи­сать про­грам­му, при вы­пол­не­нии ко­то­рой с кла­ви­а­ту­ры счи­ты­ва­ют­ся ко­ор­ди­на­ты точки на плос­ко­сти (x,y – дей­стви­тель­ные числа) и опре­де­ля­ет­ся при­над­леж­ность точки за­кра­шен­ной об­ла­сти, вклю­чая ее гра­ни­цы. Про­грам­мист то­ро­пил­ся и на­пи­сал про­грам­му не­пра­виль­но.

 

Пас­кальБей­сик
var x,y: real;

begin

readln(x,y);

if y>=x-2 then

if x<=0 then

if x*x+y*y<=25 then

write('при­над­ле­жит')

else

write('не при­над­ле­жит')

end.

INPUT x, y

IF y>=x-2 THEN

IF x<=0 THEN

IF x*x+y*y<=25 THEN

PRINT "при­над­ле­жит"

ELSE

PRINT "не при­над­ле­жит"

END IF

END IF

END IF

END

Си++Ал­го­рит­ми­че­ский
#include <iostream>

using namespace std;

int main() {

float x,y;

cin >> x >> y;

if (y>=x-2)

if (x<=0)

if (x*x+y*y<=25)

cout << "при­над­ле­жит";

else

cout << "не при­над­ле­жит";

алг

нач

вещ x,y

ввод x,y

если y>=x-2 то

    если x<=0 то

        если x*x+y*y<=25 то

            вывод 'при­над­ле­жит'

        иначе

            вывод 'не при­над­ле­жит'

        все

    все

все

кон

Python

x = float(input())

y = float(input())

if y>=x-2:

    if x<=0:

        if x*x+y*y<=25:

            print("при­над­ле­жит")

        else:

            print("не при­над­ле­жит")

 

По­сле­до­ва­тель­но вы­пол­ни­те сле­ду­ю­щее.

1. Пе­ре­ри­суй­те и за­пол­ни­те таб­ли­цу, ко­то­рая по­ка­зы­ва­ет, как ра­бо­та­ет про­грам­ма при ар­гу­мен­тах, при­над­ле­жа­щих раз­лич­ным об­ла­стям (A, B, C, D, E, F, G и H).

Точки, ле­жа­щие на гра­ни­цах об­ла­стей, от­дель­но не рас­смат­ри­вать. В столб­цах усло­вий ука­жи­те "да", если усло­вие вы­пол­нит­ся, "нет", если усло­вие не вы­пол­нит­ся, "—" (про­черк), если усло­вие не будет про­ве­рять­ся, "не изв.", если про­грам­ма ведет себя по-раз­но­му для раз­ных зна­че­ний, при­над­ле­жа­щих дан­ной об­ла­сти. В столб­це "Про­грам­ма вы­ве­дет" ука­жи­те, что про­грам­ма вы­ве­дет на экран. Если про­грам­ма ни­че­го не вы­во­дит, на­пи­ши­те "—" (про­черк). Если для раз­ных зна­че­ний, при­над­ле­жа­щих об­ла­сти, будут вы­ве­де­ны раз­ные тек­сты, на­пи­ши­те "не изв". В по­след­нем столб­це ука­жи­те "да" или "нет".

2. Ука­жи­те, как нужно до­ра­бо­тать про­грам­му, чтобы не было слу­ча­ев ее не­пра­виль­ной ра­бо­ты. (Это можно сде­лать не­сколь­ки­ми спо­со­ба­ми, до­ста­точ­но ука­зать любой спо­соб до­ра­бот­ки ис­ход­ной про­грам­мы.)

 

Об­ластьУсло­вие1

(y>=x–2)

Усло­вие 2 (x<=0)Усло­вие 3 (x*x+y*y<=25)Про­грам­ма вы­ве­детОб­ласть об­ра­ба­ты­ва­ет­ся

верно

A
В
С
D
Е
F
G
Н
K

7
Задание 24 № 6276

Требовалось написать программу, которая вводит с клавиатуры координаты точки на плоскости (x, y — действительные числа) и определяет принадлежность точки заштрихованной области (включая границы). Программист торопился и написал программу неправильно. Ниже для Вашего удобства программа представлена на четырёх языках программирования.

БейсикПаскаль

INPUT x, y

IF y<=1 THEN

IF y>=x THEN

IF x>=-1 THEN

IF x*x+y*y<=1 THEN

PRINT "принадлежит"

ELSE

PRINT "не принадлежит"

END IF

END IF

END IF

END IF

END

var x,y: real;

begin

readln(x,y);

if y<=1 then

if y>=x then

if x>=-1 then

if x*x+y*y<=1 then

write('принадлежит')

else

write('не принадлежит');

end.

Си++Алгоритмический

#include <iostream>

using namespace std;

int main()

{

float x,y;

cin >> x >> y;

if (y<=1)

if (y>=x)

if (x>=-1)

if (x*x+y*y<=1)

cout << "принадлежит";

else

cout << "не принадлежит";

}

алг

нач

вещ x,y

ввод x,y

если y<=1 то

если y>=x то

если x>=-1 то

если x*x+y*y<=1 то

вывод 'принадлежит'

иначе

вывод 'не принадлежит'

все

все

все

все

кон

Python

x = float(input())

y = float(input())

if y<=1:

    if y>=x:

        if x>=-1:

            if x*x+y*y<=1:

                print("принадлежит")

            else:

                print("не принадлежит")

 

 

Последовательно выполните следующее.

 

1. Перерисуйте и заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D, E, F, G, H, I, J, K). Точки, лежащие на границах областей, отдельно не рассматривать. Координатные оси не являются границами областей. В столбцах условий укажите «да», если условие выполнится, «нет», если условие не выполнится, «—» (прочерк), если условие не будет проверяться, «не изв.», если программа ведёт себя по-разному для разных значений, принадлежащих данной области. В столбце «Программа выведет» укажите, что программа выведет на экран. Если программа ничего не выводит, напишите «—» (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите «не изв.». В последнем столбце укажите «да» или «нет».

 

ОбластьУсловие1 (y<=1)Условие 2 (y>=x)Условие 3

(x>=−1)

Условие 4 (x*x+y*y<=1)Программа

выведет

Область

обрабатывается

верно

A
В
С
D
Е
F
G
Н
I
J
K

 

2. Укажите, как нужно доработать программу, чтобы не было случаев её неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.)

Источник: ЕГЭ по информатике 08.07.2013. Вторая волна. Ва­ри­ант 501.

8
Задание 24 № 6348

Требовалось написать программу, которая вводит с клавиатуры координаты точки на плоскости (x, y — действительные числа) и определяет принадлежность точки заштрихованной области (включая границы). Программист торопился и написал программу неправильно. Ниже для Вашего удобства программа представлена на четырёх языках программирования.

 

БейсикПаскаль

INPUT x, y

IF x>=-1 THEN

IF y>=-1 THEN

IF y<=1 THEN

IF x*x+y*y<=1 THEN

PRINT "принадлежит"

ELSE

PRINT "не принадлежит"

END IF

END IF

END IF

END IF

END

var x,y: real;

begin

readln(x,y);

if x>=-1 then

if y>=-1 then

if y<=1 then

if x*x+y*y<=1 then

write('принадлежит')

else

write('не принадлежит');

end

Си++Алгоритмический

#include <iostream>

using namespace std;

int main()

{

float x,y;

cin >> x >> y;

if (x>=-1)

if (y>=-1)

if (y<=1)

if (x*x+y*y<=1)

cout << "принадлежит";

else

cout << "не принадлежит";

}

алг

нач

вещ x,y

ввод x,y

если x>=-1 то

если y>=-1 то

если y<=1 то

если x*x+y*y<=1 то

вывод 'принадлежит'

иначе

вывод 'не принадлежит'

все

все

все

все

кон

Python

x = float(input())

y = float(input())

if x>=-1:

    if y>=-1:

        if y<=1:

            if x*x+y*y<=1:

                print("принадлежит")

            else:

                print("не принадлежит")

 

 

Последовательно выполните следующее.

 

1. Перерисуйте и заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D, E, F, G, H, I). Точки, лежащие на границах областей, отдельно не рассматривать. Координатные оси не являются границами областей. В столбцах условий укажите «да», если условие выполнится, «нет», если условие не выполнится, «—» (прочерк), если условие не будет проверяться, «не изв.», если программа ведёт себя по-разному для разных значений, принадлежащих данной области. В столбце «Программа выведет» укажите, что программа выведет на экран. Если программа ничего не выводит, напишите «—» (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите «не изв.». В последнем столбце укажите «да» или «нет».

 

ОбластьУсловие1 (x>=–1)Условие 2 (y>=–1)Условие 3

(y<=1)

Условие 4 (x*x+y*y<=1)Программа

выведет

Область

обрабатывается верно

A
В
С
D
Е
F
G
Н
I

 

2. Укажите, как нужно доработать программу, чтобы не было случаев её неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.)

Источник: ЕГЭ по информатике 08.07.2013. Вторая волна. Ва­ри­ант 601.

9
Задание 24 № 6433

Требовалось написать программу, которая вводит с клавиатуры координаты точки на плоскости (x, y — действительные числа) и определяет принадлежность точки заштрихованной области (включая границы). Программист торопился и написал программу неправильно. Ниже для Вашего удобства программа представлена на четырёх языках программирования.

 

БейсикПаскаль

INPUT x, y

IF y>=-1 THEN

IF y<=x THEN

IF y<=0 THEN

IF x*x+y*y<=1 THEN

PRINT "принадлежит"

ELSE

PRINT "не принадлежит"

END IF

END IF

END IF

END IF

END

var x,y: real;

begin

readln(x,y);

if y>=-1 then

if y<=x then

if y<=0 then

if x*x+y*y<=1 then

write('принадлежит')

else

write('не принадлежит');

end.

Си++Алгоритмический

#include <iostream>

using namespace std;

int main()

{

float x,y;

cin >> x >> y;

if (y>=-1)

if (y<=x)

if (y<=0)

if (x*x+y*y<=1)

cout << "принадлежит";

else

cout << "не принадлежит";

}

алг

нач

вещ x,y

ввод x,y

если y>=-1 то

если y<=x то

если y<=0 то

если x*x+y*y<=1 то

вывод 'принадлежит'

иначе

вывод 'не принадлежит'

все

все

все

все

кон

Python

x = float(input())

y = float(input())

if y>=-1:

    if y<=x:

        if y<=0:

            if x*x+y*y<=1:

                print("принадлежит")

            else:

                print("не принадлежит")

 

 

Последовательно выполните следующее.

 

1. Перерисуйте и заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D, E, F, G, H, I, J, K). Точки, лежащие на границах областей, отдельно не рассматривать. Координатные оси не являются границами областей. В столбцах условий укажите «да», если условие выполнится, «нет», если условие не выполнится, «—» (прочерк), если условие не будет проверяться, «не изв.», если программа ведёт себя по-разному для разных значений, принадлежащих данной области. В столбце «Программа выведет» укажите, что программа выведет на экран. Если программа ничего не выводит, напишите «—» (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите «не изв.». В последнем столбце укажите «да» или «нет».

 

 

ОбластьУсловие1

(y>=–1)

Условие 2

(y<=x)

Условие 3

(y<=0)

Условие 4

(x*x+y*y<=1)

Программа

выведет

Область

обрабатывается

верно

A
В
С
D
Е
F
G
Н
I
J
K

 

2. Укажите, как нужно доработать программу, чтобы не было случаев её неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.)

Источник: ЕГЭ по информатике 08.07.2013. Вторая волна. Ва­ри­ант 602.

10
Задание 24 № 6469

Требовалось написать программу, которая вводит с клавиатуры координаты точки на плоскости (x, y — действительные числа) и определяет принадлежность точки заштрихованной области (включая границы). Программист торопился и написал программу неправильно. Ниже для Вашего удобства программа представлена на четырёх языках программирования.

БейсикПаскаль

INPUT x, y

IF y<=1-x THEN

 IF y>=0 THEN

  IF x>=0 THEN

   IF x*x+y*y<=1 THEN

    PRINT "принадлежит"

   ELSE

    PRINT "не принадлежит"

   END IF

  END IF

 END IF

END IF

END

var x,y: real;

begin

readln(x,y);

if y<=1-x then

if y>=0 then

if x>=0 then

if x*x+y*y<=1 then

write('принадлежит')

else

write('не принадлежит');

end.

Си++Алгоритмический язык

#include <iostream>

using namespace std;

int main()

{

float x,y;

cin >> x >> y;

if (y<=1-x)

if (y>=0)

if (x>=0)

if (x*x+y*y<=1)

cout << "принадлежит";

else

cout << "не принадлежит";

}

алг

нач

вещ x,y

ввод x,y

если y<=1-x то

если y>=0 то

если x>=0 то

если x*x+y*y<=1 то

вывод 'принадлежит'

иначе

вывод 'не принадлежит'

все

все

все

все

кон

Python

x = float(input())

y = float(input())

if y<=1-x:

    if y>=0:

        if x>=0:

            if x*x+y*y<=1:

                print("принадлежит")

            else:

                print("не принадлежит")

 

 

Последовательно выполните следующее.

 

1. Перерисуйте и заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D, E, F, G, H, I, J, K). Точки, лежащие на границах областей, отдельно не рассматривать. Координатные оси не являются границами областей. В столбцах условий укажите «да», если условие выполнится, «нет», если условие не выполнится, «—» (прочерк), если условие не будет проверяться, «не изв.», если программа ведёт себя по-разному для разных значений, принадлежащих данной области. В столбце «Программа выведет» укажите, что программа выведет на экран. Если программа ничего не выводит, напишите «—» (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите «не изв.». В последнем столбце укажите «да» или «нет».

 

ОбластьУсловие1 (y<=1–x)Условие 2 (y>=0)Условие 3

(x>=0)

Условие 4 (x*x+y*y<=1)Программа

выведет

Область

обрабатывается

верно

A
В
С
D
Е
F
G
Н
I
J
K

 

2. Укажите, как нужно доработать программу, чтобы не было случаев её неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.)

Источник: ЕГЭ по информатике 08.07.2013. Вторая волна. Ва­ри­ант 603.

11
Задание 24 № 6511

Тре­бо­ва­лось на­пи­сать про­грам­му, ко­то­рая вво­дит с кла­ви­а­ту­ры ко­ор­ди­на­ты точки на плос­ко­сти (x, y — дей­стви­тель­ные числа) и опре­де­ля­ет при­над­леж­ность точки за­штри­хо­ван­ной об­ла­сти (вклю­чая гра­ни­цы).

 

Про­грам­мист то­ро­пил­ся и на­пи­сал про­грам­му не­пра­виль­но. Ниже для ва­ше­го удоб­ства про­грам­ма пред­став­ле­на на четырёх язы­ках про­грам­ми­ро­ва­ния.

 

Бей­сикПас­каль

INPUT x, y

IF y>=-1 THEN

IF y<=1 THEN

IF (x+1)*(x+1)+y*y<=1 THEN

IF (x-1)*(x-1)+y*y<=1 THEN

PRINT "

при­над­ле­жит"

ELSE

PRINT "

не при­над­ле­жит"

END IF

END IF

END IF

END IF

END

var x,y: real;

begin

readln(x,y);

if y>=-1 then

if y<=1 then

if (x+1)*(x+1)+y*y<=1 then

if (x-1)*(x-1)+y*y<=1 then

write('при­над­ле­жит')

else

write('не при­над­ле­жит');

end.

Си++Ал­го­рит­ми­че­ский

#include <iostream>

using namespace std;

int main()

{

float x,y;

cin >> x >> y;

if (y>=-1)

if (y<=1)

if ((x+1)*(x+1)+y*y<=1)

if ((x-1)*(x-1)+y*y<=1)

cout << "при­над­ле­жит";

else

cout << "не при­над­ле­жит";

}

алг

нач

вещ x,y

ввод x,y

если y>=-1 то

если y<=1 то

если (x+1)*(x+1)+y*y<=1 то

если (x-1)*(x-1)+y*y<=1 то

вывод 'при­над­ле­жит'

иначе

вывод 'не при­над­ле­жит'

все

все

все

все

кон

Python

x = float(input())

y = float(input())

if y>=-1:

    if y<=1:

        if (x+1)*(x+1)+y*y<=1:

            if (x-1)*(x-1)+y*y<=1:

                print("при­над­ле­жит")

            else:

                print("не при­над­ле­жит")

 

 

По­сле­до­ва­тель­но вы­пол­ни­те сле­ду­ю­щее.

 

1. Пе­ре­ри­суй­те и за­пол­ни­те таб­ли­цу, ко­то­рая по­ка­зы­ва­ет, как ра­бо­та­ет про­грам­ма при ар­гу­мен­тах, при­над­ле­жа­щих раз­лич­ным об­ла­стям (A, B, C, D, E, F, G). Точки, ле­жа­щие на гра­ни­цах об­ла­стей, от­дель­но не рас­смат­ри­вать. Ко­ор­ди­нат­ные оси не яв­ля­ют­ся гра­ни­ца­ми об­ла­стей. В столб­цах усло­вий ука­жи­те «да», если усло­вие вы­пол­нит­ся, «нет», если усло­вие не вы­пол­нит­ся, «—» (про­черк), если усло­вие не будет про­ве­рять­ся, «не изв.», если про­грам­ма ведёт себя по-раз­но­му для раз­ных зна­че­ний, при­над­ле­жа­щих дан­ной об­ла­сти. В столб­це «Про­грам­ма вы­ве­дет» ука­жи­те, что про­грам­ма вы­ве­дет на экран. Если про­грам­ма ни­че­го не вы­во­дит, на­пи­ши­те «—» (про­черк). Если для раз­ных зна­че­ний, при­над­ле­жа­щих об­ла­сти, будут вы­ве­де­ны раз­ные тек­сты, на­пи­ши­те «не изв.». В по­след­нем столб­це ука­жи­те «да» или «нет».

 

Об­ластьУсло­вие1 (y>=–1)Усло­вие 2 (y<=1)Усло­вие 3

((x+1)2+y2<=1)

Усло­вие 4

((x–1)2+y2<=1)

Про­грам­ма вы­ве­детОб­ласть об­ра­ба­ты­ва­ет­ся

верно

A
В
С
D
Е
F
G

 

2. Ука­жи­те, как нужно до­ра­бо­тать про­грам­му, чтобы не было слу­ча­ев её не­пра­виль­ной ра­бо­ты. (Это можно сде­лать не­сколь­ки­ми спо­со­ба­ми, до­ста­точ­но ука­зать любой спо­соб до­ра­бот­ки ис­ход­ной про­грам­мы.)

Источник: ЕГЭ по информатике 08.07.2013. Вторая волна. Ва­ри­ант 801.

Пройти тестирование по этим заданиям