
Вопрос задан 10.05.2020 в 18:30.
Предмет Информатика.
Спрашивает Грицин Дмитро.
Проверьте, пожалуйста, правильно ли написана программа... При проверке вылезает окно CRT но при
этом в нем ничего писать не выходит Задание: составьте программу вычисления для любого x функции y=1/x, при x=0 выдать сообщение «функция не существует».


Ответы на вопрос

Отвечает Дзюбук Ксюша.
В программе сильно нарушена логика следования действий!
Логично выполнять действия так:
1 шаг. Ввести х
2 шаг. Проверить, если х не равен 0, то вычислить у; вывести у на экран, иначе вывести сообщение о том, что функция не существует
Ошибки в программе:
- в 5 строке идет вывод сообщения о виде функции, и тут же идет вывод результата деления 1/х. Но! х ЕЩЕ НЕ ВВЕДЕН!!! По умолчанию он равен 0! Идет деление на 0!!!
- в 6 строке идет ввод значения переменной f, но в условии задачи нет такой переменной, и далее она нигде не используется-строка и переменная лишняя!
- в 9й и 13й строках операторные скобки begin и end лишние, они не дают ошибку, просто не нужны
- так как вычислять значение функции можно и при x<0 и при x>0, то два эти условия можно записать как одно условие, т.е. x<>0
- отрицание этого условия и гарантирует, что x=0, когда функция не существует:
if x<>0 then writeln('y=',1/x)
else writeln('Функция не существует');
на этом задача будет решена, т.к. вывод результата будет выполняться сразу же после проверки условия и вычисления
Логично выполнять действия так:
1 шаг. Ввести х
2 шаг. Проверить, если х не равен 0, то вычислить у; вывести у на экран, иначе вывести сообщение о том, что функция не существует
Ошибки в программе:
- в 5 строке идет вывод сообщения о виде функции, и тут же идет вывод результата деления 1/х. Но! х ЕЩЕ НЕ ВВЕДЕН!!! По умолчанию он равен 0! Идет деление на 0!!!
- в 6 строке идет ввод значения переменной f, но в условии задачи нет такой переменной, и далее она нигде не используется-строка и переменная лишняя!
- в 9й и 13й строках операторные скобки begin и end лишние, они не дают ошибку, просто не нужны
- так как вычислять значение функции можно и при x<0 и при x>0, то два эти условия можно записать как одно условие, т.е. x<>0
- отрицание этого условия и гарантирует, что x=0, когда функция не существует:
if x<>0 then writeln('y=',1/x)
else writeln('Функция не существует');
на этом задача будет решена, т.к. вывод результата будет выполняться сразу же после проверки условия и вычисления


Топ вопросов за вчера в категории Информатика

Информатика 566

Информатика 25

Информатика 22

Информатика 27

Информатика 34

Информатика 58

Информатика 63

Информатика 23
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili