0 / 0 / 0
Регистрация: 08.10.2017
Сообщений: 151
1

Помогите, пожалуйста, сделать вложенный цикл, но не через LOOP...

17.04.2019, 22:34. Показов 1296. Ответов 5
Метки нет (Все метки)

Помогите, пожалуйста сделать вложенный цикл примера ниже, но не через LOOP
Изображения
 
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.04.2019, 22:34
Ответы с готовыми решениями:

Побуквенный вывод слова через цикл Loop (Masm32) DOS
вообщем столкнулся с проблемой. к примеру ввожу ' LSD49 $' выводится через цикл loop (в ECX - 4)...

Переписать вложенный цикл через Stream Api
Подскажите, пожалуйста, как переписать такой метод с вложенным циклом через Stream API: public...

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

Как сделать сначала вложенный цикл так чтобы i не изменялась а j менялась
Как сделать сначала вложенный цикл так чтобы i не изменялась а j менялась, и подсчитать сколько...

5
4516 / 3510 / 358
Регистрация: 12.03.2013
Сообщений: 6,034
18.04.2019, 04:32 2
http://clhs.lisp.se/Body/s_tagbod.htm
3
Модератор
Эксперт функциональных языков программированияЭксперт Python
33868 / 18897 / 3979
Регистрация: 12.02.2012
Сообщений: 31,678
Записей в блоге: 13
18.04.2019, 07:02 3
HomeLisp:

Lisp
1
2
3
4
5
6
7
8
9
10
11
(defun task (k s r)
  (let ((r 0))
     (iter (for i from 1 to k)
           (iter (for y from 1 to s) 
               (summing  (/ (- r 4) (+ y y 1)) into r))) r)) 
 
==> TASK
 
(task 5 6 2)
 
==> -4445476837477900/14530697473149
1
4684 / 4380 / 379
Регистрация: 12.05.2012
Сообщений: 3,087
18.04.2019, 08:49 4
Lisp
1
2
3
4
5
6
7
(defun sum-loop (k s r)
  (loop for a from 1 to k sum
        (loop for b from 1 to s sum
              (/ (- r 4) (+ b b 1)))))
 
> (sum-loop 5 6 2)
-86048/9009
Lisp
1
2
3
4
5
6
7
8
9
10
(defun sum-recursion (k s r &optional (z 0))
  (if (zerop k) z
      (sum-recursion (1- k) s r (+ z (sum k s r)))))
 
(defun sum (k s r &optional (z 0))
  (if (zerop s) z
      (sum k (1- s) r (+ z (/ (- r 4) (+ s s 1))))))
 
> (sum-recursion 5 6 2)
-86048/9009
https://www.wolframalpha.com/i... y%3D1+to+6
Lisp
1
2
> (* -86048/45045 5)
-86048/9009
Добавлено через 14 минут
Lisp
1
2
3
4
5
6
(defun sum-loop (k s r)
  (* k (loop for b from 1 to s
             sum (/ (- r 4) (+ b b 1)))))
 
> (sum-loop 5 6 2)
-86048/9009
Добавлено через 1 минуту
Lisp
1
2
3
4
5
6
7
8
(defun sum-recursion (k s r) (* k (sum s r)))
 
(defun sum (s r &optional (z 0))
  (if (zerop s) z
      (sum (1- s) r (+ z (/ (- r 4) (+ s s 1))))))
 
> (sum-recursion 5 6 2)
-86048/9009
Добавлено через 8 минут
Lisp
1
2
3
4
5
6
7
(defun sum-loop (k s r)
  (loop repeat k sum
        (loop for b from 1 to s
              sum (/ (- r 4) (+ b b 1)))))
 
> (sum-loop 5 6 2)
-86048/9009
Добавлено через 12 минут
Lisp
1
2
3
4
5
6
(defun sum-loop (k s r &aux (z 0))
  (* k (dotimes (b s z)
         (setf z (+ z (/ (- r 4) (+ b b 3)))))))
 
> (sum-loop 5 6 2)
-86048/9009
1
4516 / 3510 / 358
Регистрация: 12.03.2013
Сообщений: 6,034
18.04.2019, 19:32 5
Лучший ответ Сообщение было отмечено Catstail как решение

Решение

Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
(defun f (k s r)
  (prog ((y 1)
         (i 1)
         (sum 0))
   check-counters
     (if (> i k)
         (go result)
         (go sum))
   sum
     (incf sum (/ (- r 4)
                  (+ (* 2 y) 1)))
     (go next-counter)
   next-counter
     (if (< y s)
         (incf y)
         (progn
           (incf i)
           (setf y 1)))
     (go check-counters)
   result
     (return sum)))
1
4684 / 4380 / 379
Регистрация: 12.05.2012
Сообщений: 3,087
19.04.2019, 09:11 6
Lisp
1
2
3
4
5
6
(defun sum-[r-4]/[2y+1] (k s r)
  (* k (reduce #'+ (loop for a from 1 to s collect a)
               :key #'(lambda (e) (/ (- r 4) (+ e e 1))))))
 
> (sum-[r-4]/[2y+1] 5 6 2)
-86048/9009
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.04.2019, 09:11
Помогаю со студенческими работами здесь

Цикл for/Цикл while Помогите срочно пожалуйста...
1.Вычислить и вывести на экран в виде таблицы значения функции F от x1 до x2 с шагом dx. где a, b...

Разветвляющийся цикл помогите пожалуйста
Проверить истинность высказывания: &quot;Данные числа x,y являются координатами точки, лежащей в первой...

задача for(цикл)помогите пожалуйста
Написать программу, которая выводит таблицу значений функции у = |х|. Диапазон изменения аргумента...

Начать вложенный цикл не с первого элемента и по условию вернуться в основной цикл
Добрый день. На самом деле, проблема чуть шире, чем в названии топика. Есть цикл, в котором идёт...

Как переделать данный цикл for во вложенный цикл foreach?
Добрый день, как переделать данный цикл во вложенный цикл foreach? for (i in 0 until...

Цикл: Помогите, пожалуйста, решить задачу с использованием оператора for
import math x = int(input('Введите число:')) n = int(input('Введите число:')) S = 0 k = 1...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru