Форум программистов, компьютерный форум, киберфорум
Lisp
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 14.10.2018
Сообщений: 6

Функция: разложить целое число k на целые числа a и b так, чтобы k=3a+5b

24.10.2018, 17:35. Показов 1403. Ответов 4

Студворк — интернет-сервис помощи студентам
Дана задача разработать функцию, позволяющую разложить целое число k на целые числа a и b так, чтобы k=3a+5b.


У меня получились:

Lisp
1
2
3
4
5
6
7
(defun task (k)
(setq a 0)
(setq b 0)
(do (
(a(+ a 1))
(b(+ b 1)))
((=k(+(* a 3)(* b 5)))(print a) (print b))))
Но это не работает. Как я понимаю, тут нужен двойной цикл, но как его осуществить - всё никак не пойму. Использую HomeLisp

Help me, please
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.10.2018, 17:35
Ответы с готовыми решениями:

Разложить число в массив так, чтобы элементами была последовательность с единицы о этого числа
как разложить число и записать в массив....например дано 4 4= 4 3 2 1 в масив записать 4 3 2 1

Сделать так, чтобы функция возвращала как целые, так и дробные значения
Задача: нужно найти среднее арифметическое чисел в одномерном массиве разных типов. В main() у пользователя спрашивается размер...

Дано вещественное число A и целое число N(>0). Вывести все целые степени числа A от 1 до N
Дано вещественное число A и целое число N(>0). Вывести все целые степени числа A от 1 до N Решить через For и если будет не трудно...

4
 Аватар для _sg
4709 / 4404 / 380
Регистрация: 12.05.2012
Сообщений: 3,101
24.10.2018, 18:39
как вариант:
Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
(defun k-sums (k n m)
  (loop for a in (row k n)
        nconc (loop for b in (row k m)
                    when (= (+ a b) k)
                    collect (list (/ a n) (/ b m)))))
 
(defun row (k n)
  (loop for e from 0 to (truncate k n)
        collect (* e n)))
 
> (k-sums 234 3 5)
((3 45) (8 42) (13 39) (18 36) (23 33) (28 30) (33 27) (38 24) (43 21) (48 18)
 (53 15) (58 12) (63 9) (68 6) (73 3) (78 0))
Добавлено через 18 минут
Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
(defun k-sums (k n m)
  (loop for a in (row k n)
        nconc (loop for b in (row k m)
                    when (= (+ a b) k)
                    collect `(,(/ a n) ,(/ b m)))))
 
(defun row (k n)
  (loop for e upto (truncate k n)
        collect (* e n)))
 
> (k-sums 234 3 5)
((3 45) (8 42) (13 39) (18 36) (23 33) (28 30) (33 27) (38 24) (43 21) (48 18)
 (53 15) (58 12) (63 9) (68 6) (73 3) (78 0))
2
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
24.10.2018, 20:38
Учите матчасть. Циклы тут вообще не нужны, формула есть: a = (2 + 5n)k, b = (-1 - 3n)k, где n может быть произвольным целым числом.
3
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,709
Записей в блоге: 14
24.10.2018, 20:40
Лучший ответ Сообщение было отмечено _sg как решение

Решение

HomeLisp:

Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
(defun decomp (k a b)
 (let ((r nil))
  (iter (for i from 0 to (\ k a))
     (iter (for j from 0 to (\ k b)) 
           (when (= k (+ (* i a) (* j b))) (collecting (list i j) into r)))) r))
 
==> DECOMP
 
(decomp 16 3 5)
==> ((2 2))
 
(decomp 65 3 5)
==> ((0 13) (5 10) (10 7) (15 4) (20 1))
2
0 / 0 / 0
Регистрация: 14.10.2018
Сообщений: 6
30.10.2018, 13:41  [ТС]
Всем огромное спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.10.2018, 13:41
Помогаю со студенческими работами здесь

Дано вещественное число А и целое число N(>0) Используя один цикл, вывести целые степени числа А от 1 до N
5. Дано вещественное число А и целое число N(>0). Используя один цикл, вывести целые степени числа А от 1 до N.

Дописать программу так, чтобы в массив вводились как целые числа так и вещественные
помогите дописать программу так чтобы в массив вводились как целые числа так и вещественные #include <stdio.h> #include...

Дано вещественное число A и целое число N (> 0). Используя один цикл, вывести все целые степени числа A от 1 до N.
Дано вещественное число A и целое число N (> 0). Используя один цикл, вывести все целые степени числа A от 1 до N и используя цикл с...

Дано вещественное число A и целое число N (>0). Используя один цикл, вывести все целые степени числа A от 1 до N
Дано вещественное число A и целое число N (>0). Используя один цикл, вывести все целые степени числа A от 1 до N.

Дано вещественное число A и целое число N (> 0). Используя один цикл, вывести все целые степени числа A от 1 до N
Дано вещественное число A и целое число N (> 0). Используя один цикл, вывести все целые степени числа A от 1 до N. помогите с кодом как...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru