написать программу на си шарп или паскалеДля строительства требуются доски в количестве не менее А куб.м. Имеются доски 2-х видов. При обработке i-го вида доски получается рi ед. отходов. Цена доски
i-го вида - сi , объем - vi Денежный фонд ограничен B. В каком количестве следует закупить доски каждого вида, чтобы отход был минимален?или объясните мне задачу(какую формулу мне надо вписать или не надо)
1| Объявление переменных a,b и c типа integer (или int, числовые переменные)
2| Начало программы
3| Присваивание значений переменным a,b,c. Всем им присвоили значение 0.
4| Простыми словами: пока a умножить на 2 меньше 200, то
5| Присваивание значений переменным: b = b + 3
6| c = c - 1
7| a = a + b + c. Тут хочу пояснить: при значении этих переменных 0, a = 0 + 3 - 1, т.е. a = 2. Возвращаемся к началу цикла, т.к. 2 * 2 меньше 200: b = 3 + 3; c = -1 - 1; a = 2 + 6 - 2, т.е. 6. И так далее: 12, 20, 30, 42, 56, 72, 90, 110.
8| Конец цикла while (4 строка).
9| Напишем a - 10 (110 - 10 = 100)
10| Конец программы.
Я вообще не знаю Pascal (даже не начинал изучать), поэтому тут могут быть некоторые неточности или слишком заумные слова, надеюсь на понимание :)
Чтобы перевести число в двоичную систему (в таком виде каждый его разряд будет отображать состояние соответствующего бита), нужно делить его на основание системы (то есть, делить на два).
Но, деление нужно делать с остатком (т.е. делим нацело и пишем результат и целый остаток от деления- либо ноль, либо единица):
42 : 2 = 21 (остаток 0)
21 : 2 = 10 (остаток 1)
10 : 2 = 5 (остаток 0)
5 : 2 = 2 (остаток 1)
2 : 2 = 1 (остаток 0)
1 : 2 = 0 (остаток 1)
Всё, деление окончено, осталось только составить из остатков (начиная с последнего) двоичное число. Вот что мы получим в итоге:
42₁₀ = 101010₂
Можно само деление делать уголком (смотри приложенную картинку). Там, красным обозначены остатки от деления и последний результат (единица), с которой и начинают составлять двоичное число.