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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.01.2011, 21:13   #1
Romarrio
Новичок
Джуниор
 
Регистрация: 10.01.2011
Сообщений: 4
По умолчанию Интересная задача по Делфи

Уважаемые программисты,помогите пожалуйста решить вот такую задачу:

В одномерном массиве вещественного типа определить цифру, с которой начинается наибольшее колличество элементов.

Очень нужна помощь) Заранее благодарен)
Romarrio вне форума Ответить с цитированием
Старый 10.01.2011, 21:29   #2
Valio
Сливочное масло
Участник клуба
 
Аватар для Valio
 
Регистрация: 01.01.2011
Сообщений: 1,149
По умолчанию

Ничего интересного. Создаёшь новый массив и откапываешь часто встречающийся. Всё.
Сливочное масло Valio - компиляция как по маслу
Valio вне форума Ответить с цитированием
Старый 10.01.2011, 21:29   #3
Vaigard
Delphi and (not C)
Форумчанин
 
Аватар для Vaigard
 
Регистрация: 04.12.2010
Сообщений: 117
По умолчанию

Создай массив из первых цифр чисел. Элементов будет столько же. А потом найди наибольшее количество повторяющихся элементов.

Код:
for i:=1 to 10 do begin
repeat
z:=f[i];
f[i]:=f[i] div 10;
until f[i]=0;
m[i]:=z;
end;
Приблизительный код поиска первых цифр элементов массива f и забивания их в массив m. Здесь пример для 10 элементов в массиве. Правда, он скорее подойдет для byte или word, а у тебя числа real. Слегка сложнее, поправь немного. Z - вспомогательная переменная. Потом найди наибольшее количество повторений. Для удобства, можно отсортировать по возрастанию массив m. И сравнивая количество идущих подряд одинаковых элементов найти искомую цифру.
<--Жми на весы

Последний раз редактировалось Vaigard; 10.01.2011 в 21:33.
Vaigard вне форума Ответить с цитированием
Старый 10.01.2011, 21:58   #4
Romarrio
Новичок
Джуниор
 
Регистрация: 10.01.2011
Сообщений: 4
По умолчанию

А как найти наибольшее колличество повторяющихся? У меня с этим наибольшие затруднения...
Romarrio вне форума Ответить с цитированием
Старый 10.01.2011, 22:02   #5
Romarrio
Новичок
Джуниор
 
Регистрация: 10.01.2011
Сообщений: 4
По умолчанию

Аа....Кажется понял приблизительно....Но вот как это реализовать?
Как сравнить колличество идущих подряд одинаковых элементов?
Romarrio вне форума Ответить с цитированием
Старый 10.01.2011, 22:06   #6
Donatello
Форумчанин
 
Аватар для Donatello
 
Регистрация: 22.12.2010
Сообщений: 109
По умолчанию

ну алгоритм такой. Берешь первый элемент(он является нулевым т.к. массив начинается с нулевого элемента вродебы если не задать иначе) записываешь его в переменную. Потом эту переменную сравниваешь со следующим элементом, если он больше нулевого то его записываешь в переменную, и потом эту переменную опять сравниваешь со след элементом и т.д. до конца. Это если нада найти только максимальное значение массива, а не кол-во макс. Как то так. вот ток помочь реализовать на делфи пока не смогу, на С++ мб смог бы повозившись.
Я бы изменил мир, но бог не дает исходников (c)

И сказал мыслитель, напиши свою проблему на бумаге и ты увидишь свои ошибки.
Donatello вне форума Ответить с цитированием
Старый 10.01.2011, 22:18   #7
Romarrio
Новичок
Джуниор
 
Регистрация: 10.01.2011
Сообщений: 4
По умолчанию

Вот макс значение я нашёл бы...А вот колличество максимыальных чёт ума не приложу как сделать(((
Romarrio вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
интересная задача Знаменок Паскаль, Turbo Pascal, PascalABC.NET 0 05.10.2010 13:26
интересная задача Irisha_17_85 Помощь студентам 2 26.10.2009 19:52
Интересная задача terminadoor Помощь студентам 1 06.02.2009 20:00
Интересная задача! - DannerDOS.kz Паскаль, Turbo Pascal, PascalABC.NET 2 16.12.2008 14:04