IPB
ЛогинПароль:

> помогите пожалуйста разобраться с алгоритмом
сообщение
Сообщение #1


Бывалый
***

Группа: Пользователи
Сообщений: 205
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


Дан алгоритм программы, объясните пожалуйста по возможности подробней для чего предназначена эта программа (она находит площадь какой-то фигуры-это единственное что мне известно). Мне не понятно как она вычисляет площадь (по какому принципу), что это за значения a, b и Q (почему вначале такое условие что а>Q*Q???). Может это величины сторон фигуры? но какой?


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 9)
сообщение
Сообщение #2


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


оригинальное условие: abs(Q)>0


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гуру
*****

Группа: Пользователи
Сообщений: 1 168
Пол: Мужской
Реальное имя: Сергей Андрианов

Репутация: -  28  +


Цитата(мисс_граффити @ 8.09.2008 17:55) *

оригинальное условие: abs(Q)>0

На самом деле не такое уж оригинальное: эквивалентно Q<>0. Очевидно нужно, чтобы избежать деления на 0.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


Цитата
На самом деле не такое уж оригинальное: эквивалентно Q<>0

Я вообще про то же.
if StrToInt(BoolToStr(flag))=-1 then

тоже в глубине души эквивалентно
if flag then


...появилось подозрение, что это абстрактная блок-схема для какой-нить работы по дисциплине типа "технология разработки ПО"


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Бывалый
***

Группа: Пользователи
Сообщений: 205
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


этот алгоритм нужно протестировать по методу "черного ящика". для этого нужно выделить правильные и неправильные классы эквивалентности (правильные, неправильные данные). я не могу этого сделать не поняв алгоритм. Поэтому я и прошу разъяснить мне, если кто понимает


Добавлено через 2 мин.
а дисциплина называется технология программирования
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


Ну почти угадала.
Какая тебе разница, ЧТО программа считает? Думаю, что ничего конкретного (потому что при подсчете площади явное присваивание конкретного значения, не зависящего от параметров, выглядит странно).
Обычно для таких заданий дают алгоритмы, не предназначенные для решения конкретной задачи.
Мы в прошлом году подобное делали, формулировка задания была такой:
Цитата
1. Написать подлежащую тестированию программу, в соответствии с заданным алгоритмом. (Алгоритм составляется студентом самостоятельно и согласовывается с преподавателем. Алгоритм должен содержать не менее пяти условных вершин, причем одна из них должна быть со сложным условием “и” другая с условием ”или”, к примеру (“f<h & a=c”).
2. ...




--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Бывалый
***

Группа: Пользователи
Сообщений: 205
Пол: Мужской
Реальное имя: Евгений

Репутация: -  0  +


но как же мне тогда понять какие входные значения правильные, а какие нет?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


Я так понимаю, неправильные - это те, которые приводят в блок S -?


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гуру
*****

Группа: Пользователи
Сообщений: 1 168
Пол: Мужской
Реальное имя: Сергей Андрианов

Репутация: -  28  +


Цитата(1147 @ 10.09.2008 16:31) *

но как же мне тогда понять какие входные значения правильные, а какие нет?

Диапазон допустимых входных значений задается вне блок-схемы алгоритма, правильный же алгоритм должен уметь работать с любыми входными значениями, при необходимости сигнализируя об ошибке во входных данных.
В последнем случае (т.е. при существовании явной ветки, обрабатывающей ошибки) именно по этой ветке и можно сделать вывод, какие входные данные являются недопустимыми (по сути это реверсинжинеринг).
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Н-дааа, задачка презабавненькая.. Тот, кто сочинял ее, откровенно развлекался smile.gif. Я извиняюсь за встревание в давно утихший спор, но у меня есть два соображения..

1. Если считать, что сведения о том, что алгоритм вычисляет площадь - это часть условия, то единственный разумный кандидат на это действие есть S=a*Q (a и Q - стороны прямоугольника, скажем, или сторона и высота). Остальные как-то не проходят на эту роль.. Если так, то "правильные" данные должны приводить в этот блок. Тогда "правильными" нужно считать нечто вроде:
(a <= Q*Q) and ((a<=b) or (Q=0))

2. Задача находится в неподобающем разделе.
М
Переношу в Алгоритмы



--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 16.04.2024 18:49
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name