How can i repeat a formula without for loop?

Hi,
I want to repeat my formula according to p value. For this purpose, for loop can be easily used, but i should not implement a loop for this work and unfortunately didn't find an effective solution for this.
Assume that A and C are matrices like
A = [ 1 2; 3 4]
C = [5 6; 7 8]
B matrix is:
B = [CA CA^2 CA^3 ... CA^p]' (p may be equal to any number)
Is there any way to run this without any loop?
Thanks,
EDIT: Performing of this work by using for loop:
clear all
clc
i = [1:10]
A = [1 2 ; 3 4]
C = [ 5 6 ; 7 8]
for i = 1:10
B{i} = [C*A^i]
end
B = transpose(cell2mat(B))

2 Kommentare

if you mean C*(A^p) you can improve the code by
B=cell(1,10);
B{1}=C*A;
for p=2:10
B{i}=B{i-1}*A;
end
Volkan Yangin
Volkan Yangin am 8 Jul. 2021
Thanks, but i struggle to make same thing without using any loop.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

G A
G A am 8 Jul. 2021

0 Stimmen

M = [1,2; 3,4];
LM=log(M);
A = 1:5;
B = num2cell(A);
C = cellfun(@(x) {x*LM}, B);
D = cellfun(@(x) {exp(x)},C);
D{:}

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 8 Jul. 2021

Beantwortet:

G A
am 8 Jul. 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by