Вопрос № 147856: Здраствуйте,помогите пожалуйста с задачей: Заполнить массив из 10 элементов случайными числами в интервале [1..100],разделить его на 2 части и отсортировать первую часть - по возрастанию,а вторую - по убыванию. Заранее вам огромное спасибо! ...Вопрос № 147882: Пожалуйста, помогите решить задачку. Разложить заданное натуральное число на простые множители, желательно с комментариями....Вопрос
№ 147907: и вот еще,пожалуйста..просто пожалуйста...:Дан файл Assort,содержащий сведения об игрушках,указывается название игрушки,ее стоимость в рублях и возрастные границы (например:игрушка может предназначаться для детей от 2 до 5 лет). Определить стоимоть с...Вопрос № 147911: Здравствуйте, уважаемые эксперты! Прошу помочь с решением задачи: Дана строка, состоящая из групп нулей и единиц. Каждая группа отде
ляется от другой одним или несколькими пробелами. Найти количество групп с пятью символами. Под группами...Вопрос № 147918: Дорогие эксперты помогите пожалуйста найти ошибку и исправить.... Когда я задаю точки (1,0),(2,0),(3,0),(4,0) должно вывести среднее расстояние 1,666 но в чём то ошибка((код в приложении, вот сама задача: Дано множество точек плокости. Найти средн...Вопрос № 147956: Здравствуйте...вынужденна обратиться
за помощью... помогите, пожалуйста написать программки..думаю, труда особо не составит, заранее благодарю... осуществить циклический сдвиг последовательности заданной в файле до превого положительного элеме...Вопрос № 147957: Здравствуйте Уважаемые эксперты! Помогите пожалуйста решить такую задачу. Известны результаты анкетирования ста человек. Анкета состоит из 150 пунктов, анкета состоит из 150 пунктов, на которые п
редлагалось ответить утвердительно, отрицательно или...
Вопрос № 147.856
Здраствуйте,помогите пожалуйста с задачей: Заполнить массив из 10 элементов случайными числами в интервале [1..100],разделить его на 2 части и отсортировать первую часть - по возрастанию,а вторую - по убыванию. Заранее вам огромное спасибо!
Отправлен: 20.10.2008, 14:30
Вопрос задала: Evela (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Шичко Игорь
Здравствуйте, Evela! Примерный алгоритм: Определяем позиции середины и сортируем установленным алгоритмом каждую часть по отдельности. Т.е. от 1 до середины и от середины +1 до конца. Примерный код - в приложении.
Приложение:
Ответ отправил: Шичко Игорь (статус: Студент)
Ответ отправлен: 20.10.2008, 15:08 Оценка за ответ: 5
Отвечает: Чабаненко Владислав Дмитриевич
Здравствуйте, Evela! Вот пример программы. Комментарии в приложении. Насчёт inc(a[j],a[j+1]); a[j+1]:=a[j]-a[j+1]; dec(a[j],a[j+1]); - это мы меняем так местами элементы a[j] и a[j+1], т.е. надо знать, чтобы поменять две переменные a и b (числовые) без дополнительных переменных: a:=a+b; b:=a-b; a:=a-b; (a=4; b=18; -> a=22; b=18; -> a=22; b=4; -> a=18; b=4) УДАЧИ
Приложение:
Ответ отправил: Чабаненко Владислав Дмитриевич (статус: Заблокирован)
Ответ отправлен: 20.10.2008, 16:10 Оценка за ответ: 5
Вопрос № 147.882
Пожалуйста, помогите решить задачку. Разложить заданное натуральное число на простые множители, желательно с комментариями.
Отвечает: Зенченко Константин Николаевич
Здравствуйте, Морозов Артём Сергеевич!
Программа в приложении. Вопросы задавайте в мини-форум. Удачи!
Приложение:
--------- Итерация от человека, рекурсия — от Бога (Питер Дойч)
Ответ отправил: Зенченко Константин Николаевич (статус: Профессор) Украина, Киев Тел.: +380979536619 Адрес: Украина г.Киев ---- Ответ отправлен: 20.10.2008, 19:37
Отвечает: Verena
Здравствуйте, Морозов Артём Сергеевич! Вот другой вариант, очень простой алгоритм. Рассматривается сначала деление на 2, а затем на все по порядку нечётные числа. Когда квадрат делителя превысит число - рассмотрение потеряет смысл и цикл завершится. Остальное, думаю, ясно из комментариев. Удачи!
Код:
Var n, p: word; begin readln (n); {Считываем число} p:= 2; {Проверяем делимость на 2} if n=1 then {Если число=1 - выходим} writeln (n) else begin while (n mod 2 = 0) do {Пока число делится на 2} begin writeln (p); {Выводим делитель} n:= n div 2;{Делим число на делитель} end; if n<>1 then {Если не доделилось} begin p:=3; {Рассматриваем делитель 3 и далее все нечётные}
while (p*p <= n) do {Пок а квадрат делителя меньше числа} begin if n mod p = 0 then {Если делится} begin writeln (p); {Выводим} n:= n div p; {Делим} p:= p-2; {Сохраняем текущий делитель (далее он наращивается)} end; p:= p+2; {Переходим на следующий} end; writeln (n); {Выводим оставшееся} end; end; End.
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: Практикант)
Ответ отправлен: 20.10.2008, 19:45 Оценка за ответ: 5 Комментарий оценки: Спасибо!!!!!!!!!!!
Отвечает: Чабаненко Владислав Дмитриевич
Здравствуйте, Морозов Артём Сергеевич! Принимайте программу, комментарии см. ниже, если возникнут вопросы - обращайтесь. УДАЧИ!!!
и вот еще,пожалуйста..просто пожалуйста...:Дан файл Assort,содержащий сведения об игрушках,указывается название игрушки,ее стоимость в рублях и возрастные границы (например:игрушка может предназначаться для детей от 2 до 5 лет). Определить стоимоть самого дорогого конструктра
Отправлен: 20.10.2008, 21:12
Вопрос задала: Еленка (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Verena
Здравствуйте, Еленка! Предполагаю, работа с типизированным файлом. Описываем запись следующего вида:
Код:
Type Toy = record {Запись} name: string [50]; {Название} price: word; {Цена} LowAge: byte; {Нижняя граница возраста} HighAge: byte; {Верхняя граница возраста} end;
И
задаём фал данного типа (типа Toy). Читаем из него записи по одному и сравниваем цены на конструкторы. Точка отсчёта - цена = -1, такой цены или меньшей не может реально встретиться, поэтому если она останется отрицательной, значит конструкторы в файле не описаны. Программа будет работать только с файлом записей данного вида. Код в приложении. Удачи!
Приложение:
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: Практикант)
Ответ отправлен: 20.10.2008, 21:31
Вопрос № 147.911
Здравствуйте, уважаемые эксперты! Прошу помочь с решением задачи: Дана строка, состоящая из групп нулей и единиц. Каждая группа отделяется от другой одним или несколькими пробелами. Найти количество групп с пятью символами.
Под группами нулей и единиц имеются в виду группы, состоящие из либо одних нулей, либо одних единиц. Например: 0000 11111 000 11
Написала функцию, которая находит количество групп с 5 символами, но как-то коряво получилось. Подскажите, пожалуйста, что исправить или предложите
свои варианты. А особенно интересует, какую функцию следует написать для проверки на то, что в группу входят только нули или единицы
Заранее,спасибо
Приложение:
Отправлен: 20.10.2008, 21:29
Вопрос задала: Gerta (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Пупорев Юрий Борисович
Здравствуйте, Gerta! Я сильно не вникал в Ваш код, не люблю разбираться в чужих кодах, тем более он неверный, Вы немного не с того начали. Я предлагаю сначала сделать логическую функцию, которая ропределяет все ли символы в группе одинаковые, а потом, пробегая по строке ,просматривать все группы и считать те, длина которых = 5 и они состоят из одинаковых символов. Код с пояснениями в приложении. Думаю легко разберетесь. Успехов!
Приложение:
Ответ отправил: Пупорев Юрий Борисович (статус: Специалист)
Ответ отправлен: 23.10.2008, 09:55 Оценка за ответ: 5 Комментарий оценки: Спасибо за помощь
Вопрос № 147.918
Дорогие эксперты помогите пожалуйста найти ошибку и исправить.... Когда я задаю точки (1,0),(2,0),(3,0),(4,0) должно вывести среднее расстояние 1,666 но в чём то ошибка((код в приложении, вот сама задача: Дано множество точек плокости. Найти среднее расстояние мужду точками. Указать пары точек, расстояние между которыми больше среднего.
Отвечает: Шичко Игорь
Здравствуйте, S K A L T ! Ваша основная ошибка заключается в том, что при нахождении среднего расстояния Вы делите на общее число элементов, а нужно делить на количество ненулевых элементов. Примерный код - в приложении.
Приложение:
Ответ отправил: Шичко Игорь (статус: Студент)
Ответ отправлен: 21.10.2008, 10:16 Оценка за ответ: 5
Отвечает: Зенченко Константин Николаевич
Здравствуйте, S K A L T !
Программа в приложении. В программе исключены повторные вычисления отрезков, т.е. учитывается только один раз отрезок между точками АВ и исключается отрезок ВА. Генератор случайных чисел не сбрасывал (randomize;). вопросы по программе задавайте в мини-форум. Удачи!
Приложение:
--------- Итерация от человека, рекурсия — от Бога (Питер Дойч)
Ответ отправил: Зенченко Константин Николаевич (статус: Профессор) Украина, Киев Тел.: +380979536619 Адрес: Украина г.Киев ---- Ответ отправлен: 21.10.2008, 12:55 Оценка за ответ: 5
Вопрос № 147.956
Здравствуйте...вынужденна обратиться за помощью... помогите, пожалуйста написать программки..думаю, труда особо не составит, заранее благодарю...
осуществить циклический сдвиг последовательности заданной в файле до превого положительного элемента
перевернуть последовательноть ( с конца на начало)
проверить последовательность на предмет возрастания, убывания
домножить все числа последовательноста ее максимальный элемнт
Даны 2 числовые последоватльности а)увеличить вторую
на среднее арифметическое первой б) вывести все элементы 1 посл-ти, которых нет во2 в) поэлементно сложить две последовательности
Отправлен: 21.10.2008, 04:43
Вопрос задала: Vampi (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Чабаненко Владислав Дмитриевич
Здравствуйте, Vampi! (Замечание: "проверить последовательность на предмет возрастания, убывания" - начальную или перевёрнутую последовательность, я описал перевёрнутую, если надо исправить - пишите). Посылаю Вам ответ на первый вопрос, см. приложение, если что непонятно - спрашивайте. Удачи!
Отвечает: Пупорев Юрий Борисович
Здравствуйте, Vampi! Решения задач с пояснениями в приложении.
Приложение:
Ответ отправил: Пупорев Юрий Борисович (статус: Специалист)
Ответ отправлен: 23.10.2008, 08:36
Вопрос № 147.957
Здравствуйте Уважаемые эксперты! Помогите пожалуйста решить такую задачу. Известны результаты анкетирования ста человек. Анкета состоит из 150 пунктов, анкета состоит из 150 пунктов, на которые предлагалось ответить утвердительно, отрицательно или "нет определенного мнения по данному вопросу". Напечатайте номера тех пунктов анкеты, на которые были получены только утвердительные и только отрицательные ответы всех опрошенных (если,конечно, такие пункты есть). Как я уже разобрался это будет матрица
100x150, которая будет заполнена значениями -1,1,0 (-1-отрицательно, 1-утвердительно, 0-нет определенного мнения по данному вопросу). Заранее благодарен за рассмотреннее данной задачи.
Отправлен: 21.10.2008, 05:29
Вопрос задал: Kensay (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Зенченко Константин Николаевич
Здравствуйте, Kensay!
Ответы на анкету генерируются автоматически, а так как нельзя предсказать результаты, то в программе есть строчки для проверки работы.
{фальсифицируем результаты опроса} for i:=1 to 100 do a[i,5]:= 1; for
i:=1 to 100 do a[i,9]:=-1;
Удачи!
Приложение:
--------- Итерация от человека, рекурсия — от Бога (Питер Дойч)
Ответ отправил: Зенченко Константин Николаевич (статус: Профессор) Украина, Киев Тел.: +380979536619 Адрес: Украина г.Киев ---- Ответ отправлен: 21.10.2008, 15:17
Отвечает: Шичко Игорь
Здравствуйте, Kensay! Строки - это анкеты, столбцы - это пункты анкеты. В алгоритме нужно пробегать по столбцу, предварительно установив флажки. При отсутствии переключения - заносить в массив номеров столбцов. Примерный код - в приложении.
Приложение:
Ответ отправил: Шичко Игорь (статус: Студент)
Ответ отправлен: 21.10.2008, 16:09
Отвечает: Шипулин Кирилл Владимирович
Здравствуйте, Kensay! я реализовал программу с помощью одномерного массива, задача в приложении
Ответ неверный, т.к. нужно найти воросы анкеты, на которые ответили 100 человек одинаково. В ответе эксперта проверяется ответы только одного человека, на все вопросы.
--------
∙ Отредактировал: Зенченко Константин Николаевич, Профессор
∙ Дата редактирования: 21.10.2008, 18:22 (время московское)