Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2009, 08:41   #1
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
Плохо Помогите пожалуйсьа решить задачку:

Требовалось написать программу, которая решает уравнение «a|x|+с=b» относительно x для любых чисел a, b и с, введенных с клавиатуры. Все числа считаются действительными. Программист торопился и написал программу неправильно.
var a,b,c,x: real;
begin
readln(a,b,c,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.

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

всем кто откликнется заранее огромное спасибо!
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума Ответить с цитированием
Старый 17.04.2009, 10:10   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А сам то как думаешь?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.04.2009, 13:39   #3
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
По умолчанию

Насчет этой - вообще нет нароботок, а другой - которой тоже спрашивал - есть
пожалуйста помогите с этой задачей
здесь только ответ на 2 вопрос
x не нужно вводить с клавы
а дальше - помогите пожалуйста
не знаю как решить, срочно нужно((
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума Ответить с цитированием
Старый 17.04.2009, 14:37   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Имхо лишнее тут это:
Код:
if b = 0 then
write('x = 0')
Если а=-1, х=1 и c=1 то b будет нулем, но х не ноль.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.04.2009, 15:20   #5
Tkirill
Форумчанин
 
Аватар для Tkirill
 
Регистрация: 22.12.2008
Сообщений: 104
По умолчанию

1) a=0 b=0 c=4
2) Лишним является ввод Х
3)
var
a,b,c,x:real;
begin
readln(a,b,c);
if (a=0) and (b=c) then writeln(' x любое ')
else if (a=0) and (b=0) and (c<>0) then writeln(' решений нет ')
else if ((b-c)/a)< 0 then writeln(' решений нет ')
else if ((b-c)/a)=0 then writeln('x=0')
else writeln((b-c)/a,' ',-(b-c)/a);
end.

ето с1?
@(o_0)@

Последний раз редактировалось Tkirill; 17.04.2009 в 15:23.
Tkirill вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите решить задачку Top4 Помощь студентам 0 07.04.2009 20:50
Помогите решить задачку New БД в Delphi 3 12.12.2006 19:46