How to fix this loop to get the desired output ?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Aswin Sandirakumaran
el 23 de Mayo de 2018
Comentada: Majid Farzaneh
el 23 de Mayo de 2018
New_Td = [4,1,1]
for t = New_Td
for b = 1:t
duplicate(b) = 0;
r(b) = 0;
fprintf('Hai from %i\n',t);
disp(duplicate);
end
end
Output I am getting look like this: ->>>> WRONG OUTPUT WHICH I AM GETTING
if true
Hai from 4
0
Hai from 4
0 0
Hai from 4
0 0 0
Hai from 4
0 0 0 0
Hai from 1
0 0 0 0
Hai from 1
0 0 0 0
end
But CORRECT OUTPUT SHOULD BE LIKE THIS:
if true
Hai from 4
0
Hai from 4
0 0
Hai from 4
0 0 0
Hai from 4
0 0 0 0
Hai from 1
0
Hai from 1
0
end
0 comentarios
Respuesta aceptada
Majid Farzaneh
el 23 de Mayo de 2018
Hi,
New_Td = [4,1,1]
for t = New_Td
duplicate=[];
for b = 1:t
duplicate(b) = 0;
r(b) = 0;
fprintf('Hai from %i\n',t);
disp(duplicate);
end
end
1 comentario
Majid Farzaneh
el 23 de Mayo de 2018
At the first time for t=4, duplicate length become 4. When t become 1, duplicate length is still 4.
You should destroy duplicate and build it again after each iteration. The code above is work.
Más respuestas (0)
Ver también
Categorías
Más información sobre Loops and Conditional Statements en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!