Baixe o app para aproveitar ainda mais
Prévia do material em texto
Leia 2 vetores (A e B) de mesma dimensão, no entanto o usuário pode definir o tamanho, limitado a 3 posições. Em ambos vetores devem ser armazenados nomes de pessoas, posterior a entrada dos dados o algoritmo deve unir ambos e armazenar em um terceiro vetor (C). Posteriormente você deve apresentar o vetor A, o Vetor B, e o Vetor C ordenado em ordem ALFABETICA. Também deve ser disponibilizado um mecanismo de busca que solicita o nome a ser pesquisado informando se o mesmo não existe ou, caso exista, exibir sua posição no Vetor C (já ordenado). A pesquisa deve ser encerrada quando for digitado o nome NADA. Lembre-se que neste caso a entrada NADA não pode ser uma entrada válida nos vetores A e B. clc; clear all; % Define o tamanho do vetor (máx 3 posições) n = input('Entre com o tamanho do vetor (máx 3 posições): '); if n > 3 while n > 3 n = input('Entre com o tamanho do vetor: '); end end % Cria os vetores com nomes de pessoas for i = 1:n a{i}= input('Entre com o Elemento do Vetor A: ', 's'); end for i = 1:n b{i}= input('Entre com o Elemento do Vetor B: ', 's'); end % Cria o vetor C for i = 1:n c{i} = a{i}; c{i+n} = b{i}; end a = sort(a); %ordena o vetor A em ordem alfabética b = sort(b); c = sort(c); fprintf('\nVetor A = [ '); for i = 1:n fprintf(' %s ', a{i}); end fprintf(' ]\n'); fprintf('\nVetor B = [ '); for i = 1:n fprintf(' %s ', b{i}); end fprintf(' ]\n'); fprintf('\nVetor C = [ '); for i = 1:n*2 %vetor C tem o dobro de posições de A e B fprintf(' %s ', c{i}); end fprintf(' ]\n'); while 1 pesq = input('Digite o nome a ser pesquisado [NADA = encerra]: ','s' ); if strcmp(pesq,'NADA') break; end achou =0; for i = 1:n*2 %pesquisa no vetor C if strcmp(pesq,c{i}) fprintf('O nome %s foi encontrado na %d° posição.\n', c{i},i); achou = 1; end end if (achou == 0) fprintf('O nome %s não foi encontrado.\n', pesq); end
Compartilhar