Требовалось написать программу которая вводит с клавиатуры координаты точки на плоскости

Рассмотрены все задания из открытого банка по информатике и ИКТ 2015 с решением.

Скачать:

Предварительный просмотр:

1. Требовалось написать программу, которая решает неравенство « ax+b>0 » относительно x для любых чисел a и b , введенных с клавиатуры. Все числа считаются действительными. Программист торопился и написал программу неправильно.

ПРОГРАММА НА ПАСКАЛЕ

ПРОГРАММА НА БЕЙСИКЕ

ПРОГРАММА НА СИ

var a,b,x: real;
begin
readln(a,b,x);
if a = 0 then
if b >0 then
write(‘любое число’)
else
write (‘нет решений’)
else
write(‘x>’,-b/a);
end.

INPUT a, b, x
IF a = 0 THEN
IF b > 0 THEN
PRINT «любое число»
ELSE
PRINT «нет решений»
ENDIF
ELSE
PRINT «x>», -b/a
ENDIF
END

Последовательно выполните три задания:
1) Приведите пример таких чисел a , b , x , при которых программа неверно решает поставленную задачу.

Видеоурок «Координатная плоскость, координата точки»


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

1. Программа работает неправильно, если a 1), а надо х

2. Лишняя часть программы – ввод x , поскольку это не исходные данные, а результат. Поэтому вместо оператора

Переменная x далее не используется, поэтому ее не нужно объявлять:

write (‘нет решений’);

else if a > 0 then

2. Требовалось написать программу, которая решает уравнение « ax+b=0 » относительно x для любых чисел a и b , введенных с клавиатуры. Все числа считаются действительными. Программист торопился и написал программу неправильно.

ПРОГРАММА НА ПАСКАЛЕ

ПРОГРАММА НА БЕЙСИКЕ

ПРОГРАММА НА СИ

var a, b, x: real;
begin
readln(a,b,x);
if b = 0 then
write(‘x = 0’)
else
if a = 0 then
writ e ( ‘нет решений’)
else
write(‘x =’,-b/a);
end.

INPUT a, b, x
IF b = 0 THEN
PRINT «x = 0»
ELSE
IF a = 0 THEN
PRINT «нет решений»
ELSE
PRINT «x=»,-b/a
END

Последовательно выполните три задания:

1) Приведите пример таких чисел a , b , x, при которых программа неверно решает поставленную задачу.

2) Укажите, какая часть программы является лишней.

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

В первую очередь, рассмотрим поставленную задачу с позиций математики: возможны следующие варианты:

  • a=0 и b=0 — x — любое число;
  • a=0 и b≠0 — нет решений;
  • a≠0 — x=-b/a.

1. Программа работает неправильно, если a и b равны нулю: в этом случае решением уравнения является любое число x , а программа выдаст только решение . Например,

11 класс, 1 урок, Прямоугольная система координат в пространстве

2. Лишняя часть программы – ввод x , поскольку это не исходные данные, а результат. Поэтому вместо оператора

Переменная x далее не используется, поэтому ее не нужно объявлять:

3. Требовалось написать программу, которая решает уравнение

относительно x для любых чисел a и b , введенных с клавиатуры. Все числа считаются действительными. Программист торопился и написал программу неправильно.

ПРОГРАММА НА ПАСКАЛЕ

ПРОГРАММА НА БЕЙСИКЕ

ПРОГРАММА НА СИ

var a,b,x: real;
begin
readln(a,b,x);
if a = 0 then
if b = 0 then
write (‘любое число’)
else
write (‘нет решений’)
else
if b = 0 then
write(‘x = 0’)
else
write(‘x =’,b/a,’ или
x = ‘,-b/a);
end.

INPUT a, b, x
IF a = 0 THEN
IF b = 0 THEN
PRINT «любое число»
ELSE
PRINT «нет решений»
ENDIF
ELSE
IF b = 0 THEN
PRINT «x = 0»
ELSE
PRINT «x =»,b/a, » или
x =»,-b/a
END IF
END IF
END

Последовательно выполните три задания:

1) Приведите пример таких чисел a, b, x, при которых программа неверно решает поставленную задачу.

2) Укажите, какая часть программы является лишней.

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

Определим, какими могут быть a и b исходя из приведенных выше условий. Получаем, что a и b могут быть любыми ненулевыми числами с разными знаками. Например, a=5, b=-5 х=0;

