Baixe o app para aproveitar ainda mais
Prévia do material em texto
Computação para Engenharia 2022/2 comandos Formatos format bank %duas casas decimais format long %15 dígitos decimais format rat %formato fracionário format short %4 dígitos decimais clear %apaga as variáveis clc % limpa a tela ; %para não imprimir na tela %utilizando e habilita notações cientificas (ex format longe) sqrt() % rais quadrada exp(1) numero de ouro(Euler)=2,71828... Funções de arredondamento nthroot % rais cubica round(x) %Arredonda x para o inteiro mais próximo round(3.4) ans=3 pi % 3.1416.... fix(x) %Arredonda x para o inteiro na direção de zero fix(3.4) ans=3 ceil(x) %Arredonda x para o inteiro na direção de mais infinito. ceil(3.4) ans=4 floor(x) %Arredonda x para o inteiro na direção de menos infinito. floor(-3.4) ans=-4 rem(x,y) %Retorna o resto da divisão de x por y. rem(21,4) ans=1 sign(x) %Função sinal. Retorna 1 (se x> 0); -1 (se x<0) e 0 (se x=0) sign(-3.4) ans=-1 ln(10) % log(10) abs %modulo (-7) = 7 factorial (5) %5 3 14 2 Declaração de variáveis seno ans – variável usada para armazenar os resultados. inf= infinito sind() % percentual NaN ou nan – indeterminação, significa que o resultado não é um número. Exemplo: 0/0 sin() % radianos i e j - unidade imaginária de um número complexo. coseno cosd() %percentual cos() %radianos tangente tan() % radianos tand() % percentual pi – número π MATRIZES E ARANJOS nome variável = [1a linha de elementos; 2a linha de elementos; 3a linha de elementos;...; última linha de elementos] Matriz Linha: A = [1 2 3 4] Matriz Coluna: A =[vertical] Matriz Quadrada: número de linhas igual ao número de VALOR NUMÉRICO a = 10; b= 2 ; C=a^2+B+(a+B)/2-a/B*7 C=73 ANO=[1980,2020,5] x=linspace(primeiro termo, ultimo termo, numero de elementos) Aij= i->linha j->coluna PLOT(X,Y) INPUT(' ') if, else, end plota os vetores x e y em um gráfico ( mesmo numero de valores) usuário insere uma informação condicional fprintf("este programa converte a temperatura celsius em farenheit") c=input ("digite a temperatura em celsius") f=9*c/5+32; fprintf("a temperatura %d graus celsius é %d graus farenheit",c,f) fprintf imprime a informação na tela x=linspace(100,150,3) y=2+3*cosd(x) plot(x,y,"g") OPERAÇÕES MATEMÁTICAS: ORDEM EM QUE AS OPERAÇÕES SAO EXECUTADAS: (3-5)X2=-4 3-5X2=-7 2X3-5 =1 2X(3-5) = -4 3-8=-2 3+5X2=13 2X(3+5)=16 2X3+5=11 3+5 =8 EXPONENCIAÇÃO (^): >> 3^8 DIVISÃO DIRETA ( /) : >> 200/4 MULTIPLICAÇÃO 4: >> 77 SUBTRAÇÃO (-) : >> 100-4 ADIÇÃO (+): >> 50+4 Grupo 1 atividade 1 format bank; disp('Este programa calcula o valor a ser pago pelas cópias desejadas.') A=input('Digite o número de cópias desejadas:'); if(A<=40); B= A 0.15; else(A<=41); B= A*0.10; fprintf('O valor a ser pago será R$ % d ', B) end 0.15; B= A atividade 2 Atividade 2 format bank disp ('Este progtrama calcula o seu salário com a sua comissão de venda') V=input('Digite o valor de vendas feita no mês:') A=1500+(V*0.8); fprintf('O seu salário será R$ %d', A) atividade 3 X = linspace (-4 pi,1000);pi,4 Y = (sin (X)./X); plot (X,Y, '--r') grupo 1 at.1 disp('Esse programa irá apontar se o número que você digitou é par ou ímpar'); a = input('Digite o seu número: '); if rem(a,2)==0; fprintf('Seu número é par: '); else fprintf('Seu número é ímpar: ') end avalia se aluno foi aprovado ou reprovado disp('Este programa irá avaliar se o aluno foi aprovado ou reprovado')%diz o que o programa ira fazer n1=input('Digite a primeira nota: ');%coloque n2=input('Digite a segunda nota: '); media=(n1+n2)/2; a=input('Digite as aulas ministradas: '); as=input('Digite as aulas assistidas: '); f=a/as*100; if(f>=75 & media>7);%começo de condição fprintf('você foi aprovado ') else%se não fprintf('você foi reprovado ') end%fim grafico X = linspace (- 4 pi,1000);pi,4 Y = (sin (X)./X); plot (X,Y, '--r') AULA 12 for....end GRAU B GRAFICO EM BARRA x=[1 2 3]; y=[93 204 154]; bar(x,y,0.6,"blue"); title ('Gráfico Do Item A'); xlabel ('Meses'); ylabel ('Consumo'); grid on; Comando plot >Plotar linear loglog Gráfico em escala logarítmica: semilogx Gráfico em escala semi- logarítmica (eixo x). semilogy Gráfico em escala semi-logarítmica (eixo y). fill Desenhar polígono 2D. polar Gráfico em coordenadas polar bar Gráfico de barras stem Gráfico de seqüência discreta ANALISE DE CONSUMO EM ESTOQUE: clear; clc; disp('Cálculo de consumo médio de contrato no período') p=input('Informe período de 3 ou 6 meses'); a=1; while a==1 % LAÇO DE REPETIÇÃO PARA A=1 Disp Exibe o conteúdo de uma variável, sem mostrar o seu nome Operadores lógicos O laço while, ao contrário do for, repete um grupo de comandos um número indefinido de vezes, até obtermos uma resposta satisfatória ou até que o usuário mande interromper o programa. Sua sintaxe é: While <condição> <comandos> end ~=NÃO lógico xor=OU exclusivo lógico |=OU lógico & =E lógico Enquanto a expressão lógica <condição> for verdadeira a lista <comandos> será repetida. No laço while apenas a condição é testada. Saída de dados - Saída fprintf while ~(p==3||p==6)% LAÇO DE REPETIÇÃO PARA p=3 OU p=6 %g = Escolhe o mais curto entre ponto flutuante e exponencial p=input('Informe período 3 ou 6 meses');% SOLICITA AO USUARIO QUE ELE DIGITE O PERIODO end %encerra a conciconal ~(p==3||p==6) if p==3 % CONDICIONAL PARA p=3 %e = Exibe o valor no formato exponencial %d = Exibe o valor como inteiro. . %f = Exibe o valor em ponto flutuante . estrutura condicional if - end Se o resultado da expressão lógica <condição> for verdadeiro então a lista de <comandos> será executada. Se o resultado for falso, os <comandos > não serão executados. Condicionais e laços Condicional if-else-end an=input('Digite o ano de nascimento da pessoa:'); aa=input('Digite o ano atual:'); if ((an<0)|(an>2010)) fprintf('Ano de nascimento invalido.'); else I=aa-an; fprintf('A idade da pessoa eh %d anos.',I); end O laço "for" A=zeros(1,15); for i=1:15 fprintf('Insira um elemento (1,%d):',i); A(1,i)=input(''); end disp(A) a=input ('digite um valor para o qual se quer saber a raiz quadrada:'); if (a>0) raizquadrada=sqrt(a) end linspace(0,2 pipi,100); % Criou-se 100 amostras entre 0 e 2 for n=1:100 if x(n)<=pi f(n)=1; %Faz f(t)=1 para 0<t<=pi,i.e., as primeiras 50 amostras de f(t) são iguais a 1 else f(n)= -1; % Faz f(t)=-1 para pi<t<=2*pi, i.e., as últimas 50 amostras de f(t) são iguais a 1 end end plot(x,f,'r.'); % plota o grafico, r=cor:vermelha e .:estilo do ponto: ponto grid on; % adiciona linhas de grade no desenho do grafico title('Função retangular'); % Coloca um titulo ao gráfico xlabel('t em radianos'); % nomeia o eixo x ylabel('f(t)'); % nomeia o eixo y O laço while No laço while apenas a condição é testada. a = 1; b = 15; while a<b, clc a = a+1 b = b-1 pause(2) end disp('fim do loop') GRAFICO x=[1 2 3]; y=[93 204 154]; bar(x,y,0.6,"blue"); title ('Gráfico Do Item A'); xlabel ('Meses'); ylabel ('Consumo'); grid on; a=1; b=15 while a<b, clc a=a+1 b=b-1 pause (2) end disp ('fim do loop') programas Fator K 8 % V corresponde a abertura da ferramenta, S corresponde a espessura e o 8 é uma constante format bank; fprintf("Abertura da ferramenta a ser utilizada: %d ", V) if S==1.2 % 1.2 é a info do usuario, assim sendo em todas as outras infos, mudando somente a espessura disp(' Raio Interno:') disp(' 1.54 mm') disp(' Fator K:') disp(' 0.356') elseif S==1.5 disp(' Raio Interno:') disp(' 2 mm') disp(' Fator K:') disp(' 0.358') *S=input('Qual a espessura da chapa? '); % Informação passada pelo usuário V=S elseif S==2 disp(' Raio Interno:') disp(' 2.6 mm') disp(' Fator K:') disp(' 0.358') elseif S==3 disp(' Raio Interno:') disp(' 3.8 mm') disp(' Fator K:') disp(' 0.356') elseif S==3.175 | S==1/8 % temos o | para indicar que pode ser ma info ou outra para o mesmo resultado disp(' Raio Interno:') disp(' 4.04 mm') disp(' Fator K:') disp(' 0.357') elseif S==4.7625 | S==3/16 disp(' Raio Interno:') disp(' 6.26 mm') disp(' Fator K:')disp(' 0.3582') elseif S==6.35 | S==1/4 disp(' Raio Interno:') disp(' 8 mm') disp(' Fator K:') disp(' 0.357') else S==9.525 | S==3/8 disp(' Raio Interno:') disp(' 13 mm') disp(' Fator K:') disp(' 0.359') end** Santantonio CM1=input('INFORME O CONSUMO NO MES 1'); disp('Esse programa irá descobrir os angulos A, B, C e D de um santantonio') DiametroTubo = 7; LadoCarroceria = input('Digite o valor do lado em centimetros: '); BaixoCarroceria = input('Digite o valor de baixo centimetros: '); if (LadoCarroceria>0 & BaixoCarroceria>0 ) format bank Cateto1 = (LadoCarroceria^2)-7; %Primeiro cateto do triangulo ao quadrado Cateto2= (BaixoCarroceria^2) -7; %Segundo cateto do triangulo ao quadrado SomaCatetos = Cateto1 + Cateto2; % Soma o quadrado dos catetos hipotenusa= sqrt(SomaCatetos); %Calcula a hipotenusa angulo = acosd(BaixoCarroceria/hipotenusa); %calcula o angulo %Calculo traseira DistanciaLateral = input ('Informe a distancia da lateral');%Distancia entre a lateral da camionete até a barra Cateto3= (DistanciaLateral ^2) -7; %Eleva ao quadrado SomaCatetos2= Cateto1 + Cateto3; % Descobre a hipotenusa %Angulo baixo do trapezio AnguloBaixoTrapezio= acosd(DistanciaLateral/SomaCatetos2); %Angulo parte de baixo do trapezio traseiro AnguloAltoTrapezio= acosd(LadoCarroceria/SomaCatetos2); %Angulo parte de cima do trapezio traseiro SomaAnguloTrapezioSuperior= (BaixoCarroceria^2)+ (DistanciaLateral^2); HipotenusaAnguloTrapezioSuperior= sqrt(SomaAnguloTrapezioSuperior); AnguloTrapezioSuperior= acosd(DistanciaLateral- 7/HipotenusaAnguloTrapezioSuperior); %Angulo trapezio superior %Angulo fprintf(['O lado maior terá %d centimetros e o seu angulo A em graus é %d, o seu angulo B em graus é %d, seu angulo C em graus ' ... 'é de %d e seu angulo D ' ... 'em graus é %d'], hipotenusa, angulo,AnguloBaixoTrapezio, AnguloAltoTrapezio, HipotenusaAnguloTrapezioSuperior ); else fprintf('Os valores da carroceria não podem ser zero ou negativos') end CM2=input('INFORME O CONSUMO NO MES 2'); COMANDO EM SOLDA ROBÓTICA CM3=input('INFORME O CONSUMO NO MES 3'); **% O SCRIPT TRATA DE FAZER COM QUE O ROBO DE SEQUENCIA % AO PROCESSO DE SOLDAGEM SE A POSIÇÃO INICIAL DO TORNO(JMP) % FOR IGUAL AO GRAU INSERIDO PELO USUARIO (R) % r = grau do torno %jmp = posição inicial do torno r=input ('entre com o grau do torno:'); jmp=input ('entre com a posição inicial do torno:'); if ((r<0))|((r>0)) fprintf(' grau invalido.'); else r=jmp; fprintf ('pulou o Alarme e foi até o final') end** Programe sua viagem **clear,clc fprintf('Estre programa calcula o custo médio de viajem relacionada a um veículo') Km=input('Digite os quilometros') L=input('Digite o valor do litro de combustivel:') p=input('Digite a potência do motor;Pot10 Pot14 Pot20:') if ('p=Pot10') C=Km/15.6*L elseif('p=Pot14') C=Km/14.9*L elseif('p=Pot20') C=Km/13.4*L fprintf('o consumo medio do veiculo, considerando os dados:') end VC=input('INFORME 0 VALOR CONSUMO CONTRATADO'); C3=[CM1 CM2 CM3]; M=mean(C3);% MEDIA PARA C3 Analise de consumo **clear; clc; disp('Cálculo de consumo médio de contrato no período') p=input('Informe período de 3 ou 6 meses'); a=1; while a==1 % LAÇO DE REPETIÇÃO PARA A=1 while ~(p==3||p==6)% LAÇO DE REPETIÇÃO PARA p=3 OU p=6 p=input('Informe período 3 ou 6 meses');% SOLICITA AO USUARIO QUE ELE DIGITE O PERIODO end %encerra a condicional ~(p==3||p==6) if p==3 % CONDICIONAL PARA p=3 CM1=input('INFORME O CONSUMO NO MES 1'); CM2=input('INFORME O CONSUMO NO MES 2'); CM3=input('INFORME O CONSUMO NO MES 3'); VC=input('INFORME 0 VALOR CONSUMO CONTRATADO'); C3=[CM1 CM2 CM3]; M=mean(C3);% MEDIA PARA C3 CC3=ceil(M);% arredonda cada elemento de M para o inteiro mais próximo maior ou igual a esse elemento. if CC3==VC fprintf('O cliente consumiu na média de contrato dos 3 meses %d peças. MANTER VALOR DE CONTRATO ATUAL!',CC3) elseif CC3>VC fprintf('O consumo médio nos últimos 3 meses é de %d peças, o contrato atual é %d AUMENTAR VALOR DE CONTRATO!',CC3,VC) elseif CC3<VC fprintf('O consumo médio nos últimos 3 meses é de %d peças, o contrato atual é %d DIMINUR VALOR DE CONTRATO!',CC3,VC) end %encerra a condicional if e elseif elseif p==6 CM1=input('INFORME O CONSUMO NO MES 1'); CM2=input('INFORME O CONSUMO NO MES 2'); CM3=input('INFORME O CONSUMO NO MES 3'); CM4=input('INFORME O CONSUMO NO MES 4'); CM5=input('INFORME O CONSUMO NO MES 5'); CM6=input('INFORME O CONSUMO NO MES 6'); VC=input('INFORME 0 VALOR CONSUMO CONTRATADO'); C6=[CM1 CM2 CM3 CM4 CM5 CM6]; M=mean(C6); CC6=ceil(M);% arredonda cada elemento de M para o inteiro mais próximo maior ou igual a esse elemento. if CC6==VC fprintf('O cliente consumiu na média de contrato dos 6 meses %d peças. MANTER VALOR DE CONTRATO ATUAL!',CC6) elseif CC6>VC fprintf('O consumo médio nos últimos 6 meses é de %d peças, o contrato atual é %d AUMENTAR VALOR DE CONTRATO!',CC6,VC) elseif CC6<VC fprintf('O consumo médio nos últimos 6 meses é de %d peças, o contrato atual é %d DIMINUR VALOR DE CONTRATO!',CC6,VC) end %encerra a condicional if CC==6 end a=input(' Continuar? (1) para sim ou (0) para nao.'); end %encerra a condicional while a==1** CC3=ceil(M);% arredonda cada elemento de M para o inteiro mais próximo maior ou igual a esse elemento. if CC3==VC fprintf('O cliente consumiu na média de contrato dos 3 meses %d peças. MANTER VALOR DE CONTRATO ATUAL!',CC3) fprintf('O consumo médio nos últimos 3 meses é de %d peças, o contrato atual é %d AUMENTAR VALOR DE CONTRATO!',CC3,VC) elseif CC3<VC fprintf('O consumo médio nos últimos 3 meses é de %d peças, o contrato atual é %d DIMINUR VALOR DE CONTRATO!',CC3,VC) end %encerra a conciconal if e elseif elseif p==6 CM1=input('INFORME O CONSUMO NO MES 1'); CM2=input('INFORME O CONSUMO NO MES 2'); CM3=input('INFORME O CONSUMO NO MES 3'); CM4=input('INFORME O CONSUMO NO MES 4'); CM5=input('INFORME O CONSUMO NO MES 5'); CM6=input('INFORME O CONSUMO NO MES 6'); VC=input('INFORME 0 VALOR CONSUMO CONTRATADO'); C6=[CM1 CM2 CM3 CM4 CM5 CM6]; M=mean(C6); CC6=ceil(M);% arredonda cada elemento de M para o inteiro mais próximo maior ou igual a esse elemento. if CC6==VC fprintf('O cliente consumiu na média de contrato dos 6 meses %d peças. MANTER VALOR DE CONTRATO ATUAL!',CC6) elseif CC6>VC fprintf('O consumo médio nos ultimos 6 meses é de %d peças, o contrato atual é %d AUMENTAR VALOR DE CONTRATO!',CC6,VC) elseif CC6<VC fprintf('O consumo médio nos ultimos 6 meses é de %d peças, o contrato atual é %d DIMINUR VALOR DE CONTRATO!',CC6,VC) end %encerra a conciconal if CC==6 end a=input(' Continuar? (1) para sim ou (0) para nao.'); end %encerra a condicional while a==1 Com o comando grid podemos adicionar linhas de grade no desenho do gráfico: grid on (para incluir) e grid off ( para remover). Podemos utilizar alguns comandos para melhorar a aparência de nosso gráfico: title (inclui um título ao gráfico), xlabel (permite que o eixo das abscissas do gráfico seja identificado), ylabel (permite que o eixo das abscissas do gráfico seja identificado). https://coggle.it/
Compartilhar