%% programa while 01 clearvars; close all; clc; %% lectutra de datos para calcular el factorial N = input('N = '); %% primer caso de while cont1 = 1; fakto1 = 1; while cont1 <= N fakto1 = fakto1*cont1; cont1 = cont1 + 1; end; %esta es la solución más parecida a el uso de for fprintf('fakto01 = %d\n',fakto1); %% segundo caso de while cont2 = 0; fakto2 = 1; while cont2 < N cont2 = cont2 + 1; fakto2 = fakto2*cont2; end; %esta solucón es diferente del for fprintf('fakto02 = %d\n',fakto2); %% tercer caso de while cont3 = 0; fakto3 = 1; while cont3 > N cont3 = cont3 + 1; fakto3 = fakto3*cont3; end; %la condicion esta mal disenhada nunca repite fprintf('fakto03 = %d\n',fakto3); %% cuarto caso de while cont4 = 0; fakto4 = 1; while cont4 ~= N cont4 = cont4 + 1; fakto4 = fakto4*cont4; end; %la condicion esta bien disenhada repite lo justo fprintf('fakto04 = %d\n',fakto4); %% quinto caso de while cont5 = 0; fakto5 = 1; %while cont5 <= N % cont5 = cont5/(cont5 + 1); % fakto5 = fakto5*cont5; % disp(cont5); %end; %la condicion y las instrucciones no son consistentes con el criterio de parada %tenemos un ciclo infinito de repeticion para parar apretar crtl+c fprintf('fakto05 = %d\n',fakto5);