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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 03.01.2011, 14:32   #1
klaster
Пользователь
 
Аватар для klaster
 
Регистрация: 03.01.2011
Сообщений: 10
По умолчанию Решение элементарной задачи.

Всех с прошедшим новым годом! Я студент, и мне нужно в очень короткий срок - до 10ого января - решить задачу. Сама она очень проста, я пытаюсь написать требуемое сам, но из-за неимения опыта я хочу сделать ее наверняка, с вашей помощью.

Итак, задача:

"Известна денежная сумма. Разменять ее купюрами 500, 100, 10 и монетой 2 руб., если это возможно."

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

Заплачу 100 рублей, надеюсь на вашу скорую помощь
klaster вне форума
Старый 03.01.2011, 14:39   #2
Z1000000
Форумчанин
 
Регистрация: 04.05.2010
Сообщений: 495
По умолчанию

Для всех реальных денежных систем ( в том числе и твоей) подходит жадный алгоритм. Сначала набираешь самыми крупными, потом помельче и до самых маленьких. Но вот как ты сумму 5 рублей будешь разменивать монетой в 2 рубля - это для меня загадка!
Нажми на весы, поставь +
Для благодарностей : WebMoney WMR R252732729948
Z1000000 вне форума
Старый 03.01.2011, 14:53   #3
Z1000000
Форумчанин
 
Регистрация: 04.05.2010
Сообщений: 495
По умолчанию

Код:
Program Monets;
const Monet : array[1..4] of Integer = (2,10,100,500);
var
 N,K,i : Integer;
 aM : array[1..4] of Integer;
begin
i := 4;
writeln ('Введите необходимую сумму :');
readln(N);
repeat
 begin
 K := N div Monet[i];
 if K <> 0 then aM[i] := K else aM[i] := 0;
 N := N mod Monet[i];
 i := i-1;
 end
until ((N = 0) or (i = 0));

if N = 0 then
 for i:=4 downto 1 do
  writeln ('Требуется ',aM[i],' монет достоинством ',Monet[i])
else
 writeln('Невозможно разменять');

readln;
end.
Нажми на весы, поставь +
Для благодарностей : WebMoney WMR R252732729948
Z1000000 вне форума
Старый 03.01.2011, 14:56   #4
klaster
Пользователь
 
Аватар для klaster
 
Регистрация: 03.01.2011
Сообщений: 10
По умолчанию

2 Z1000000

спасибо, сейчас прогоню ее, если все ок - скину на счет вмр
klaster вне форума
Старый 03.01.2011, 15:16   #5
klaster
Пользователь
 
Аватар для klaster
 
Регистрация: 03.01.2011
Сообщений: 10
По умолчанию

Total errors: 2
illegal character , compilation failed
klaster вне форума
Старый 03.01.2011, 15:24   #6
k0tone
Пользователь
 
Аватар для k0tone
 
Регистрация: 09.11.2010
Сообщений: 99
По умолчанию

Цитата:
Total errors: 2
illegal character , compilation failed
всё работает, проверил!
Если я вам помог - нажмите на весы пот аватаркой!
k0tone вне форума
Старый 03.01.2011, 15:29   #7
Z1000000
Форумчанин
 
Регистрация: 04.05.2010
Сообщений: 495
По умолчанию

Цитата:
Total errors: 2
illegal character , compilation failed
Не знаю, что у тебя за компилятор...
У меня прекрасно собирает. См.архив.
Вложения
Тип файла: rar FreePascal.rar (20.0 Кб, 14 просмотров)
Нажми на весы, поставь +
Для благодарностей : WebMoney WMR R252732729948
Z1000000 вне форума
Старый 03.01.2011, 15:43   #8
klaster
Пользователь
 
Аватар для klaster
 
Регистрация: 03.01.2011
Сообщений: 10
По умолчанию

Вижу что прекрасно собирает, но в своей я все проверил - один в один, и все равно нет результата.

работаю с free pascal.
klaster вне форума
Старый 03.01.2011, 16:14   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

спокойнее, спокойнее.
Держите себя в рамках, пожалуйста..

Цитата:
Сообщение от klaster
но в своей я все проверил - один в один, и все равно нет результата.
klaster, ну, рассказывай, и по подробней - какой у тебя компилятор, что делаешь, какие ошибки выдаются (если выдаются, конечно), что означает - "нет результата" ?...
Serge_Bliznykov вне форума
Старый 03.01.2011, 17:27   #10
klaster
Пользователь
 
Аватар для klaster
 
Регистрация: 03.01.2011
Сообщений: 10
По умолчанию

Все работает, но я не знаю и не смогу объяснить:
- N, K, i - что это за целые значения? у меня есть догадки, но нужен точный ответ.
- aM[i] - что означает aМ?

по поводу остального имею представление, эти наверняка нелепые и глупые на ваш взгляд вопросы внесут целостность в понимание .

Рассказать подробно могу только историю о том, как меня весь семестр игнорировал препод, хотя я посещал все его пары, и теперь почти вся моя группа решает вторую задачу, а я не решил и первую, не получил зачета и вообще. Вы понимаете, жалкое зрелище.
Из учебника Павловской "Паскаль, Программирование на языке высокого уровня" я подчерпнул общие сведения, но только с вашей помощью и благодаря присланному исходнику привел свою писанину в порядок.
klaster вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение задачи в С++ Tampller Общие вопросы C/C++ 4 17.12.2012 20:17
Решение задачи alex22527 Помощь студентам 7 14.10.2010 18:07
Решение задачи на C# masicev Помощь студентам 1 15.10.2009 15:33
решение задачи TuNeR Microsoft Office Excel 2 15.10.2007 09:31