Está en la página 1de 6

Clase Nro.

03:

CICLOS: "for", "while" e "if"

Introduccion: Los ciclos de programacion en matlab son


el: "for", "while" e "if" . Estos ciclos se utilizan bastante en
programacion.

1. CICLO "for" : Este ciclo tiene el formato:


for j=valores_de _j
comandos
end

En este ciclo "for",


 j , es igual a: valores_de _j ;
 comandos, son comandos del matlab.

Este ciclo, significa que se ejecutaran todos los "comandos"


que estan dentro del for para cada uno de los valores de j .

Ejemplos

Prob. 01: Obtener mediante el ciclo for la suma de


los terminos de un vector y tambien la suma de los
cuadrados de los mismos.

a=1:2:15;
s=0;
sc=0;

for j=1:8,
s=s+a(j)
sc=sc+a(j)*a(j)
end
s =
1
sc =
1
s =
4
sc =
10
s =
9
sc =
35
s =
16
sc =
84
s =
25
sc =
165
s =
36
sc =
286
s =
49
sc =
455
s =
64
sc =
680

otra forma de usar el for para hacer esta misma operacion:


clear all;
s=0;
sc=0;

for j=1:2:15,
s=s+j
sc=sc+j^2
end

s =
1
sc =
1
s =
4
sc =
10
s =
9
sc =
35
s =
16
sc =
84
s =
25
sc =
165
s =
36
sc =
286
s =
49
sc =
455
s =
64
sc =
680

2. CICLO "while" : Este ciclo tiene el formato:


while condicional
comandos
end

En este ciclo "while",


 condicional , es una condicion que se
pregunta
 comandos, son comandos del matlab.

Este ciclo, significa que se ejecutaran todos los "comandos"


sin la condicional es verdadero.

Ejemplos

Prob. Sumar hasta que la suma sobrepase el valor de 10.


a=1:3:21

a =
1 4 7 10 13 16 19

s=0;
j=0;

while s<=10
j=j+1
s=s+a(j)
end
j =
1
s =
1
j =
2
s =
5
j =
3
s =
12

3. CICLO "if" : Este ciclo tiene el formato:

if condicional
comandos 1 si la condicional es verdadero
else
comandos 2 si la condicional es falso
end

En este ciclo "if",


 comandos 1, comandos ejecutados si la
condicional es verdadero.
 comandos 2, comandos ejecutados si la
condicional es falso.
Prob. Sumar los valores positivos de a, similarmente sumar
los valores negativos de a.

clear all
a=randn(1,8)

a =
1.0933 1.1093 -0.8637 0.0774 -1.2141
-1.1135 -0.0068 1.5326

N=[];
P=[];

for j=1:8,
if a(j)<0
N=[N a(j)]
else
P=[P a(j)]
end
end

P =
1.0933
P =
1.0933 1.1093
N =
-0.8637
P =
1.0933 1.1093 0.0774
N =
-0.8637 -1.2141
N =
-0.8637 -1.2141 -1.1135
N =
-0.8637 -1.2141 -1.1135 -0.0068
P =
1.0933 1.1093 0.0774 1.5326

Otro ejemplo
Prob. Dado el vector a=[ 1 3 5 7 10 -13 -12], obtener la suma de los positivo y la
suma de los negativos.

solucion:
Genero el vector a:
a=[1 3 -5 7 10 -13 -12]

a =
1 3 -5 7 10 -13 -12

inicializo los valores de la suma:


sp=0;sn=0;
for j=1:7,
if a(j)<0
sn=sn+a(j);
else
sp=sp+a(j);
end
end
La respuesta sera:
sn
sp

sn =
-30
sp =
21

Prob. Dado el vector a=[ 1 -3 -4 6 -8 7 10 -11],


 Determinar la suma de los pares positivos
 Determinar la suma de los impares negativos
 Determinar la suma de los impares positivos

solucion

Creo el vector a:

a=[ 1 -3 -4 6 -8 7 10 -11],

a =
1 -3 -4 6 -8 7 10 -11
El numero de terminos del vector a, viene daDO POR:

nroterm=length(a)

nroterm =
8

spp=0;
sin=0;
sip=0;

for j=1:nroterm
if a(j)<0,
v=a(j)/2
if v-

También podría gustarte