IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Задача про монеты
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 38
Пол: Мужской

Репутация: -  0  +


задача такая: Cоставить программу определяющюю сдачу с рубля наименьшим количеством монет.
Используемые монеты: 1коп, 2коп, 3коп, 5коп, 10коп, 15коп, 20коп, 50коп
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 6)
сообщение
Сообщение #2


Гость






Стоп... Это - олимпиадная задача: Здесь - условия , поэтому тема пока закрыта... Решения олимпиадных задач с олимпиад, проходящих в настоящее время - не будет...

Добавлено через 12 мин.
P.S. Приводи свою попытку решения задачи, если она у тебя есть, поможем разобраться что не так.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 38
Пол: Мужской

Репутация: -  0  +


 program Pr1;
const
Nmonet=8;
type
Tmassive=array[1..Nmonet] of real;
var
sdaha,price:real;
monet:Tmassive;
numb:integer;
function Podshet(const rnd:real):integer;
var
tmp:real;
i,count:integer;
begin
count:=0;
tmp:=rnd;
i:=1;
repeat
if tmp-monet[i]>=0 then
begin
tmp:=tmp-monet[i];
count:=count+1;
end
else
i:=i+1;

until tmp=0 ;
Podshet:=count;
end;
procedure fillMass;
begin
monet[1]:=0.5;
monet[2]:=0.2;
monet[3]:=0.15;
monet[4]:=0.1;
monet[5]:=0.05;
monet[6]:=0.03;
monet[7]:=0.02;
monet[8]:=0.01;
end;
begin
fillMass;
writeln('Vvedite LLEHY TOBAPA');
readln (price);
sdaha:=1-price;
numb:=Podshet(sdaha);
writeln(numb);
readln;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


?
***

Группа: Пользователи
Сообщений: 283
Пол: Мужской

Репутация: -  4  +


да че мучатся давать здачу нада по 1 коп, шоб побольше было lol.gif

все просто, береш масив от 1 до 8. будем щитать что а1 это 1 коп, а2 - 2 коп ....
берем здачу смотрим если она больше 50 коп то отнимаем 50 и а8:=а8+1 иначе смотрим если она меньше 50 то смотрим для 25 и так пока здача не стала 0.
на выходе получается масив
де каждый елемент соответствует количеству монет yes2.gif

хехе пока я набирал текст уже програмку напечатали)))

Сообщение отредактировано: amega -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 38
Пол: Мужской

Репутация: -  0  +


написанная мной прога не работает. Подскажите пожалуйста где что не так? и где что можно улучшить
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Lodar', задача решается гораздо проще - по вышеописанному алгоритму:

program Pr1;
const
Nmonet=8;
type
Tmassive=array[1..Nmonet] of integer;
const
monet:Tmassive = (50, 20, 15, 10, 5, 3, 2, 1);

var
price: integer;
count, total: integer;
i: integer;
begin
writeln('Vvedite LLEHY TOBAPA');
readln (price);

i := 1;
while price > 0 do begin
count := 0;
while price >= count * monet[i] do inc(count);
dec(count);
if count > 0 then begin
writeln(count, ' coins of ', monet[i]);
dec(price, count * monet[i]);
inc(total, count);
end;
inc(i);
end;
writeln('total coins: ', total);
readln;
end.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


?
***

Группа: Пользователи
Сообщений: 283
Пол: Мужской

Репутация: -  4  +


Цитата
Стоп... Это - олимпиадная задача: Здесь - условия

а как ты узнал что эта олимпиадная задача, если ты по таким сайтам сидиш то не мог бы дать ссылки на такие олимпиады rolleyes.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 19:27
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name