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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.10.2011, 15:34   #11
JUDAS
фонатик DELPHI
Форумчанин
 
Аватар для JUDAS
 
Регистрация: 14.01.2008
Сообщений: 714
По умолчанию

Код:
во-вторых, элементарную ошибку в логике Вы пытаетесь оправдать тем, что это НЕ ПРОМЫШЛЕННЫЙ вариант.
Элементарная ошибка? Да если все элементы массива одинаков то код принимает значение
максимум A[round(random*ДЛИНА)], минимум = максимум = второй_миниму = второй максимум. Это называется частные случаи, так же как и квардрат = окружности если количесвто точке =4 а не бесконечность или правильный многоугольник с бесконечностю углами = окружность.
Кроме того, если начинать философствоватьа не решать задачу на уровне программы которую требуют то:
- (mas[i] mod 2 = 1) не является вычислением нечётного числа нужно писать с Abs
- процедуры Trunc, Ceil, Round в отрицательном полумноєжестве значение или не срабатывают корректно (стандартные библиотечные) или выдают не те значение которые ожидает программер
- ввод нужно проверять на вшивость, юзер может ввести не число на например "вася"
- MaxInt может быть не определено или массив может быть заполнен MaxInt-ами и так далее.
-------------
Поймите, если писать в лабораторных работах и обучающих примерах всю защиту от "коварного юзера" то во первых
- если студент дуб или начинающий - он хер чё поймёт.
- лиший код (заплатки для дурака) - лишие вопросы препода
- лишний код - не отражает сути поставленной задачи.

П.С. если бы я попросил бы написать аналогичный код я бы писал вот так:
Просьба написать код произведения пары минимальных и пары максимальных чисел в массиве при условии что нужно проверить ввод с клавиатуры, и проанализировать значения массива которые могут ввести математики-теоретики.
Вот это был бы другой разговор

Кроме того, я написал путь решениЯ задачи. --- чел просил произведение, а я нашёл только значения.
95% сбоев и ошибок приложений, находится в полу метрах от монитора
JUDAS вне форума Ответить с цитированием
Старый 09.10.2011, 15:49   #12
iCaesy
In progress...
Форумчанин
 
Регистрация: 25.09.2011
Сообщений: 161
По умолчанию

Все верно JUDAS говорит. То что просили найти в книге, мы нашли. Все соответствует тому что было заданно.
А искать какие либо недочеты, недостатки программы это лишнее, по крайней мере для первого курса.
iCaesy вне форума Ответить с цитированием
Старый 09.10.2011, 16:01   #13
TinMan
Форумчанин
 
Аватар для TinMan
 
Регистрация: 05.09.2011
Сообщений: 869
По умолчанию

Упс! Да, признаю свою ошибку.
Метод оригинальный - одновременно и нечетность, и положительность, все путем.
И хотя я согласен с Сержем по поводу той ошибки и прочего - я все же ставлю +1.
Понравилось )).

(Но надеюсь, что и ты все же свою признаешь, а не станешь продолжать нести ту чушь))
Предпочитаю на "ты".
TinMan вне форума Ответить с цитированием
Старый 09.10.2011, 16:11   #14
JUDAS
фонатик DELPHI
Форумчанин
 
Аватар для JUDAS
 
Регистрация: 14.01.2008
Сообщений: 714
По умолчанию

Цитата:
Но надеюсь, что и ты все же свою признаешь, а не станешь продолжать нести ту чушь
Я показал в предыдущем посте, по поводу X mod 2. что отрицательный будут пропускатся и признал что это не учитывал в своём коде, как проверку ввода, проверку на одинаковые значения, и т п.
Что мне ещё признать ?
95% сбоев и ошибок приложений, находится в полу метрах от монитора
JUDAS вне форума Ответить с цитированием
Старый 09.10.2011, 16:14   #15
iCaesy
In progress...
Форумчанин
 
Регистрация: 25.09.2011
Сообщений: 161
По умолчанию

Ребят, у вас так много энергии, давайте ка переезжаем сюда
http://www.programmersforum.ru/showt...=168098&page=2
iCaesy вне форума Ответить с цитированием
Старый 09.10.2011, 16:51   #16
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Элементарная ошибка? Да если все элементы массива одинаков то код принимает значение
максимум A[round(random*ДЛИНА)], минимум = максимум = второй_миниму = второй максимум.
Так я об этом и говорю! Вы свой код смотрели?! У Вас будет НЕ ТАК!
Хорошо введите массив с клавиатуры. (или задайте константный прямо в коде программы).
сделайте так, чтобы БЫЛО ДВА одинаковых максимальных значения и ДВА одинаковых МИНИМАЛЬНЫХ.
11 11 12 13 14 15 ... 17 18 19 19
запустите Ваш код и угадайте, какие результаты будет найдены программой КАК второй минимум и максимум.

Цитата:
MaxInt может быть не определено или массив может быть заполнен MaxInt-ами
MaxInt не может быть неопределён. А вот то, что массив может быть заполнен маxint - это реальная проблема. я её сразу же увидел, после того, как увидел, что вы присваиваете min и max константам. В реальной практической задаче я бы обязательно к этом придрался. но здесь, имхо, это можно и опустить для простоты.

Цитата:
процедуры Trunc, Ceil, Round в отрицательном полумноєжестве значение или не срабатывают корректно
Господи, а это уж тут (в данной задаче) при чём?!
если Вы про
Цитата:
Код:
mas[i]:=round(random*1000-500);
то в данном случае round() абсолютно бессмысленен и не нужен (random(100) вернёт ЦЕЛОЕ число! Вы этого не знали?!)

Цитата:
Сообщение от iCaesy
Все верно JUDAS говорит. То что просили найти в книге, мы нашли. Все соответствует тому что было заданно.
имхо, программа, которая не для всех допустимых в задании исходных данных работает корректно - не является корректной.
Но, впрочем, хозяин - барин. Если Вы (и Ваш преподаватель) удовлетворены решением - то пусть будет так. ок. Тогда для Вас решение Judas правильное.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массивы Паскаль! Денис999 Помощь студентам 3 24.05.2010 19:39
Паскаль.массивы. aigulia Помощь студентам 7 22.04.2010 18:57
паскаль. массивы Scliffer Помощь студентам 1 22.04.2010 18:43
массивы.паскаль Лида200915 Помощь студентам 1 22.09.2009 01:37