Требовалось написать программу которая вводит с клавиатуры координаты точки на плоскости х у sin
Требовалось написать программу, которая принимает на вход координаты точки на плоскости (х, у — действительные числа) и определяет принадлежность точки заштрихованной области. Программист торопился и написал программу неправильно.
if у = 1 − x then
IF у = 1 − x THEN
PRINT "не принадлежит"
если у = 1 − х то
вывод 'не принадлежит'
Последовательно выполните следующее:
1. Перерисуйте и заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D, E, F, G и H).
Точки, лежащие на границах областей, отдельно не рассматривать. В столбцах условий укажите "да", если условие выполнится, "нет", если условие не выполнится, "—" (прочерк), если условие не будет проверяться, "не изв.", если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "—" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите "не изв". В последнем столбце укажите "да" или "нет".
2. Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.)
2. Возможная доработка (Паскаль):
if (у = 1 - х) and (у >= 0) and (х
(могут быть и другие способы доработки).
Требовалось написать программу, которая вводит с клавиатуры координаты точки на плоскости (х, у — действительные числа) и определяет принадлежность точки заштрихованной области. Программист торопился и написал программу неправильно.
if у = х - 1 then
IF у = x - 1 THEN
PRINT "не принадлежит"
если у = х - 1 то
выв од ' принадлежит'
вывод ' не принадлежит'
Последовательно выполните следующее:
1. Перерисуйте и заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D, E, F, G и H).
Точки, лежащие на границах областей, отдельно не рассматривать. В столбцах условий укажите "да", если условие выполнится, "нет", если условие не выполнится, "—" (прочерк), если условие не будет проверяться, "не изв.", если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "—" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите "не изв". В последнем столбце укажите "да" или "нет".
2. Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.)
2) Возможная доработка (Паскаль):
if (у = х − 1) and (у >= 0) and (х >= 0) then
(могут быть и другие способы доработки).
Требовалось написать программу, которая вводит с клавиатуры координаты точки на плоскости (х, у — действительные числа) и определяет принадлежность точки заштрихованной области, включая ее границы. Программист торопился и написал программу неправильно.
IF x int main(void)
Последовательно выполните следующее.
1. Перерисуйте и заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D, E и F).
Точки, лежащие на границах областей, отдельно не рассматривать. В столбцах условий укажите "да", если условие выполнится, "нет", если условие не выполнится, "—" (прочерк), если условие не будет проверяться, "не изв.", если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "—" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите "не изв". В последнем столбце укажите "да" или "нет".
2. Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.)
(х if (у >= 0) and (х = 0)
Возможны и другие способы решения.
Требовалось написать программу, которая вводит с клавиатуры координаты точки на плоскости (x, у — действительные числа) и определяет принадлежность точки заштрихованной области, включая ее границы. Программист торопился и написал программу неправильно.
Последовательно выполните следующее.
1. Перерисуйте и заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D, E, F, G и H).
Точки, лежащие на границах областей, отдельно не рассматривать. В столбцах условий укажите "да", если условие выполнится, "нет", если условие не выполнится, "—" (прочерк), если условие не будет проверяться, "не изв.", если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "—" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите "не изв". В последнем столбце укажите "да" или "нет".
2. Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.)
Возможны и другие способы решения.
а по рисунку разве не подразумевается что точки из области В могут быть и ниже -1? Тогда поведение программы во 2 условии будет не изв.
Может я не понял, обьясните пожалуйста
Нет, по графику следует, что закрашенная область заканчивается на экстремуме синуса.
Требовалось написать программу, при выполнении которой с клавиатуры считываются координаты точки на плоскости (х, у — действительные числа) и определяется принадлежность этой точки заданной закрашенной области (включая границы). Ученик написал такую программу:
var x,y: real;
begin
readln(x,y);
if (y >= -1) and
(y <= sin(x)) and
(y >= x-1) and
(x>=-pi/2) then
write('принадлежит')
else
write('не принадлежит')
end.
А) при вводе "1 2" программа не выводит ничего.
б)
var x,y: real;
begin
readln(x,y);
if (y >= x - 1) and (y <= sin(x)) and (y >= -1) and (x >= -pi / 2) then
write('принадлежит')
else
write('не принадлежит')
end.
Новые вопросы в Информатика
Помогите пожалуйста, с подробным решением.СРОЧНО НУЖНО! 3.Среди приведённых ниже трёх чисел , записанных в десятичной системе счисления, найдите число … , сумма цифр которого в шестнадцатеричной записи наименьшая.В ответе запишите сумму цифр в шестнадцатеричной записи этого числа. 55,72,81. 4.Приведите число 155 из десятичной системы счисления в в двоичную систему счисления.Сколько единиц содержит полученное число?В ответе укажите одно число-количество единиц. 5.переведите число 150 из десятичной системы счисления в двоичную систему счисления.Сколько единиц содержит полученное число?В ответе укажите одно число-количество единиц.
Помогите пожалуйста, с подробным решением.СРОЧНО НУЖНО! 3.Среди приведённых ниже трёх чисел , записанных в десятичной системе счисления, найдите число … , сумма цифр которого в шестнадцатеричной записи наименьшая.В ответе запишите сумму цифр в шестнадцатеричной записи этого числа. 55,72,81. 4.Приведите число 155 из десятичной системы счисления в в двоичную систему счисления.Сколько единиц содержит полученное число?В ответе укажите одно число-количество единиц. 5.переведите число 150 из десятичной системы счисления в двоичную систему счисления.Сколько единиц содержит полученное число?В ответе укажите одно число-количество единиц.
√y-2 (корень y-2) на языке паскаль информатика 8 класс ДАЮ 54 БАЛЛА СРОЧНО ПОМОГИТЕ
√y-2 (корень y-2) на языке паскаль информатика 8 класс ДАЮ 20 БАЛЛОВ СРОЧНО ПОМОГИТЕ
Условия, состоящие из нескольких операций сравнения, называются … простыми составными линейными рекурсивными
Проверьте документ с помощью антивируса и напишите про результат в тетрадь.
Примеры чисел x, y, при которых программа неверно работает:
1, 0 (пишет не принадлежит, а должна писать принадлежит)
3, 1 (пишет не принадлежит, а должна писать принадлежит)
2, 2 (ничего не пишет, а должна писать не принадлежит)
Пример доработки программы:
var
x, y: real;
c: string;
begin
readln(x, y);
c := 'не принадлежит';
if y >= 0 then
if y <= 1 then
if x >= 0 then
if x <= pi then
if (x > pi / 2) or (y <= sin(x)) then c := 'принадлежит';
write(c);
end.
Ещё пример доработки программы:
var
x, y: real;
begin
readln(x, y);
if y >= 0 then
if y <= 1 then
if x >= 0 then
if x <= pi then
if (x > pi / 2) or (y <= sin(x)) then write('принадлежит')
else write('не принадлежит')
else write('не принадлежит')
else write('не принадлежит')
else write('не принадлежит')
else write('не принадлежит');
end.
Объяснение:
Исходная программа вообще давала правильный ответ лишь для точек указанного прямоугольника, у которых игрек равен синусу икс, а также для точек в левой половине прямоугольника, лежащих выше синуса икс.
Требовалось написать программу, которая вводит с клавиатуры координаты точки на плоскости (x,y – действительные числа) и определяет принадлежность точки заштрихованной области, включая ее границы. Программист торопился и написал программу неправильно.
ПРОГРАММА НА ПАСКАЛЕ | ПРОГРАММА НА БЕЙСИКЕ | ПРОГРАММА НА СИ |
---|---|---|
var x,y: real; begin readln(x,y); if y<=1 then if x>=0 then if y>=sin(x) then write('принадлежит') else write('не принадлежит') end. | INPUT x, y IF y<=1 THEN IF x>=0 THEN IF y>=SIN(x) THEN PRINT "принадлежит" ELSE PRINT "не принадлежит" ENDIF ENDIF ENDIF END | void main(void) < float x,y; scanf("%f%f",&x,&y); if (y<=1) if (x>=0) if (y>=sin(x)) printf("принадлежит"); else printf("не принадлежит"); > |
Последовательно выполните следующее:
1) Приведите пример таких чисел x, y, при которых программа неверно решает поставленную задачу.
2) Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, поэтому можно указать любой способ доработки исходной программы).
Программа определяет область (y<=1)Λ(x>=0)Λ(y>=sin(x)) (когда выводит надпись: "принадлежит"):
На рисунке видно, что необходимо еще одно ограниченичивающее неравенство, чтобы программа работала правильно:
Получаем,что программа работает корректно для области: A: (y<=1)Λ(x>=0)Λ(y>=sin(x))Λ(x<=П\2):
Программа работает корректно для области B: (y<=1)Λ(x>=0)Λ(y<sin(x)) (когда выводит надпись:"не принадлежит"):
Т.о. программа работает корректно только для области AVB:
Выразим условия 1, 2 и 3 через Y1, Y2, Y3, Y4:
Область, где программа работает верно: A V B = Y1ΛY2ΛY3ΛY4 V Y1ΛY2Λ¬Y3 = Y1ΛY2Λ((Y3ΛY4)V¬Y3) = (y<=1)Λ(x>=0)Λ((y>=sin(x))Λ(x<=П\2)V(y<sin(x) ) ) .
Область, где программа работает неверно: ¬( Y1ΛY2Λ ( (Y3ΛY4)V¬Y3) )=¬Y1V¬Y2V((¬Y3V¬Y4)ΛY3)=¬Y1V¬Y2V(¬Y3ΛY3V¬Y4ΛY3) = ¬Y1V¬Y2V(0V¬Y4ΛY3) =¬Y1V¬Y2V(¬Y4ΛY3) = ( y>1)V(x<0)V((x>П\2)Λ(y>=sin(x) ) ) . Из этой области и нужно взять искомые x и y:
Читайте также: