Está en la página 1de 12

PASO 2 – Practica 2

SENTENCIAS DE CONTROL DE FLUJO

TUTOR: Diego Fernando Vasco

Estudiante: Edinson Guillermo Mendoza leon

Código: (13716216)

Grupo: 203036A_761

Universidad Nacional Abierta y a Distancia UNAD

Escuela De Ciencias Básicas, Tecnología e Ingenieria (ECBTI)

Ingeniería Electrónica

Bucaramanga Abril 2020


INTRODUCCION

Con esta práctica busco la interaccion con los comandos for – while de
ciclo / bucles o llamados en loops Matlab, aprender generar matrices
cuadradas de números aleatorios y buscar algún numero en específico
en ella.

Identificar ingreso de datos, el proceso de los mismos y mostrar


validaciones de los datos ingresados.
Actividades a desarrollar:
Dirección del video en Youtube de la practica 2.
https://www.youtube.com/watch?v=rLg-1ThEdbM&t=675s
PRÁCTICA 2.

1. Realice un programa que genere una matriz cuadrada de números


aleatorios de orden “m” en un rango de números determinado por el
usuario y permita buscar un dato en ella e indicar cuantas veces está
repetido y en que posiciones.
Una vez ubicado los datos, debe dar la posibilidad de modificar
aquellos que el usuario indique por el valor que de igual forma él
determine. Al final mostrar la nueva matriz modificada.

Generamos nuestra matriz con comando randi para que sea aleatoria
clc, clear, close
% Toma de datos:
% nombramos las variables a lo que estan
representando...
% Ejemplo Tamaño de Matriz / tamMatriz...
% Comando input para el ingreso de los datos desde
nuestro teclado...
tamMatriz = input('Ingrese el tamaño de la matriz: ');
% numMayor numero mayor que vamos a ingresar de nuestra
matriz...
numMayor = input('Ingrese el numero mayor: ');
% numMenor numero menor que vamos a ingresar de nuestra
matriz...
numMenor = input('Ingrese el numero menor: ');
% Proceso de datos:
% Nuestra matriz se llama numeros...
% comando rand para ingresar los numeros aleatoreos de
nuestra matriz /
% escribimos randi para que sean numeros aleatoreos
enteros...
% uso de corchetes para la generacion de matrices...
numeros = randi( [numMenor numMayor], tamMatriz,
tamMatriz);
% comando disp para mostrar la Matriz...
disp('La matriz es: ')
disp(numeros)
% variable numBuscar para ingresar titulo de numero a
buscar
numBuscar = input('Ingrese el numero a buscar: ');

Ingresamos una variable posiciones para que nos guarde en memoria el


vector donde tenemos el numero a buscar (numBuscar), también
variable contar = 0 para llevar el conteo de cuanto se repite numBuscar

% posiciones lo creamos para que nos guarde el vector


donde tenemos la
% coincidencia y no perder la informacion...
posiciones = [];
%Variable contadora para llevar el conteo de la
variable...
cuenta = 0;

Utilizamos el ciclo o bucle for para realizar un paso repetitivo en esta


segunda parte de nuestro programa identificamos la ubicación del
número a buscar dentro de la matriz creada y llevamos el conteo de
cuantas veces se repite.

% Comando for lo utilizamos para realizar un paso


repetitivo...
% for necesita un nicio un delta o variacion y un fin..
% en este caso for = i para buscar en las filas el
numero que deseamos...
% for = j para buscar en las columnas...
% filas = i
% columnas = j
% for va realizar en este caso el paso o recorrido del
tamaño de la matriz..
for i = 1 : tamMatriz
for j = 1 : tamMatriz
% comando if ejecutar instrucciones si la
condicion es verdadera o condiciones
conocidas...
% en este caso introducimos la matriz llamada
numero y entre
% parentesis (i,j) que serian las fias y
columnas...
% se coloca la condicion == para el numero
numBuscar / comparacion...
if (numeros(i,j) == numBuscar)
% aqui mostramos nuestras posiciones del
vector a buscar numBuscar...
% comando vertcat concatenacion vertical, me
va estar guardando
% una fila y una columna verticalmente cada
vez que se cumpla la variable
posiciones = vertcat(posiciones, [i j]);
% Comando fprintf lo utilizaoms para mostrar
mensaje con muchas variables...
% colocamos en fprintf las "" para mostrar
nuestro mensaje y
% entre parentesis(%d,%d) para mostrar el
numero decimal / va mostrar filas y
columnas...
% anti \n" funciona como un enter...
fprintf("Posicion (%d,%d).\n", i, j);
% variable cuenta se renombra / llevamos en
conteo de la
% repeticion o coincidencias tenemos...
cuenta = cuenta + 1;
% siempre todos los ciclos debemos cerrarlos
end..
end
end
end
Con la siguiente línea de programación vamos a mostrar el numBuscar y
la cantidad de veces que se repite.
% vamos a mostrar el numero a buscar y cuantas veces se
repite
% utilizamos el comando fprintf el primer %d nos muestra
numBucar
% el segundo %d nos muestra las repeticiones cuenta...
fprintf("\nEl numero %d se repite %d veces.\n",
numBuscar, cuenta);

Utilizamos nuevamente el ciclo o bucle for para cambiar el numero


buscado en la matriz y mostrar la matriz modificada.
for i = 1 : cuenta
% con fprintf nos va a mostrar las posiciones donde
hay conincidencias...
fprintf("Posicion (%d,%d).\n", posiciones(i,1),
posiciones(i,2));
% llamamos nuestra varible cambio para identificar
el punto donde le
% decimos al programa donde realizar el cambio del
numBuscar input...
%introducimos una coma (,) que es un parametro de
entrada colocamos la
% s donde ella va ser nuestro caracter o un string
de entrada
cambio = input('Desea cambiar el numero (s/n):
','s');
% Ponemos una condicion if para realizar el cambio
de numBuscar
if (cambio == 's')
% aqui tenemos la variable matriz / posicion que
guardamos primera
% fila primera columna / misma fila segunda
columna aqui es donde
% estamos entrando a la posicoin i y j de
nuestras coincidencias y
% le decimos que ingrese el nuevo numero /
modifica numeros (la matriz)..
numeros( posiciones(i,1), posiciones(i,2) ) =
input('Ingrese el nuevo numero: ');
end
end
% Salida.
disp("Nueva matriz");
disp(numeros);
Programa sin comentarios
CONCLUSIONES

Con la utilización de ciclo for y While podemos fortalecer el conocimiento


para generar el programa para hacer un juego de guerra naval.

Se identifican tres procesos fundamentales:

1. Ingreso de datos.
2. Proceso de datos.
3. Mostrar los datos.
REFERENCIAS BIBLIOGRAFICAS

https://la.mathworks.com/help/matlab/matlab_prog/matlab-operators-
and-special-characters.html

Bucles o Loops en Matlab [for - while]


https://www.youtube.com/watch?v=PWws4xQFRrM&t=290s

Monroy, J. (2017). Optimización de instrumentos virtuales. [Archivo de


video] Recuperado de: http://hdl.handle.net/10596/12747

Lajara, V. J. R. (2007). LabVIEW: entorno gráfico de programación.


Barcelona, ES: Marcombo. Capítulo 1. pág. 3-36. Recuperado
de:http://bibliotecavirtual.unad.edu.co:2077/lib/unadsp/reader.action?d
ocID=10204103

También podría gustarte