Форум программистов, компьютерный форум, киберфорум
Наши страницы
PascalABC.NET
Войти
Регистрация
Восстановить пароль
 
Nazarok
0 / 0 / 0
Регистрация: 31.01.2015
Сообщений: 2
#1

Создать массив, разделить каждый его элемент на определенное число - PascalABC.NET

31.01.2015, 12:41. Просмотров 487. Ответов 4
Метки нет (Все метки)

У меня такая проблема, у меня номиналы 5, 10, 50 и 100. Мне нужно, чтобы каждый из этих номиналов, а их число может быть до 50000 разделился на 5. То есть, если есть, к примеру такой массив: 5 20 10 50, то в итоге получилось, что вместо 5 у меня -1 вместо 20 у меня 3, вместо 10 - 2, вместо 50 - 9 и вместо 100 - 18, а потом, все это суммировалось, и получилось по моему примеру 12.
http://www.cyberforum.ru/pascal/thread1251152.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.01.2015, 12:41
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Создать массив, разделить каждый его элемент на определенное число (PascalABC.NET):

Подпрограммы: разделить каждый из элементов массива на его максимальный отрицательный элемент
Ввести одномерные массивы X1(n1), X2(n2) и X3(n3) . Разделить каждый из...

Создать массив, каждый элемент которого равен сумме двух предыдущих элементов
Известны два первых элемента массива B: B=4, B=8.Создать массив, каждый элемент...

Создать массив C, где каждый элемент равен 1 (true), если соответствующие элементы A и B имеют одинаковый знак
Даны два двумерных массива A и B одинаковой размерности. Создать массив C, где...

Каждый элемент массива разделить на диагональный, стоящий в том же столбце
помогите решить, пожалуйста!! В матрице Z(m,m) каждый элемент разделить на...

дан одномерный массив А. Поменять местами последний положите и второй элемент массива. Разделить все элементы с четными номерами на первый элемент.
дан одномерный массив А. Поменять местами последний положите и второй элемент...

4
Puporev
Модератор
54131 / 41764 / 28875
Регистрация: 18.05.2008
Сообщений: 98,290
31.01.2015, 12:49 #2
Цитата Сообщение от Nazarok Посмотреть сообщение
вместо 50 - 9 и вместо 100 - 18,
Это как?
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
25609 / 17162 / 6825
Регистрация: 22.10.2011
Сообщений: 30,359
Записей в блоге: 6
31.01.2015, 12:52 #3
Как из 20 при делении на 5 получить 3 - это выше моего понимания. Тебе надо номинироваться на Шнобелевскую премию, похоже...
0
Nazarok
0 / 0 / 0
Регистрация: 31.01.2015
Сообщений: 2
31.01.2015, 14:05  [ТС] #4
Полное условие задачи.
Фирма bookface, созданная в Ужляндии, в которой работает Степан, решила установить в своих офисах автоматы по продаже чая и кофе, чтобы программисты во время перерыва могли с толком провести время.
Стоимость стакана чая и кофе в автомате предполагается установить равной пяти Ужик (такая в Ужляндии валюта). Автоматы будут принимать монеты по 5 и 10 Ужик, а также купюры в 10, 50 и 100 Ужик. Когда программисту нужно выдавать сдачу (т.е. когда программист бросил в автомат монету в 10 Ужик или купюру в 10, 50 или 100ужикив), автомат выдает сдачу монетами в пять Ужик; если же пассажир бросил в автомат монету в пять Ужик, то автомат ее сохраняет и может использовать для сдачи следующим программистам.
Очевидно, что, чтобы обеспечить возможность выдачи сдачи всем ппрограмистам, может понадобиться сначала загрузить в автомат некоторое количество монет в пять Ужик. Сейчас в офисах фирмы проходят испытания с целью определить минимальное количество монет, которые надо загрузить в автомат перед рабочим днем.
Вам дано протокол одного из таких испытаний: известный порядок, в котором программисты оплачивали свои покупки различными монетами и купюрами. Определите, какое минимальное количество монет в пять Ужик, должно было сначала находиться в автомате, чтобы всем пассажирам хватило сдачи.
Входные данные:
В первой строке входного файла находится одно натуральное число N - количество покупок в автомате, которые были совершены в ходе испытания (1 ≤ N ≤ 50000). Во второй строке находятся N натуральных чисел, каждое из которых равно номинала монеты или купюры, которую использовал очередной программист для оплаты; каждый номинал может принимать одно из четырех значений: 5, 10, 50 или 100.

Выходные данные:
В выходной файл выведите одно число - минимальное количество монет в пять Ужик, которые надо было загрузить в автомат сначала, чтобы всем программистам хватило сдачи.

Примечание:
В первом примере одна монета в пять Ужик потребуется для сдачи первом программисту и 19 монет - третьему, но при сдаче третьем можно использовать ту монету, которую бросит второй программист, поэтому сначала в автомате достаточно 19 монет.
Во втором примере сдачу третьем программисту можно представить, используя монету первого или второго покупателя, и поэтому не нужно загружать монеты в автомат сначала.
В третьем примере первому программисту нужны девять монет сдачи, и все они должны сначала находится в автомате.


И примерыExamples

Код
Input in testing.in	      Output in testing.out
3
10 5 100                      19

3
5 5 10                         0

4
50 5 5 5                       9
Добавлено через 13 минут
Puporev, помогешь?
0
CodeR
Фрилансер
3379 / 2781 / 2999
Регистрация: 08.02.2012
Сообщений: 6,648
Записей в блоге: 1
31.01.2015, 15:14 #5
Как вариант.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Var i,n,m,min,count:word;
    f,g:text;
Begin
    Assign(f,'testing.in');Reset(f);
    readln(f,n);
    min:=0;count:=0;
    For i:=1 to n do
    Begin
      read(f,m);
      m:=m-5;
      min:=min+(m div 5);
      if (m=0) then count:=count+1
      else
      Begin
        if min>count then min:=min-count else min:=0;
        count:=0;
      End;
    End;
    Assign(g,'testing.out');Rewrite(g);
    write(g,min);
    Close(f);Close(g);
End.
0
31.01.2015, 15:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.01.2015, 15:14
Привет! Вот еще темы с решениями:

Массив: Составить массив, каждый элемент которого равен среднему арифметическому элементов массивов A B C...
Даны 3 массива по 8 чисел. Нужно составить ещё один массив элементы вычисляются...

Дан одномерный массив, получить другой массив той же размерности, каждый элемент которого b[i]=a[1]+.+a[i]
Дан одномерный массив, получить другой массив той же размерности, каждый...

Дан массив C(N). Создать новый массив, заменив положительные элементы на максимальный элемент, отрицательные – на минимальный элемент, нулевые оставив
Помогите решить несколько задач по одномерным массивам 1.Дан массив C(N)....

Каждый элемент, больший 10, заменить на его квадратный корень
дан массив вещественных чисел.Каждый элемент, больший 10, заменить на его...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru