• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Проверьте правильность программы на паскале

димон4ик

Новые
Регистрация
2 Окт 2011
Сообщения
29
Реакции
0
Баллы
0
Проверьте правильность программы на паскале

Program lab1;
Var x: real;
begin
write('Введите x=');
read(x);
y:=(((sqr*(cos(x)))/(1+sin(x))))-(sqr(ln)(x/exp(1/3*ln(x-1))));
write(y);
if (y>0) then y:=1;
else (y=0) then y:=0;
else (Y<0)then y:=-1;
end.
Если конечно не трудно.
 
А разве строка вывода не должна быть после присвоения "у" принятого результата.
(если конечно я правильно понял конечную проверку).
на выполнение не запускается?

во блин.. Vladimir_S прав: проверка результата (или как бы её еще помягче назвать) в корне неправильная.
Учи язык, помощь тут будем лишней.
Разрешите откланяться.
 
Я конечно никудышный кодер, но зачем присваивать "у" нуль, если он итак имеет значение нуль? И вообще, попробуй выразить через case...
 
Я конечно никудышный кодер, но зачем присваивать "у" нуль, если он итак имеет значение нуль? И вообще, попробуй выразить через case...
задание такое если y получается как я писал то присваивать y значение
 
offtopic.gif Извините, сударь, но персонально Вам персонально я помогать не буду, поскольку Вы у меня числитесь в моем "черном списке", куда попадают те, кто, выложив просьбу-задание, после этого неделями не появляются на нашем форуме, таким образом ни в грош не ставя время и силы, затрачиваемые нашими программистами на эту т.н. "помощь". Так что как Вы к нам, так и мы к Вам.
http://www.tehnari.ru/f41/t85356/
Могу лишь, присоединяясь к Dr.Format_C, посоветовать учить язык, для начала разобравшись с семантикой условного оператора if..then..else.
Успехов!
 
Код:
Program lab1; [COLOR=Purple]{пока верно}[/COLOR]
Var x: real; [COLOR=Red]{определили только одну переменную x, хотя в программе используется 2 переменных: x и y}[/COLOR]
begin [COLOR=Purple]{верно}[/COLOR]
write('Введите x='); [COLOR=Purple]{верно}[/COLOR]
read(x); [COLOR=Purple]{верно}[/COLOR]
y:=(((sqr*(cos(x)))/(1+sin(x))))-(sqr(ln)(x/exp(1/3*ln(x-1)))); [COLOR=Red]{чушь откровенная, компилятору снесет крышу. Где исходная функция?}[/COLOR]
write(y); [COLOR=Purple]{верно}[/COLOR]
if (y>0) then y:=1; else (y=0) then y:=0; else (Y<0)then y:=-1; [COLOR=Red]{чушь еще откровеннее, чем предыдущая, эта строка окончательно придаст ускорение крыше компилятора}[/COLOR]
[COLOR=Red]{непонятно, зачем вычислять что-либо, если результаты вычислений никуда не передаются. Вы бы для приличия хоть на экран результат вывели.}[/COLOR]
end.[COLOR=Purple]{верно}[/COLOR]
Вот весь предварительный анализ вашего листинга, неправильные команды снабжены красным комментарием. Потрудитесь исправить самостоятельно, для чего вам понадобится хотя бы в справочник заглянуть. Рекомендую вам воспользоваться клавишей F1 в окне среды разработки.
 
Назад
Сверху