2. Лишняя часть программы – ввод x , поскольку это не исходные данные, а результат. Поэтому вместо оператора

Переменная x далее не используется, поэтому ее не нужно объявлять:

3. Возможная доработка программы – добавить еще один условный оператор, обрабатывающий неучтенный случай ( a и b не равны нулю и имеют разные знаки), при котором нет решений

var a,b,x: real;
begin
readln(a,b);
if a = 0 then
if b = 0 then
write (‘любое число’)
else
write (‘нет решений’)
else
if b*a>0 then
write(‘x =’,b/a,’ или x =’,-b/a)
else
if b=0 then
write(‘x =0’)
else
write (‘нет решений’);
end.

Читайте также:
Как удалять полностью программы с ПК

4. Требовалось написать программу, которая решает неравенство

относительно x для любых ненулевых чисел a и b ( b≠0, a≠0 ), введенных с клавиатуры. Все числа считаются действительными. Программист торопился и написал программу неправильно.

ПРОГРАММА НА ПАСКАЛЕ

ПРОГРАММА НА БЕЙСИКЕ

ПРОГРАММА НА СИ

var a,b,x: real;
begin
readln(a,b,x);
if b>0 then
write (‘x>’,a,’ или
x 0 then
write(‘0

INPUT a, b, x
IF b > 0 THEN
PRINT «x>»,a,» или
x 0 THEN
PRINT «0

Последовательно выполните три задания:

1) Приведите пример таких чисел a ,b, x, при которых программа неверно решает поставленную задачу.

2) Укажите, какая часть программы является лишней.

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

1) a = −13, b = 4, x = 0.

Значение x может быть не указано. Значение а может быть любым отрицательным числом, значение b — любым положительным. Также допустим ответ, что программа работает неправильно при любых положительных b и отрицательных а.

не нужно вводить х с клавиатуры; верно: readln(a, b).

3) Возможная доработка:

5. Требовалось написать программу, которая решает неравенство

относительно x для любого ненулевого числа b и любого неотрицательного числа a и ( a≥0, b≠0 ), введенных с клавиатуры. Все числа считаются действительными. Программист торопился и написал программу неправильно.

ПРОГРАММА НА ПАСКАЛЕ

ПРОГРАММА НА БЕЙСИКЕ

ПРОГРАММА НА СИ

var a,b,x: real;
begin
readln(a,b,x);
if a = 0 then
if b > 0 then
write (‘нет решений’)
else
write(‘x > 0 или
x

INPUT a, b, x
IF a = 0 THEN
IF b > 0 THEN
PRINT «нет решений»
ELSE
PRINT «x>0 или
x

Последовательно выполните три задания:

1) Приведите пример таких чисел a ,b, x, при которых программа неверно решает поставленную задачу.

2) Укажите, какая часть программы является лишней.

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

1) Значение может быть не указано. Значение может быть любым отрицательным числом, значение — любым положительным. Также допустим ответ, что программа работает неправильно при любых положительных и отрицательных

2) Лишняя часть: не нужно вводить х с клавиатуры; верно: readln (а, b), описывать переменную х ненужно var a,b: real;

3) Возможная доработка:

var a,b,x: real;
begin

6. Требовалось написать программу, которая решает неравенство

относительно x для любого ненулевого числа a и любого неотрицательного числа b и ( a≠0, b≥0 ), введенных с клавиатуры. Все числа считаются действительными. Программист торопился и написал программу неправильно.

ПРОГРАММА НА ПАСКАЛЕ

ПРОГРАММА НА БЕЙСИКЕ

ПРОГРАММА НА СИ

var a,b,x: real;
begin
readln(a,b,x);
if b = 0 then
write(‘x > 0 или
x 0 then
write(‘x > 0 или
x

INPUT a, b, x
IF b = 0 THEN
PRINT «x > 0 или
x 0 THEN
PRINT «x >0 или
x

Последовательно выполните три задания:

1) Приведите пример таких чисел a, b, x, при которых программа неверно решает поставленную задачу.

2) Укажите, какая часть программы является лишней.

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

1) a = −13, b = 0, x = 2.

Значение x может быть не указано. Значение а может быть любым отрицательным числом, значение b =0.

не нужно вводить х с клавиатуры; верно: readln(a, b), описывать переменную х ненужно var a,b: real;

3) Возможная доработка:

write(‘решений нет’) else

write(‘x > 0 или x

write(‘x > 0 или x

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

ПРОГРАММА НА ПАСКАЛЕ

ПРОГРАММА НА БЕЙСИКЕ

ПРОГРАММА НА СИ

var x,y: real;
begin
readln(x,y);
if y =0 then
write(‘принадлежит’)
else
write(‘не принадлежит’)
end.

INPUT x, y
IF y =0 THEN
PRINT «принадлежит»
ELSE
PRINT «не принадлежит»
ENDIF
ENDIF
ENDIF
END

Последовательно выполните следующее:
1) Приведите пример таких чисел x , y , при которых программа работает неправильно.
2) Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, поэтому можно указать любой с Решение:

1. примеры входных данных, на которых программа работает неверно:

Читайте также:
Что называют алгоритмом программы

(x=-3.9, y=0.5) (неправильно определяет принадлежность точки области)

(x=-3, y=0) (не выдает вообще никакого сообщения)

2. способ доработки исходной программы):

if (y =0) and (x>=0) then

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

ПРОГРАММА НА ПАСКАЛЕ

ПРОГРАММА НА БЕЙСИКЕ

ПРОГРАММА НА СИ

var x,y: real;
begin
readln(x,y);
if x = – sin(x) then
write(‘принадлежит’)
else
write(‘не принадлежит’)
end.

INPUT x, y
IF x = – SIN(x) THEN
PRINT «принадлежит»
ELSE
PRINT «не принадлежит»
ENDIF
ENDIF
ENDIF
END

void main(void)
< float x,y;
scanf(«%f%f»,y);
if (x = – sin(x))
printf(«принадлежит»);
else
printf(«не принадлежит»);
>

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

1. примеры входных данных, на которых программа работает неверно:

(x=-3.9, y=-0.5) (неправильно определяет принадлежность точки области)

(x=0, y=2) (не выдает вообще никакого сообщения)

2. способ доработки исходной программы:

if (x = — sin(x)) and (x>=0) then

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

ПРОГРАММА НА ПАСКАЛЕ

ПРОГРАММА НА БЕЙСИКЕ

ПРОГРАММА НА СИ

var x,y: real;
begin
readln(x,y);
if y =0 then
if y>=sin(x) then
write(‘принадлежит’)
else
write(‘не принадлежит’)
end.

INPUT x, y
IF y =0 THEN
IF y>=SIN(x) THEN
PRINT «принадлежит»
ELSE
PRINT «не принадлежит»
ENDIF
ENDIF
ENDIF
END

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

1. примеры входных данных, на которых программа работает неверно:
(x=3.14, y=0.5) (неправильно определяет принадлежность точки области)
(x=0, y=1) или (x=-1, y=0) (не выдает вообще никакого сообщения)

2. Доработанная программа(не хватало одного условия )

if (x >= 0) and (x pi/2) and

(y 1) and (y >= sin(x)) then

else write(‘не принадлежит’);

10. Требовалось написать программу, которая решает уравнение « x 2 +c= 0» относительно x для любого числа c , введенного с клавиатуры. Все числа считаются действительными. Программист торопился и написал программу неправильно.

ПРОГРАММА
НА ПАСКАЛЕ

ПРОГРАММА
НА БЕЙСИКЕ

ПРОГРАММА
НА СИ

PRINT «нет решений»

Последовательно выполните три задания:

1) Приведите пример таких чисел c, x, при которых программа неверно решает поставленную задачу.

2) Укажите, какая часть программы является лишней.

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

пример чисел c, x, при которых программа неверно решает поставленную задачу: с=0,

2) лишним является ввод переменной х, правильным является следующий оператор ввода

3) доработка программы, чтобы не было случаев ее неправильной работы.

if c > 0 then write (‘нет решений’)

if c=0 then write (‘x=0‘)

else write(‘x =’,sqrt(-c),’ или x =’,-sqrt(-c);

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

ПРОГРАММА
НА ПАСКАЛЕ

ПРОГРАММА
НА БЕЙСИКЕ

ПРОГРАММА
НА СИ

PRINT «не принадлежит»

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

1) Приведите пример таких чисел x , y , при которых программа неверно решает поставленную задачу.

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

1. примеры входных данных, на которых программа работает неверно:
(x=-1, y=-3) (неправильно определяет принадлежность точки области)
(внутри круга или слева от прямой ) вообще не выдается никакого сообщения.

2. Доработанная программа6

if (x*x+y*y >= 4) and (x >= -2) and

12. Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, не превосходящее 10 9 , и выводится минимальная цифра этого числа. Программист торопился и написал программу неправильно. (Ниже для Вашего удобства программа представлена на четырёх языках программирования.)

Читайте также:
Какая программа у спотлайт

INPUT N
min_digit = 9
WHILE N >= 10
digit = N MOD 10
IF digit

digit, min_digit: integer;

min_digit := 9;
while N >= 10 do

begin
digit := N mod 10;
if digit

int digit, min_digit;

min_digit = 9;
while (N >= 10)
digit = N % 10;
if (digit

цел N, digit, min_digit

digit := mod(N, 10)
если digit то
min_digit := digit
все

вывод digit
кон

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

1. Напишите, что выведет эта программа при вводе числа 547.

2. Найдите все ошибки в этой программе (их может быть одна или несколько). Для каждой ошибки:

1) выпишите строку, в которой сделана ошибка;

2) укажите, как исправить ошибку, – приведите правильный вариант строки.

Обратите внимание, что требуется найти ошибки в имеющейся программе, а не написать свою, возможно, использующую другой алгоритм решения. Исправление ошибки должно затрагивать только строку, в которой находится ошибка.

1. Программа выведет число 4.

2. Первая ошибка. Неверное условие окончания цикла. Программа не будет рассматривать старшую цифру числа. Строка с ошибкой: «while N >= 10» do Возможные варианты исправления: «while (N >= 1)» или «while (N > 0)» При этом замены на «while (N > 1)» или «while (N >= 0)» корректными не являются.

3. Вторая ошибка. Программа выводит значение переменной «digit», а не «min digit». В результате программа всегда выводит вторую слева цифру числа. Строка с ошибкой: «writeln(digit);». Необходимо в строке с выводом результата заменить «digit» на «min digit»

13. Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число N, не превосходящее 10 9 , и выводится минимальная цифра этого числа. Программист торопился и написал программу неправильно. (Ниже для Вашего удобства программа представлена на четырёх языках программирования.)

INPUT N
min_digit = 0
WHILE N > 0
digit = N MOD 10
IF digit
min_digit = digit
END IF
N = N 10
WEND
PRINT digit
END

digit, min_digit: integer;

min_digit := 0;
while N > 0 do

begin
digit := N mod 10;
if digit

Источник: nsportal.ru

Требовалось написать программу которая вводит с клавиатуры координаты точки на плоскости

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

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

1) Приведите пример таких чисел х, у, при которых программа неверно решает поставленную задачу.

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

1) Пример: х = -2, у = 1.

Любая пара (х> у), для которой выполняется: х > 1,5 или (y >= 0 и x х^2.

2) Возможная доработка (Паскаль):

(могут быть и другие способы доработки).

Источник: self-edu.ru

Требовалось написать программу которая вводит с клавиатуры координаты точки на плоскости

Помогите, пожалуйста.
2) Требовалось написать программу, которая вводит с клавиатуры координаты точки на плоскости (x, y – действительные числа) и определяет принадлежность точки заштрихованной области, включая ее границы. Программист торопился и написал программу неправильно. Вот она:
var x,y: real;
begin
readln(x,y);
if y >= -1 then
if y if y >= x-1 then
write(‘принадлежит’)
else
write(‘не принадлежит’)
end.
а) приведите пример таких чисел x, y, при которых программа неверно решает поставленную задачу;
б) укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы; это можно сделать несколькими способами, поэтому можно указать любой способ доработки исходной программы.

Комментарии

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.

5 (1 оценка)

fasalv 7 лет назад
Светило науки — 754 ответа — 9866 раз оказано помощи

а) при вводе «1 2» программа не выводит ничего.
б)
var x,y: real;
begin
readln(x,y);
if (y >= x — 1) and (y = -1) and (x >= -pi / 2) then
write(‘принадлежит’)
else
write(‘не принадлежит’)
end.

Лучшие помощники

За сегодня
Ежедневный Еженедельный Ежемесячный За 3 месяца
Мозг Отвечающий
Лёва Середнячок
Мозг Отвечающий
Лёва Середнячок
Мозг Отвечающий
Лёва Середнячок
Мозг Отвечающий
Лёва Середнячок

2023 ВашУрок

Этот сайт использует cookies. Политика Cookies Вы можете указать условия хранения и доступ к cookies в своем браузере.

Источник: vashurok.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru