Задача 1
От: ukrsonic  
Дата: 29.11.07 03:25
Оценка:
Здравствуйте,

вот в универе заставили решить задачку на Delphi, я бы на С++ или на PHP решил бы, а вот с Delphi пока не особо знаком. Прошу помощи:confused:

Задача 1. Таблица выиграшей денежной лотереи представляется в виде массива номеров, которые выиграли a1,...,an и массивом выиграшей в рублях p1,..,pn (pi — это выиграш, который выпадает на номер ai (i=1,...,n)). Вычислить суммарный выиграш, который выпадает на билет с номерами b1,...,bm. Для развязания задачи использовать алгоритм деления пополам.

Мои пояснения к задаче, для лучшего понимания:
Допустим это массив выигрышных номеров: a =(1, 2, 3, 4, 5,...,36)
Это массив выиграшей в рублях: p = ( 3, 6, 1, 5, 8,...,1) руб
т.е. если выбрать из массива выигрышных номеров число 4 то выигрыш будет равен 5 руб и т.д.

Допустим лотерея 6 из 36,
делаем ввод 6 чисел к примеру 2, 5, 18, 22, 30, 32
загоняем их в массив b

далее циклами вычисляем ключи чисел, 2, 5, 18 ... в массиве a

потом тупо по полученным ключам вытаскиваем из массива P суммы денег и плюсуем их.

Что касается алгоритма деления пополам, я никогда не применял. Теоретически массив делится пополам и определяем в какую сторону перебирать значения. Это типа делается для ускорения процесса вычисления.

Буду очень признателен за неоценимую помощ!
Артем
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.